Linus Torvalds sperimenta Claude Code nel kernel Linux: prestazioni triplicate

Linus Torvalds sperimenta Claude Code nel kernel Linux: prestazioni triplicate

Linus Torvalds, il creatore del kernel Linux, ha pubblicato una serie sperimentale di 8 patch sviluppata con l’aiuto di Claude Code, l’assistente di programmazione basato su intelligenza artificiale dell’azienda Anthropic. L’esperimento, documentato in un commit del 10 ottobre intitolato “mm: read from the page cache without folio references” e inserito nella cartella di sviluppo del progetto, mira a migliorare le prestazioni della gestione della memoria del kernel Linux: nei test effettuati dallo stesso Torvalds, alcune operazioni di lettura dalla cache delle pagine risultano oltre 3 volte più rapide.

L’esperimento in sintesi

La serie di patch, disponibile nel repository software ufficiale del kernel Linux nella cartella (in inglese “branch”) denominata noref-filemap-read-with-llm, affronta un problema di scalabilità noto da tempo: la contesa (in inglese “contention”) che si verifica quando più thread, ovvero flussi di esecuzione indipendenti, leggono ripetutamente piccole porzioni di dati dallo stesso file. Il problema era stato segnalato già nel 2024 dallo sviluppatore Matthew Wilcox, che lo aveva riscontrato in carichi di lavoro reali di clienti.

Il problema tecnico: i contatori di riferimento

Per capire l’innovazione, occorre spiegare come il kernel Linux gestisce la lettura dei file. Il page cache (cache delle pagine) è la porzione di memoria che conserva i dati letti dai dischi, in modo che le richieste successive non debbano tornare ogni volta all’unità di archiviazione. Il kernel Linux organizza questa memoria in folio, ossia gruppi di pagine di memoria trattati come una singola unità, ciascuno dotato di un contatore di riferimento che indica quante parti del sistema lo stanno usando.

Nell’implementazione attuale, ogni lettura dalla cache richiede di incrementare e poi decrementare il contatore di riferimento del folio. Si tratta di operazioni atomiche, cioè scritture che devono avvenire senza interruzioni, sulla stessa area di memoria: quando molti thread operano in parallelo su più core della CPU, quella riga di memoria viene continuamente spostata da un core all’altro, creando un collo di bottiglia che limita le prestazioni complessive.

La soluzione proposta: il meccanismo Read-Copy-Update

Le patch sperimentali adottano un approccio diverso, basato sul meccanismo Read-Copy-Update (RCU) già presente nel kernel Linux: una tecnica di sincronizzazione che permette a più thread o processi di leggere dati condivisi contemporaneamente senza interferire tra loro. In pratica, un folio che viene rimosso dalla cache delle pagine non viene immediatamente liberato, ma resta disponibile fino alla scadenza di un “periodo di grazia” RCU. In questo modo un thread che sta leggendo può copiare i dati direttamente dalla pagina al proprio buffer, senza toccare il contatore di riferimento ed entrare in conflitto con gli altri.

I risultati dei benchmark

Un benchmark è un test ripetibile che misura le prestazioni di un sistema in uno scenario controllato. Torvalds ha eseguito i test sul proprio portatile, equipaggiato con un processore Intel Core i7-8565U a 4 core e 8 thread, usando il file system ext4 e con alcune protezioni di sicurezza del kernel Linux disattivate. Il carico di lavoro simulava più thread che leggevano ripetutamente 16 byte dallo stesso file presente in cache.

Lettura con 8 thread

Con 8 thread in esecuzione simultanea, la velocità di lettura è passata da circa 10 milioni di operazioni al secondo a un valore compreso tra 30 e 33 milioni: un miglioramento superiore al triplo.

Lettura con 4 thread

Con 4 thread distribuiti su core separati della CPU, la velocità è salita da circa 9-12 milioni di operazioni al secondo a 25-26 milioni. Più del doppio nel caso meno favorevole, con incrementi ancora maggiori negli altri casi.

Lettura con un singolo thread

Nel test con un solo thread, l’incremento è stato più contenuto, da circa 8 milioni a quasi 9 milioni di operazioni al secondo. Un risultato coerente con la natura del problema: la contesa si manifesta solo quando più letture avvengono in parallelo. Ma anche in questo contesto un piccolo miglioramento c’è stato.

Il ruolo di Claude Code nello sviluppo

L’aspetto più discusso dell’esperimento è la dichiarazione esplicita contenuta nel messaggio del commit. Torvalds scrive che il codice, i programmi di test, la revisione delle questioni aperte e la prima bozza del testo stesso sono stati prodotti con un assistente di programmazione basato su un LLM (Large Language Model, modello linguistico di grandi dimensioni), Claude Code, sotto la sua supervisione, mentre le misurazioni sono state eseguite sulla sua macchina.

Direzione umana e revisione critica

L’uso dell’intelligenza artificiale non equivale a un’approvazione automatica del codice generato. Nel messaggio del commit Torvalds dedica ampio spazio alle questioni irrisolte: il comportamento nell’allocazione della memoria, le possibili incompatibilità, il rischio di regressioni (cioè peggioramenti di prestazioni o funzionamento rispetto alla situazione precedente) e l’impatto del ritardo nel riutilizzo della memoria. Il codice sperimentale, basato sulla versione 7.3-rc6 del kernel Linux con correzioni aggiuntive, dovrà passare attraverso il consueto processo di revisione della comunità prima di qualsiasi fusione nel ramo principale del progetto.

Perché è un fatto rilevante

Questo esperimento segna un passaggio significativo nella storia dello sviluppo del kernel Linux. Il progetto, che nel 2026 ha già adottato regole formali sui contributi generati con l’intelligenza artificiale, vede ora il suo stesso creatore dimostrare sul campo che gli strumenti di intelligenza artificiale possono accelerare il lavoro di ottimizzazione, a condizione che rimangano sotto il controllo e la supervisione di uno sviluppatore esperto. Condizione necessaria già dichiarata in precedenza dallo stesso Linus Torvalds.

I limiti da tenere presenti

È importante sottolineare le precisazioni tecniche. La triplicazione delle prestazioni si riferisce a uno scenario specifico, non a un generico aumento di velocità dei sistemi GNU/Linux. Le misurazioni provengono da una sola macchina e con mitigazioni di sicurezza disattivate. Inoltre, le patch introducono un sovraccarico in alcuni casi, in particolare quando le letture incontrano pagine mancanti dalla cache. La serie rimane quindi un esperimento, disponibile nella cartella noref-filemap-read-with-llm, e non è detto che venga integrata nel ramo principale: si potrà verificare se verrà presa in considerazione nella finestra di fusione della versione 7.4 del kernel Linux.

Conclusioni

L’iniziativa di Torvalds mostra un modello concreto di collaborazione tra sviluppatori e intelligenza artificiale nella programmazione di sistema: l’assistente genera codice, test e documentazione, mentre l’umano definisce gli obiettivi, valuta i rischi e verifica i risultati. Per gli utenti finali, l’esperimento potrebbe tradursi, in futuro, in letture dei file più rapide in scenari con molti accessi simultanei, come server web, basi di dati e applicazioni multiutente. Per gli appassionati e gli sviluppatori, si tratta di un’evoluzione da seguire con attenzione: il codice è pubblico e la discussione è aperta.

Fonte: https://git.kernel.org/pub/scm/linux/kernel/git/torvalds/linux.git/commit/?id=4c0f3697118eb3a708ea79175f7f07c43339bfab
Fonte. https://linuxiac.com/linus-torvalds-uses-claude-code-to-write-linux-kernel-patches/

Visited 1 times, 1 visit(s) today
Se vuoi sostenermi, puoi farlo acquistando qualsiasi cosa dai diversi link di affiliazione che ho nel mio sito o partendo da qui oppure alcune di queste distribuzioni GNU/Linux che sono disponibili sul mio negozio online, quelle mancanti possono essere comunque richieste.

Se ti senti generoso, puoi anche donarmi solo 1€ o più se vuoi con PayPal e aiutarmi a continuare a pubblicare più contenuti come questo. Grazie!

Hai dubbi o problemi? Ti aiutiamo noi!

Se vuoi rimanere sempre aggiornato, iscriviti al nostro canale Telegram.
Se vuoi ricevere supporto per qualsiasi dubbio o problema, iscriviti alla nostra community Facebook o gruppo Telegram.
Cosa ne pensi? Fateci sapere i vostri pensieri nei commenti qui sotto.
Ti piace quello che leggi? Per favore condividilo con gli altri.
Amazon Music
Scopri le ultime offerte per dischi ssd su Acquista su Amazon
Scopri le ultime offerte per memorie RAM DDR su Acquista su Amazon
Scopri le ultime offerte per Chromebook su Acquista su Amazon
Scopri le ultime offerte per Raspberry su Acquista su Amazon

Potrebbero interessarti anche...

Lascia un commento

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

Questo sito utilizza Akismet per ridurre lo spam. Scopri come vengono elaborati i dati derivati dai commenti.