Il kernel Linux migliora le performance AIO

6 dicembre, 2012 Nessun commento »

Stravolte le prestazioni del kernel Linux. A dimostrarlo sono i benchmark eseguiti dall’autore della patch.


Il supporto I/O asincrono del kernel Linux ha subito un notevole miglioramento delle sue performance e ciò è dovuto anche ad una pulizia generale del suo codice.

Recentemente, sono state rilasciate infatti una dozzina di patch destinate al miglioramento dell’AIO ma solo oggi ecco arrivare risultati concreti che migliorano, e non di poco, la situazione.

Kent Overstreet, l’autore dell’ultima patch che stravolge di fatto la funzionalità scrive così nella mailing list:

The results in my testing are pretty impressive, particularly when an ioctx is being shared between multiple threads. In my crappy synthetic benchmark, with 4 threads submitting and one thread reaping completions, I saw overhead in the aio code go from ~50% (mostly ioctx lock contention) to low single digits. Performance with ioctx per thread improved too, but I’d have to rerun those benchmarks.

The reason I’ve been focused on performance when the ioctx is shared is that for a fair number of real world completions, userspace needs the completions aggregated somehow – in practice people just end up implementing this aggregation in userspace today, but if it’s done right we can do it much more efficiently in the kernel.

E solo poche ore fa, ecco spuntare una seconda versione della patch AIO per il kernel Linux che dovrebbe migliorare ancor di più le prestazioni. È possibile che vedremo un incremento delle performance già a partire dalla release 3.8 del kernel Linux. Non ci resta che attendere.

Fonte: Phoronix

Potrebbero interessarti ...