niedziela, 15 czerwca 2014

sysbench

W odpowiedzi na prośby dotyczące testów kerneli przeprowadziłem 3 próby następującego testu, którego wynik można obejrzeć poniżej.



Zainstalowałem sysbench poleceniem:
sudo apt-get install sysbench
i wykonałem dla każdego z kerneli następujące pomiary:
sysbench --num-threads=$(grep 'model name' /proc/cpuinfo | wc -l ) --test=cpu run > test
sysbench --num-threads=$(grep 'model name' /proc/cpuinfo | wc -l ) --test=memory run >> test
 Pierwsze polecenie bada CPU, a drugie Pamięć. Ten tajemniczy na pierwszy rzut oka zapis:
$(grep 'model name' /proc/cpuinfo | wc -l )
odpowiedzialny jest za sprawdzenie ilu wątkowa jest nasza maszyna, teraz całe polecenie powinno być już zrozumiałe:)

A oto wspomniane wyniki:

Linux yoga 3.15.0-ext73-30.0-i7-pro #17 SMP PREEMPT Sun Jun 15 16:57:55 CEST 2014 x86_64 x86_64 x86_64 GNU/Linux
sysbench 0.4.12:  multi-threaded system evaluation benchmark
Running the test with following options:
Number of threads: 4
Doing CPU performance benchmark
Threads started!
Done.
Maximum prime number checked in CPU test: 10000

Test execution summary:
    total time:                          3.8329s
    total number of events:              10000
    total time taken by event execution: 15.3234
    per-request statistics:
         min:                                  1.35ms
         avg:                                  1.53ms
         max:                                 16.31ms
         approx.  95 percentile:               1.54ms
Threads fairness:
    events (avg/stddev):           2500.0000/15.54
    execution time (avg/stddev):   3.8309/0.00
sysbench 0.4.12:  multi-threaded system evaluation benchmark
Running the test with following options:
Number of threads: 4
Doing memory operations speed test
Memory block size: 1K
Memory transfer size: 102400M
Memory operations type: write
Memory scope type: global
Threads started!
Done.
Operations performed: 104857600 (3901287.11 ops/sec)
102400.00 MB transferred (3809.85 MB/sec)

Test execution summary:
    total time:                          26.8777s
    total number of events:              104857600
    total time taken by event execution: 71.9798
    per-request statistics:
         min:                                  0.00ms
         avg:                                  0.00ms
         max:                                 16.44ms
         approx.  95 percentile:               0.00ms
Threads fairness:
    events (avg/stddev):           26214400.0000/297309.43
    execution time (avg/stddev):   17.9949/0.08
Linux yoga 3.14.6-ext73-f1-29.6-i7-pro-ags-cfs #5 SMP PREEMPT Mon Jun 9 18:29:44 CEST 2014 x86_64 x86_64 x86_64 GNU/Linux
sysbench 0.4.12:  multi-threaded system evaluation benchmark
Running the test with following options:
Number of threads: 4
Doing CPU performance benchmark
Threads started!
Done.
Maximum prime number checked in CPU test: 10000

Test execution summary:
    total time:                          5.0742s
    total number of events:              10000
    total time taken by event execution: 20.2616
    per-request statistics:
         min:                                  1.48ms
         avg:                                  2.03ms
         max:                                 40.00ms
         approx.  95 percentile:               4.53ms
Threads fairness:
    events (avg/stddev):           2500.0000/230.04
    execution time (avg/stddev):   5.0654/0.01
sysbench 0.4.12:  multi-threaded system evaluation benchmark
Running the test with following options:
Number of threads: 4
Doing memory operations speed test
Memory block size: 1K
Memory transfer size: 102400M
Memory operations type: write
Memory scope type: global
Threads started!
Done.
Operations performed: 104857600 (3834313.32 ops/sec)
102400.00 MB transferred (3744.45 MB/sec)

Test execution summary:
    total time:                          27.3472s
    total number of events:              104857600
    total time taken by event execution: 75.2566
    per-request statistics:
         min:                                  0.00ms
         avg:                                  0.00ms
         max:                                 10.01ms
         approx.  95 percentile:               0.00ms
Threads fairness:
    events (avg/stddev):           26214400.0000/598046.46
    execution time (avg/stddev):   18.8141/0.15
Linux yoga 3.14.6-ext73-f1-29.6-k8-ags-cfs #8 SMP PREEMPT Mon Jun 9 21:49:51 CEST 2014 x86_64 x86_64 x86_64 GNU/Linux
sysbench 0.4.12:  multi-threaded system evaluation benchmark
Running the test with following options:
Number of threads: 4
Doing CPU performance benchmark
Threads started!
Done.
Maximum prime number checked in CPU test: 10000

Test execution summary:
    total time:                          5.1035s
    total number of events:              10000
    total time taken by event execution: 20.3904
    per-request statistics:
         min:                                  1.46ms
         avg:                                  2.04ms
         max:                                 21.52ms
         approx.  95 percentile:               6.31ms
Threads fairness:
    events (avg/stddev):           2500.0000/239.54
    execution time (avg/stddev):   5.0976/0.01
sysbench 0.4.12:  multi-threaded system evaluation benchmark
Running the test with following options:
Number of threads: 4
Doing memory operations speed test
Memory block size: 1K
Memory transfer size: 102400M
Memory operations type: write
Memory scope type: global
Threads started!
Done.
Operations performed: 104857600 (3823292.28 ops/sec)
102400.00 MB transferred (3733.68 MB/sec)

Test execution summary:
    total time:                          27.4260s
    total number of events:              104857600
    total time taken by event execution: 74.2108
    per-request statistics:
         min:                                  0.00ms
         avg:                                  0.00ms
         max:                                 19.12ms
         approx.  95 percentile:               0.00ms
Threads fairness:
    events (avg/stddev):           26214400.0000/389813.55
    execution time (avg/stddev):   18.5527/0.08



Linux yoga 3.13.0-29-generic #53-Ubuntu SMP Wed Jun 4 21:00:20 UTC 2014 x86_64 x86_64 x86_64 GNU/Linux
sysbench 0.4.12:  multi-threaded system evaluation benchmark
Running the test with following options:
Number of threads: 4
Doing CPU performance benchmark
Threads started!
Done.
Maximum prime number checked in CPU test: 10000

Test execution summary:
    total time:                          15.5585s
    total number of events:              10000
    total time taken by event execution: 62.2050
    per-request statistics:
         min:                                  4.29ms
         avg:                                  6.22ms
         max:                                 40.43ms
         approx.  95 percentile:              16.35ms
Threads fairness:
    events (avg/stddev):           2500.0000/78.06
    execution time (avg/stddev):   15.5512/0.00
sysbench 0.4.12:  multi-threaded system evaluation benchmark
Running the test with following options:
Number of threads: 4
Doing memory operations speed test
Memory block size: 1K
Memory transfer size: 102400M
Memory operations type: write
Memory scope type: global
Threads started!
Done.
Operations performed: 104857600 (1121182.06 ops/sec)
102400.00 MB transferred (1094.90 MB/sec)

Test execution summary:
    total time:                          93.5242s
    total number of events:              104857600
    total time taken by event execution: 237.4461
    per-request statistics:
         min:                                  0.00ms
         avg:                                  0.00ms
         max:                                 30.95ms
         approx.  95 percentile:               0.00ms
Threads fairness:
    events (avg/stddev):           26214400.0000/804010.20
    execution time (avg/stddev):   59.3615/0.83
różnice na moim sprzęcie mnie zaskoczyły, fakt, że są widoczne gołym okiem przy zestawieniu z tymi liczbami jest zrozumiały:)

Namawiam do sprawdzenia na waszych zabawkach. Może zdobędę się na heroiczny wyczyn i zbuduję coś co ładnie to zbierze w tabelkę:) może jakiś "ficzer" NeteXta powstanie w ten sposób w przyszłości :)