1kcbench(1)                  General Commands Manual                 kcbench(1)
2
3
4

NAME

6       kcbench - Kernel compile benchmark
7

SYNOPSIS

9       kcbench [options]
10

DESCRIPTION

12       Compiles a Linux kernel to benchmark a system or test its stability
13

OPTIONS

15       -d, --compiledir <path>
16
17          Use the subdirectory kcbench in <path>/ when compiling results -- passes
18          'O=<path> /kcbench/' to make when calling it to compile a kernel; use a
19          tempdir if not given
20
21       -r, --detailedresults
22
23          Print more detailed results
24
25       -a, --ignore-running-apps
26
27          Do not warn if cron or other daemons run in the background; the results
28          might not be stable when those run and call jobs that consume CPU time or
29          do a lot of I/O
30
31       -i, --infinite
32
33          run endlessly to test system stability
34
35       -n, --iterations <int>
36
37          Number or iterations per number of jobs (default: 3)
38
39       -j, --jobs <int>
40
41          Number of jobs to use ('make -j #'); option can be given multiple times
42          (default: number of CPUs * 2)
43
44       -c, --no-cachefill
45
46          Omit the initial kernel compile to fill caches; saves time, but first
47          result might be slightly lower then the following ones
48
49       -v, --verbose
50
51          Increase verboselevel; option can be given multiple times
52
53       -l, --savefailedlogs <path>
54
55          Save log of failed compile runs in <path>
56
57       -s, --src (<path>|<version>)
58
59          Take sources in <path> or from /usr/share/kcdata/linux-<version>
60
61       -h, --help
62
63          Show usage
64
65       -V, --version
66
67          Output program version
68

ENVIRONMENT

70       Kcbench  looks  for  a kernel to compile in /usr/share/kcbench-data and
71       will take the one that a "ls usr/share/kcbench-data | head -n  1"  out‐
72       puts by default
73

EXAMPLE

75       To compile the default kernel 3 times in a row run:
76
77             $ kcbench
78
79       To  compile  the  defaukt kernel 3 times with 2 jobs and 3 times with 4
80       jobs run
81
82             $ kcbench --iterations 3 --jobs 2 --jobs 4
83

RESULTS

85       By default the line you are looking for is this:
86
87             Run 1 (-j 4): 5775 (e:173.15P:192%  U:263.49 S:69.42 F:0)
88
89       Here it has taken 173.15 seconds real time (e) to compile  the  kernel;
90       the  CPU-Usage  (P) was 192 percent; user time (U) spend was 296.49 and
91       sys time (S) 69.42 and there we no major page faults (see the  info  or
92       man pages for time for details about the notation).
93
94       As  most people prefer if higher numbers mean faster systems -- to give
95       them what they expect kcbench divides 1000000 by the real  time  spend,
96       which results in 5775 kcbench points (1000000/173.15) in this example.
97
98       When  running  with  "-r|--detailedresults"  you'll  get  more detailed
99       results:
100
101             Run 1 (-j 4):       6662 (e:150.10 P:197% U:259.51 S:36.38 F:0)
102               Elapsed Time(E): 2:30.10 (150.10 seconds)
103               Kernel time (S): 36.38 seconds
104               User time (U): 259.51 seconds
105               CPU usage (P): 197%
106               Major page faults (F): 0
107               Minor page faults (R): 9441809
108               Context switches involuntarily (c): 69031
109               Context switches voluntarily (w): 46955
110

HINTS

112       ·  sometimes using exactly as much jobs as  processors  in  the  system
113          results  in a result that's a bit faster than the default (two times
114          the number of processors)
115
116       ·  the compiler has a huge  impact  on  the  results;  if  you  compare
117          results  from  different  machines make sure they use a similar one.
118          The running kernel and its  settings  also  have  a  impact  on  the
119          results.  Thus  it's  the  best  not  to compare different distribu‐
120          tions/different patch levels.
121
122       ·  the kernel that is being compiled of course has  a  huge  impact  as
123          well;  compare  only results where you compiled the same kernel ver‐
124          sion
125

SEE ALSO

127       time(1).
128

BUGS

130       None know, but there are likely some
131

AUTHOR

133       Thorsten Leemhuis <fedora [AT] leemhuis [DOT] info>
134
135
136
137                                                                    kcbench(1)
Impressum