Linus Torvalds ha annunciato pubblicamente di aver utilizzato un assistente di codifica basato su grandi modelli di linguaggio (LLM), Claude Code di Anthropic, per scrivere nuove patch del kernel Linux. La decisione rappresenta una svolta nella relazione tra il principale sviluppatore del kernel, l'intelligenza artificiale e la community open source.
Le otto patch e il problema del cache di pagine
Le patch, pubblicate nella branch noref-filemap-read-with-llm del repository di Torvalds, mirano a risolvere un colletto di bottiglia che si verifica quando più thread effettuano piccole letture dallo stesso file memorizzato nella cache di pagine. In pratica, ogni lettura richiede l'acquisizione e il rilascio di un riferimento al folio contenente i dati, operazioni che comportano scritture atomiche su una linea di cache condivisa. Questo porta i core della CPU a contendersi l’accesso a quella linea, degradando le prestazioni.
Il problema era già noto dal 2024, ma le soluzioni proposte in precedenza non erano riuscite a eliminarlo. Torvalds ha dimostrato che, su un laptop con Intel Core i7‑8565U a quattro core (otto thread), otto thread che eseguivono pread() di 16 byte sulla stessa pagina provocano un utilizzo del 99,92 % della linea di cache condivisa, misurato come Hit in Modified cache line (HITM). Questa condizione rallenta significativamente il lavoro.
Come funzionano le nuove patch
- Ritardano la restituzione della memoria al gestore di allocazione finché non scade un periodo di grazia read‑copy‑update (RCU).
- Permettono a un lettore protetto da una sezione RCU di copiare i dati direttamente nel buffer utente senza incrementare il contatore di riferimenti del folio.
- Sacrificano il recupero immediato della memoria a favore di un percorso di lettura più leggero, riducendo le scritture atomiche condivise.
I risultati sperimentali mostrano miglioramenti notevoli: con otto thread il throughput è passato da circa 9,9‑10,4 M letture al secondo a 30‑33 M, mentre i cicli di kernel per lettura sono scesi da circa 2 950 a 725. Anche le letture a singolo thread hanno beneficiato, passando da 452‑454 a 408‑409 cicli per lettura. Torvalds ha aggiunto che su macchine con più processori o socket i guadagni dovrebbero essere ancora maggiori.
Limiti e problematiche residue
Nonostante le prestazioni migliori, le patch introducono compromessi tecnici. Il ritardo nella riutilizzazione della memoria può tenere pagine indisponibili fino al completamento del grace period RCU, creando una potenziale regressione in scenari di alta pressione di memoria. Inoltre, quando una lettura mira a una pagina utente non ancora mappata, la nuova logica genera un'eccezione aggiuntiva prima di ricadere sull'implementazione originale.
Al 13 ottobre 2026 la branch rimaneva fuori dalla mainline del kernel (Linux 7.3‑rc6) e non è ancora chiaro se, quando e sotto quali condizioni, sarà accettata. La community dovrà valutare se i benefici superino i rischi di regressioni e di gestione più complessa della memoria.
Contesto evolutivo dell'atteggiamento di Torvalds verso l'IA
- Dicembre 2023: Torvalds descrive l'IA come “un aiuto potenziale per i sviluppatori”, focalizzandosi soprattutto sulla rilevazione di bug.
- Fine 2025: si definisce “fervente sostenitore dell'IA come strumento”, ampliando l'interesse alla manutenzione del codice e alla revisione di patch.
- Gennaio 2026: sperimenta l'IA per un visualizzatore audio in Python, segnando il primo passo pratico nella generazione di codice.
- Ottobre 2026: dichiara di “apprezzare davvero l'uso dell'IA” durante l'Open Source Summit Europe a Praga, sottolineando al contempo la necessità di prudenza.
Queste dichiarazioni evidenziano una transizione da scetticismo a adozione consapevole. Torvalds riconosce l'IA come “uno strumento fantastico se usato correttamente” e afferma che “rende la programmazione molto più piacevole”. Tuttavia, avverte che “bisogna essere molto cauti quando si usa l'IA per realizzare qualcosa di concreto e importante”, un avvertimento particolarmente rilevante considerando la criticità di Linux.
Implicazioni per il futuro del kernel
L'esperimento sul cache di pagine dimostra che l'IA può contribuire a risolvere problemi complessi del kernel, ma anche che l'integrazione di soluzioni generate da LLM richiede una valutazione rigorosa di sicurezza e stabilità. Se le patch saranno accettate, potremmo assistere a un aumento dell'uso di assistenti LLM per:
- Generare codice boilerplate e test unitari.
- Analizzare e suggerire ottimizzazioni per colli di bottiglia noti.
- Supportare la documentazione e la revisione delle patch.
Allo stesso tempo, la necessità di verifiche manuali, revisione da parte di esperti e test approfonditi rimarrà fondamentale per evitare regressioni nascoste. La comunità Linux dovrà bilanciare l’efficienza offerta dall’IA con la tradizionale cultura del controllo rigoroso del codice.
Conclusioni
Le otto patch di Linus Torvalds, co‑scritti con Claude Code, rappresentano un primo passo concreto nell'adozione dell'IA per lo sviluppo del kernel Linux. I miglioramenti di performance sono promettenti, ma le implicazioni sulla gestione della memoria e le potenziali regressioni richiedono ulteriori lavori. L'evoluzione dell'atteggiamento di Torvalds verso l'IA riflette un cambiamento più ampio nella comunità open source, che potrebbe vedere l'IA diventare un alleato strategico, purché usata con la dovuta cautela e revisione.
