Pagine

Translate

giovedì 23 febbraio 2012

HowTo - Compilazione Kernel Real Time - Parte 4

Installazione

Se tutto è andato liscio nella nostra Home ci ritroveremo due file linux-headers-2.6.33.2-rt13-CustomRT.deb e linux-image-2.6.33.2-rt13-CustomRT.deb. L'installazione può essere fatta anche da interfaccia grafica, semplicemente facendo doppio click sul file linux-image-2.6.33.2-rt13-CustomRT.deb, al termine dell'installazione installiamo anche l'headers linux-headers-2.6.33.2-rt13-CustomRT.deb.

Se tutto è andato per il meglio riavviando il sistema durante il boot, Grub ci presenterà la possibilità di avviare il sistema con il nuovo kernel realtime. Facciamo ora alcuni test per verificare la reale efficienza del nuovo kernel real time.

Alcuni test

Grazie al pacchetto software SysBench(http://sysbench.sourceforge.net) è possibile eseguire test su CPU, RAM, Theads, Performance del disco... sullo stesso PC avviandolo prima con il kernel configurato di default e poi con quello Real Time. Di seguito i risultati del nostro test:

Kernel vanilla (default) 2.6.28-11-generic

Kernel RealTime 2.6.33.2

antonio@antonio-desktop:~$ sysbench --num-threads=20 --test=cpu run

sysbench 0.4.10: multi-threaded system evaluation benchmark

Running the test with following options:

Number of threads: 20

Doing CPU performance benchmark

Threads started!

Done.

Maximum prime number checked in CPU test: 10000

Test execution summary:

total time: 21.9421s

total number of events: 10000

total time taken by event execution: 436.5217

per-request statistics:

min: 4.18ms

avg: 43.65ms

max: 276.19ms

approx. 95 percentile: 140.17ms

Threads fairness:

events (avg/stddev): 500.0000/50.28

execution time (avg/stddev): 21.8261/0.10

antonio@antonio-desktop:~$ sysbench --num-threads=20 --test=cpu run

sysbench 0.4.10: multi-threaded system evaluation benchmark

Running the test with following options:

Number of threads: 20

Doing CPU performance benchmark

Threads started!

Done.

Maximum prime number checked in CPU test: 10000

Test execution summary:

total time: 21.3002s

total number of events: 10000

total time taken by event execution: 425.1002

per-request statistics:

min: 4.22ms

avg: 42.51ms

max: 98.23ms

approx. 95 percentile: 60.25ms

Threads fairness:

events (avg/stddev): 500.0000/10.16

execution time (avg/stddev): 21.2550/0.02

antonio@antonio-desktop:~$ sysbench --num-threads=20 --test=threads run

sysbench 0.4.10: multi-threaded system evaluation benchmark

Running the test with following options:

Number of threads: 20

Doing thread subsystem performance test

Thread yields per test: 1000 Locks used: 8

Threads started!

Done.

Test execution summary:

total time: 9.7286s

total number of events: 10000

total time taken by event execution: 193.7196

per-request statistics:

min: 0.35ms

avg: 19.37ms

max: 235.93ms

approx. 95 percentile: 74.65ms

Threads fairness:

events (avg/stddev): 500.0000/46.77

execution time (avg/stddev): 9.6860/0.10

antonio@antonio-desktop:~$ sysbench --num-threads=20 --test=threads run

sysbench 0.4.10: multi-threaded system evaluation benchmark

Running the test with following options:

Number of threads: 20

Doing thread subsystem performance test

Thread yields per test: 1000 Locks used: 8

Threads started!

Done.

Test execution summary:

total time: 8.4843s

total number of events: 10000

total time taken by event execution: 169.3573

per-request statistics:

min: 0.49ms

avg: 16.94ms

max: 98.36ms

approx. 95 percentile: 43.27ms

Threads fairness:

events (avg/stddev): 500.0000/34.36

execution time (avg/stddev): 8.4679/0.01

In giallo sono evidenziati le più rilevanti differenze di prestazioni tra il Kernel Real Time e il Vanilla.

Spero che questo post sia utile.

Grazie a tutti per l'attenzione.


Nessun commento: