1ptsematest(8)                                                    ptsematest(8)
2
3
4

NAME

6       ptsematest  - Start two threads and measure the latency of interprocess
7       communication with POSIX mutex.
8

SYNOPSIS

10       ptsematest [-a|--affinity [PROC]] [-b|--breaktrace USEC] [-d|--distance
11       DIST]   [-D|--duration  TIME][-i|--interval  INTV]  [-l|--loops  LOOPS]
12       [-p|--prio PRIO] [-S|--smp] [-t|--threads [NUM]]
13

DESCRIPTION

15       The program ptsematest starts two threads  that  are  synchronized  via
16       pthread_mutex_unlock()/pthread_mutex_lock()  and  measures  the latency
17       between releasing and getting the lock.
18

OPTIONS

20       -a, --affinity[=PROC]
21              Run on processor number PROC. If PROC is not specified,  run  on
22              current processor.
23
24       -b, --breaktrace=USEC
25              Send  break  trace command when latency > USEC. This is a debug‐
26              ging option to control the latency tracer in the  realtime  pre‐
27              emption  patch.   It  is  useful  to track down unexpected large
28              latencies of a system.
29
30       -d, --distance=DIST
31              Set the distance of thread intervals in microseconds (default is
32              500  us). When  cyclictest is called with the -t option and more
33              than one thread is created, then this distance value is added to
34              the  interval  of  the  threads:  Interval(thread  N)  =  Inter‐
35              val(thread N-1) + DIST
36
37       -D, --duration=TIME
38              Specify a length for the test run.
39              Append 'm', 'h', or 'd' to specify minutes, hours or days.
40
41       -i, --interval=INTV
42              Set the base interval of the thread(s) in microseconds  (default
43              is  1000  us).  This  sets the interval of the first thread. See
44              also -d.
45
46       -l, --loops=LOOPS
47              Set the number of loops. The default is 0 (endless). This option
48              is  useful  for  automated  tests  with  a  given number of test
49              cycles. ptsematest is stopped once the number of timer intervals
50              has been reached.
51
52       -p, --prio=PRIO
53              Set the priority of the process.
54
55       -S, --smp
56              SMP testing: options -a -t and same priority
57
58       -t, --threads[=NUM]
59              Set  the number of test threads (default is 1, if this option is
60              not given). If NUM is specified, create NUM test threads. If NUM
61              is not specified, NUM is set to the number of available CPUs.
62

EXAMPLES

64       The following example was running on a 4-way processor:
65
66       # ptsematest -a -t -p99 -i100 -d25 -l1000000
67       #0: ID8672, P99, CPU0, I100; #1: ID8673, P99, CPU0, Cycles 1000000
68       #2: ID8674, P98, CPU1, I125; #3: ID8675, P98, CPU1, Cycles 811035
69       #4: ID8676, P97, CPU2, I150; #5: ID8677, P97, CPU2, Cycles 668130
70       #6: ID8678, P96, CPU3, I175; #7: ID8679, P96, CPU3, Cycles 589423
71       #1 -> #0, Min    1, Cur    1, Avg    2, Max   11
72       #3 -> #2, Min    1, Cur    2, Avg    2, Max   13
73       #5 -> #4, Min    1, Cur    4, Avg    3, Max   12
74       #7 -> #6, Min    1, Cur    4, Avg    2, Max   12
75

AUTHORS

77       Carsten Emde <C.Emde@osadl.org>
78

SEE ALSO

80       pthread_mutex_lock(3p), pthread_mutex_unlock(3p)
81
82
83
84                                      0.1                        ptsematest(8)
Impressum