Vai al contenuto
Offerte

Linus Torvalds scrive patch per il kernel Linux con Claude Code

In questo articolo Indice dei contenuti 3 sezioni

Linus Torvalds ha scritto codice per il kernel Linux con l’aiuto dell’intelligenza artificiale e lo ha dichiarato senza giri di parole. Il papà di Linux ha pubblicato una serie di patch realizzate in larga parte con Claude Code, l’assistente di programmazione sviluppato da Anthropic, per risolvere un rallentamento della memoria cache che emerge quando entrano in gioco più core e più processori. Nel suo invio su Git lo ha messo nero su bianco: “Il codice, i programmi di test, la revisione dietro l’elenco qui sopra e la prima bozza di questo testo sono stati realizzati con un assistente di programmazione basato su LLM (Claude Code) sotto la mia direzione”.

Si tratta dell’ultimo passo di un percorso che negli ultimi anni ha visto Torvalds passare dallo scetticismo a una visione dell’IA come strumento utile per chi programma e per chi mantiene il codice. Un cambio di rotta graduale che adesso arriva fino al cuore del sistema operativo.

Linus Torvalds: un collo di bottiglia nella memoria condivisa

Il problema riguarda la page cache di Linux, cioè la porzione di memoria che conserva i dati dei file. Quando diversi thread leggono ripetutamente piccole quantità di dati dallo stesso file in cache, acquisiscono e rilasciano riferimenti al folio che contiene quei dati. Ogni aggiornamento del conteggio dei riferimenti richiede scritture atomiche su una linea di cache condivisa e così i core del processore finiscono per contendersela.

Sembra un dettaglio da poco ma in certi carichi di lavoro il rallentamento è pesante. Torvalds ha osservato che con otto thread impegnati in chiamate pread() da 16 byte sulla stessa pagina, su un portatile con Intel Core i7 8565U a quattro core e otto thread, quella linea di cache condivisa rappresentava il 99,92% del carico misurato tra i core secondo i dati HITM. Non è un capriccio personale del kernel Linux. La questione è nota dal 2024 e i tentativi precedenti di risolverla non hanno portato da nessuna parte.

Le modifiche proposte da Torvalds e Claude Code cambiano il momento in cui il kernel può riutilizzare la memoria rimossa dalla page cache. Invece di restituirla subito all’allocatore, il riutilizzo viene rinviato fino al termine di un periodo di grazia RCU. In questo modo un lettore che opera in una sezione di lettura protetta da RCU può copiare i dati direttamente nel buffer dell’utente senza prendere un riferimento al folio. In pratica si rinuncia al recupero immediato della memoria in cambio di un percorso di lettura che evita di aggiornare di continuo un contatore condiviso.

Nel test specifico i guadagni sono notevoli. Con otto thread le letture sono salite da circa 9,9 e 10,4 milioni al secondo a 30 e 33 milioni, mentre i cicli del kernel per lettura sono scesi da circa 2.950 a 725. Con un solo thread il miglioramento è più contenuto, da 452 e 454 cicli a 408 e 409 per lettura. Secondo Torvalds “una macchina con più CPU, o con più di un socket, dovrebbe guadagnare di più. Nulla di più grande è stato misurato”. Questo non significa che Linux nel suo complesso diventi tre volte più veloce. I risultati riguardano un carico di piccole letture eseguito sul portatile personale che Torvalds aveva con sé a Praga durante Linux Plumbers.

Letture più rapide ma il lavoro non è finito

Il problema non può dirsi risolto, anzi. I benefici arrivano con dei compromessi tecnici perché ritardare il riutilizzo della memoria vuol dire che alcune pagine restano indisponibili mentre il kernel aspetta il periodo di grazia RCU. Lo stesso Torvalds ha definito questo aspetto del recupero della memoria “la parte di questa serie meno risolta”.

C’è poi una regressione quando una lettura punta a una pagina utente non ancora mappata. Il nuovo percorso genera un’eccezione fallita in più prima di tornare all’implementazione esistente. Al 13 ottobre il ramo era ancora fuori dalla linea principale di Linux 7.3 rc6 e non è chiaro se verrà mai integrato né con quali tempi.

Dallo scetticismo all’uso concreto

La scelta di affidarsi a Claude Code è il frutto di un’evoluzione lunga e non di un semplice voltafaccia. A dicembre 2023 Torvalds descriveva l’intelligenza artificiale come un possibile aiuto, spiegando di vederla come “uno strumento che può aiutarci a essere migliori in ciò che facciamo”. All’epoca il suo interesse riguardava soprattutto la ricerca di bug e non la scrittura di codice. Verso la fine del 2025 si definiva “un grande sostenitore dell’IA come strumento”, più attento anche alla manutenzione del codice e alla revisione delle patch, mentre generare nuovo codice serio per Linux restava ancora fuori discussione. A gennaio 2026 ha iniziato a sperimentare la programmazione assistita per un visualizzatore audio in Python, un progetto amatoriale.

Fonte: TecnoAndroid

Condividi:
116 Condivisioni