Linux 6.17 punta a velocizzare la rete con una nuova modifica

Facebook
WhatsApp
Twitter
LinkedIn
Telegram

Dopo l’uscita di Linux 6.16, gli sviluppatori e i collaboratori vari possono già concentrarsi sullo sviluppo della prossima versione, vale a dire Linux 6.17. Tra le modifiche più recenti già proposte per essere aggiunte durante il periodo della “finestra di unione, c’è ne una che è pensata per velocizzare drasticamente la rete, riducendo il tempo di inattività di 10 volte del traffico in uscita.

Linux 6.17: una nuova proposta mira a velocizzare di 10 volte la rete

La nuova proposta per Linux 6.17 prevede di intervenire su un comando specifico, ovvero “lockdep_unregister_key()”. Questo contiene all’interno una funzione, vale a dire “synchronize_rcu()”, che con la modifica sarà sostituita con “synchronize_rcu_expedited()”. Ciò permetterà una sincronizzazione RCU più rapida, con un incremento significativo in operazioni critiche come la sostituzione di un qdisc (queue discipline) su una scheda di rete.

Il problema è stato notato, secondo quanto raccontato dall’ingegnere autore della proposta, nell’uso della versione debug del kernel. Quando il lockdep è abilitato, la funzione lockdep_unregister_key() può causare ritardi significativi, rallentando il traffico di rete in uscita. Ad esempio, un semplice comando “/usr/sbin/tc qdisc replace dev eth0 root handle 0x1: mq” impiegava circa 13 secondi per essere completato, con il traffico di rete completamente bloccato durante l’attesa della sincronizzazione RCU.

Con la nuova modifica per Linux 6.17 il tempo di esecuzione si riduce drasticamente a 1,78 secondi, garantendo un miglioramento delle prestazioni di circa 10 volte. Questo si traduce in una riduzione significativa dei tempi di inattività del traffico di rete, un aspetto cruciale per applicazioni che richiedono alta affidabilità e bassa latenza. La funzione “synchronize_rcu_expedited()” è nettamente più veloce rispetto alla controparte standard, sebbene risulti meno apprezzata da parte degli sviluppatori, a causa dell’impatto che ha sugli IPI (Interrupt Priority Inversions) di sistema.

Si tratta a ogni modo di una soluzione temporanea, che precede un approccio più definitivo il quale prevede l’eliminazione delle RCU per sostituirle completamente con gli hazptr (hazard pointers).

Visite totale 1 , 1 visite oggi

Continua a leggere

Scorri verso l'alto