Un (grande) aumento in vista per le prestazioni di I/O del Kernel Linux

3

Da qualche settimana il sito Phoronix sta seguendo con particolare interesse le evoluzioni di un tema relativo al Kernel Linux: performance di operazioni input/output su singolo core.
Questo particolare aspetto della gestione delle risorse della CPU può avere grande impatto sulle performance generali: la velocità (intesa quantità al secondo) di scritture e letture, in particolare su disco, che si riescono a completare è il più comune collo di bottiglia dell’intero sistema.

La ricerca (o missione) per l’incremento delle performance è stata iniziata a fine agosto da Jens Axboe, sviluppatore di riferimento per IO_uring, (semplificando) la parte del Kernel che si occupa di gestire le operazioni di I/O relative alla CPU. L’idea era poter migliorare il codice per poter sfruttare appieno le nuove memorie a stato solido, come le Intel Optane: persistenza del dato dell’hard disk e velocità di accesso e lettura/scrittura piuttosto vicina alla RAM.
Con i primi test, si diceva con soddisfazione, si era arrivati a 3.5M (milioni) di IOPS (operazioni Input/Output al secondo) per singolo core: un aumento del 10%.

In pochi mesi si sono susseguiti una serie di nuovi annunci:

La crescita è davvero impressionante, avendo triplicato (e più) le prestazioni di picco in meno di due mesi. Tanto che è possibile tutto questo sarà disponiibile per tutti già dal Kernel 5.16.

Solo i tipi di memoria più performanti (come le citate Optane) potranno beneficiare appieno delle nuove prestazioni, ma tutti dovrebbero avere dei miglioramenti. Le ottimizzazioni trovate, infatti, coinvolgono la gestione delle richieste e della memoria in generale, e non sono specifiche per alcune situazioni rare.

Insomma, la situazione è interessante. La parte più bella? Potrebbe migliorare ancora!

Ho coltivato la mia passione per l’informatica fin da bambino, coi primi programmi BASIC. In età adulta mi sono avvicinato a Linux ed alla programmazione C, per poi interessarmi di reti. Infine, il mio hobby è diventato anche il mio lavoro.
Per me il modo migliore di imparare è fare, e per questo devo utilizzare le tecnologie che ritengo interessanti; a questo scopo, il mondo opensource offre gli strumenti perfetti.

3 risposte a “Un (grande) aumento in vista per le prestazioni di I/O del Kernel Linux”

  1. Avatar xan
    xan

    anche gli SSD pcie3 ma sopratutto 4 sono interessati no?

  2. Avatar Marco Bonfiglio
    Marco Bonfiglio

    Sì, di fatto sono interessati tutti i dispositivi di memoria persistente.
    Gli SSD PCIe 3 o 4 (o, per essere precisi, NVMe) hanno vantaggi evidenti rispetto ai più comuni SATA sulla velocità di trasferimento dati, più che sul numero di operazioni effettuate.
    Per fare un paragone azzardato (che spero non porti confusione), è come confrontare una macchina (SATA) con un autobus (NVMe): il numero di persone (quantità di dati) trasportati aumenta di molto, ma il veicolo usato (il numero di operazioni) rimane lo stesso: uno. In questo paragone, le Optane permettono di usare due o tre veicoli quando le le NVMe ne permettono uno solo.
    Le tecnologie che aumentano la velocità di trasferimento dati portano – di solito – ad un miglioramento sensibile anche nel numero di operazioni effettuate, ma tuttora (mi sembra, smentitemi pure) le già citate Optane possono vantare 2 o 3 volte più IOPS delle migliori memorie NVMe. Categoria a cui appartengono, a voler essere pignoli.

  3. Avatar Twenty-Seven
    Twenty-Seven

    Ma le Intel optane ad oggi non sono compatibili solamente con Windows o sbaglio?

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *