Non-Preempt Test v1.01

I just released the Non-Preempt Test (npt) version 1.01 which is
available here: http://git.dorsal.polymtl.ca/?p=npt.git

The purpose of this tool is to simulate a small real-time system that
runs with a high priority without being stopped or preempted. To do so,
it first sets its environment (cpu affinity, RT scheduler, memory locked
into RAM with mlockall) and can optionally disable the local IRQs if
compiled with the right options (not defined by default).

The core of the application is a loop that calculates the time gap
between the start of two consecutive loops using the rdtsc asm
instruction, thus a similarity with the hwlat_detector kernel module for
kernel analysis. At the end of its execution, npt computes latencies
statistics for each loop and generates a histogram showing the different
latencies reached and the number of time it reached each one.

This tool can be used to analyse and identify overhead of different
realtime applications as we can compare the latencies in each loops and
thus identify the added latency from a "blank" run. It is released
LTTng-ready and can thus be easily traced. Next versions could include
other userspace tracers ability.

Feedback, collaborations and contributions are welcome!
 
ChangeLog:

[v1.01]: Version 1.01
=====================
2013-10-14  Raphaël Beamonte  <raphael.beamonte@gmail.com>
        * Update to v1.01 [baa45ec]
        * Remove a forgotten unuseful comment [bd5e38c]
        * Add comments for #ifdef that missed some [a793782]
        * Reorganize the tracepoint maximum frequency and windows
          mode options that both affects the spawn of tracepoints to only show
          the conditions used when one or both options are activated in the .h
          file [dec0ff4]
        * Add a configure option for the windows mode [084b581]

2013-10-13  Raphaël Beamonte  <raphael.beamonte@gmail.com>
        * Move the setup for the window option in the .h file as it
          is an lttng depending option. [957aae4]
        * Update the condition used for setting the tracepoint
          frequency option in the .h file [714c7ea]
        * Move the verification of compilation with liblttng before
          other operations in the .h file [cf04473]
        * Replace the in-switch human readable time format for the
          duration option by a call to a new function for this purpose.
          [efc9b2e]
        * Correct a missing multiplication sign in the human readable
          time format function [e92c8f2]

2013-10-04  Raphaël Beamonte  <raphael.beamonte@gmail.com>
        * Add the windows mode to npt [91ec460]
        * Add a _human_readable_microsecond function [5ad0b01]

2013-09-27  Raphaël Beamonte  <raphael.beamonte@gmail.com>
        * Replace two free call by one [e5a7e3a]
        * Reorganizing global arguments per alphabetical order of
          short option [5e2681e]
        * Change the binary file destination [ae4854c]

2013-09-25  Raphaël Beamonte  <raphael.beamonte@gmail.com>
        * Add a --nocountloop (-n) option to change the number of
          loops to discard before starting the analysis. [7d51cf3]

2013-09-20  Raphaël Beamonte  <raphael.beamonte@gmail.com>
        * Change the way npt verifies if the CPU affinity asked is
          valid by checking if the given CPU value is an active CPU. [923ba59]
        * Update the configure.ac for automake 1.14 [139f8dd]

2013-07-18  Raphaël Beamonte  <raphael.beamonte@gmail.com>
        * Hide the 'version.h' generation bash script [adae280]
        * Add a new gitlog2changelog.sh bash script to add a
          ChangeLog file when using make dist [e78fd03]

Date: 
Friday, October 18, 2013
Software version number: 
1.01
Compatible LTTng version number: 
2.20
Software authors (members): 
Raphaël Beamonte