mirror of https://gitee.com/openkylin/linux.git
perf bench: Add new document about perf-bench
This patch adds new document about perf-bench. Man page and html will be provided for user. Signed-off-by: Hitoshi Mitake <mitake@dcl.info.waseda.ac.jp> Cc: Peter Zijlstra <a.p.zijlstra@chello.nl> Cc: Paul Mackerras <paulus@samba.org> LKML-Reference: <1257853855-28934-3-git-send-email-mitake@dcl.info.waseda.ac.jp> Signed-off-by: Ingo Molnar <mingo@elte.hu>
This commit is contained in:
parent
606bc1e18d
commit
9fbc04f249
|
@ -0,0 +1,120 @@
|
|||
perf-bench(1)
|
||||
============
|
||||
|
||||
NAME
|
||||
----
|
||||
perf-bench - General framework for benchmark suites
|
||||
|
||||
SYNOPSIS
|
||||
--------
|
||||
[verse]
|
||||
'perf bench' [<common options>] <subsystem> <suite> [<options>]
|
||||
|
||||
DESCRIPTION
|
||||
-----------
|
||||
This 'perf bench' command is general framework for benchmark suites.
|
||||
|
||||
COMMON OPTIONS
|
||||
--------------
|
||||
-f::
|
||||
--format=::
|
||||
Specify format style.
|
||||
Current available format styles are,
|
||||
|
||||
'default'::
|
||||
Default style. This is mainly for human reading.
|
||||
---------------------
|
||||
% perf bench sched pipe # with no style specify
|
||||
(executing 1000000 pipe operations between two tasks)
|
||||
Total time:5.855 sec
|
||||
5.855061 usecs/op
|
||||
170792 ops/sec
|
||||
---------------------
|
||||
|
||||
'simple'::
|
||||
This simple style is friendly for automated
|
||||
processing by scripts.
|
||||
---------------------
|
||||
% perf bench --format=simple sched pipe # specified simple
|
||||
5.988
|
||||
---------------------
|
||||
|
||||
SUBSYSTEM
|
||||
---------
|
||||
|
||||
'sched'::
|
||||
Scheduler and IPC mechanisms.
|
||||
|
||||
SUITES FOR 'sched'
|
||||
~~~~~~~~~~~~~~~~~~
|
||||
*messaging*::
|
||||
Suite for evaluating performance of scheduler and IPC mechanisms.
|
||||
Based on hackbench by Rusty Russell.
|
||||
|
||||
Options of *pipe*
|
||||
^^^^^^^^^^^^^^^^^
|
||||
-p::
|
||||
--pipe::
|
||||
Use pipe() instead of socketpair()
|
||||
|
||||
-t::
|
||||
--thread::
|
||||
Be multi thread instead of multi process
|
||||
|
||||
-g::
|
||||
--group=::
|
||||
Specify number of groups
|
||||
|
||||
-l::
|
||||
--loop=::
|
||||
Specify number of loops
|
||||
|
||||
Example of *messaging*
|
||||
^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
||||
---------------------
|
||||
% perf bench sched messaging # run with default
|
||||
options (20 sender and receiver processes per group)
|
||||
(10 groups == 400 processes run)
|
||||
|
||||
Total time:0.308 sec
|
||||
|
||||
% perf bench sched messaging -t -g 20 # be multi-thread,with 20 groups
|
||||
(20 sender and receiver threads per group)
|
||||
(20 groups == 800 threads run)
|
||||
|
||||
Total time:0.582 sec
|
||||
---------------------
|
||||
|
||||
*pipe*::
|
||||
Suite for pipe() system call.
|
||||
Based on pipe-test-1m.c by Ingo Molnar.
|
||||
|
||||
Options of *pipe*
|
||||
^^^^^^^^^^^^^^^^^
|
||||
-l::
|
||||
--loop=::
|
||||
Specify number of loops.
|
||||
|
||||
Example of *pipe*
|
||||
^^^^^^^^^^^^^^^^^
|
||||
|
||||
---------------------
|
||||
% perf bench sched pipe
|
||||
(executing 1000000 pipe operations between two tasks)
|
||||
|
||||
Total time:8.091 sec
|
||||
8.091833 usecs/op
|
||||
123581 ops/sec
|
||||
|
||||
% perf bench sched pipe -l 1000 # loop 1000
|
||||
(executing 1000 pipe operations between two tasks)
|
||||
|
||||
Total time:0.016 sec
|
||||
16.948000 usecs/op
|
||||
59004 ops/sec
|
||||
---------------------
|
||||
|
||||
SEE ALSO
|
||||
--------
|
||||
linkperf:perf[1]
|
Loading…
Reference in New Issue