Provided by: rt-tests_0.87-1ubuntu1_amd64 bug

NAME

       svsematest  -  Start  two  threads  or  fork two processes and measure the latency of SYSV
       semaphores

SYNTAX

       svsematest [-a|-a PROC] [-b USEC] [-d DIST] [-f] [-i INTV] [-l  loops]  [-p  PRIO]  [-t|-t
       NUM]

DESCRIPTION

       The  program  svsematest  starts  two threads or, optionally, forks two processes that are
       synchronized via SYSV semaphores and measures the latency between releasing a semaphore on
       one side and getting it on the other side.

OPTIONS

       -a, --affinity[=PROC]
              Run on procesor number PROC. If PROC is not specified, run on current processor.

       -b, --breaktrace=USEC
              Send break trace command when latency > USEC. This is a debugging option to control
              the latency tracer in the realtime preemption patch.  It is useful  to  track  down
              unexpected large latencies of a system.

       -d, --distance=DIST
              Set  the  distance  of  thread  intervals in microseconds (default is 500 us). When
              cylictest is called with the -t option and more than one thread  is  created,  then
              this  distance  value is added to the interval of the threads: Interval(thread N) =
              Interval(thread N-1) + DIST

       -f, --fork
              Instead of creating threads (which is the default), fork new processes

       -i, --interval=INTV
              Set the base interval of the thread(s) in microseconds (default is 1000  us).  This
              sets the interval of the first thread. See also -d.

       -l, --loops=LOOPS
              Set  the  number  of  loops.  The default is 0 (endless). This option is useful for
              automated tests with a given number of test cycles. svsematest is stopped once  the
              number of timer intervals has been reached.

       -p, --prio=PRIO
              Set the priority of the process.

       -t, --threads[=NUM]
              Set  the number of test threads (default is 1, if this option is not given). If NUM
              is specified, create NUM test threads. If NUM is not specifed, NUM is  set  to  the
              number of available CPUs.

EXAMPLES

       The following example was running on a 4-way CPU:

       # svsematest -a -t -p99 -i100 -d25 -l1000000
       #0: ID13110, P99, CPU0, I100; #1: ID13111, P99, CPU0, Cycles 1000000
       #2: ID13112, P98, CPU1, I125; #3: ID13113, P98, CPU1, Cycles 813573
       #4: ID13114, P97, CPU2, I150; #5: ID13115, P97, CPU2, Cycles 667285
       #6: ID13116, P96, CPU3, I175; #7: ID13117, P96, CPU3, Cycles 591403
       #1 -> #0, Min    1, Cur    2, Avg    2, Max   12
       #3 -> #2, Min    1, Cur    3, Avg    2, Max   12
       #5 -> #4, Min    1, Cur    3, Avg    3, Max   12
       #7 -> #6, Min    1, Cur    2, Avg    3, Max   11

AUTHORS

       Carsten Emde <C.Emde@osadl.org>

SEE ALSO

       semop(2)

                                               0.1                                  svsematest(8)