Coding 3 min di lettura

Claude Code nel kernel Linux: Torvalds adotta l’IA per l’ottimizzazione del Page Cache

Linus Torvalds lavora al kernel Linux usando strumenti di intelligenza artificiale come Claude Code per il refactoring del

Torvalds pubblica una branch del kernel ottimizzata con l’IA tramite Claude Code

Nell’ottobre 2026, Linus Torvalds ha pubblicato una branch Git denominata noref-filemap-read-with-llm, basata su Linux 7.3-rc6, attribuendo esplicitamente a Claude Code la generazione di codice, test e documentazione. Questa mossa segna un cambio di rotta definitivo rispetto al suo precedente scetticismo verso gli strumenti di IA nello sviluppo delle infrastrutture core. La branch contiene una serie di otto patch che ottimizzano la gestione della memoria, affrontando in particolare un collo di bottiglia nelle letture della page cache, dove il contendere di più thread sui contatori di riferimento rallentava le operazioni su file di piccole dimensioni. Consentendo al kernel di leggere dalla page cache senza riferimenti ai folio, l’ottimizzazione ritarda il riutilizzo della memoria per garantire la sicurezza, ottenendo un aumento misurabile delle prestazioni. Non si tratta di un esperimento teorico, ma di una concreta integrazione dei Large Language Models nel livello più critico del sistema operativo Linux.

Il messaggio di commit sotto la direzione di Torvalds evidenzia un approccio pragmatico: l’LLM ha generato la bozza iniziale e i programmi di test, mentre la supervisione umana ha assicurato la validità tecnica. Questo si allinea con la recente posizione di Torvalds secondo cui l’IA è uno strumento, paragonabile a compilatori o debugger, e il suo valore risiede nell’utilità piuttosto che nella novità. L’integrazione sfida la nozione tradizionale secondo cui lo sviluppo del kernel debba rimanere interamente guidato dall’uomo per garantire la stabilità, suggerendo invece che l’IA può gestire compiti di ottimizzazione specifici e ben definiti se guidata da una direzione esperta.

Guadagni di prestazioni: boost delle letture della Page Cache di 3 volte

Il cuore tecnico della branch noref-filemap-read-with-llm affronta un problema specifico di concorrenza nel sottosistema di gestione della memoria del kernel. In precedenza, la lettura dalla page cache richiedeva di acquisire un riferimento sul folio (una struttura dati che rappresenta un insieme di pagine). In ambienti ad alta concorrenza, più thread che tentavano di leggere file di piccole dimensioni contendevano su questi contatori di riferimento, creando un collo di bottiglia dovuto alla contesa sui lock. Questa contesa degradava significativamente il throughput nelle letture di file piccoli, un workload comune nei moderni sistemi di storage.

L’ottimizzazione introduce un meccanismo per leggere dalla page cache senza acquisire un riferimento al folio, eliminando così il punto di contesa. Per mantenere la sicurezza, il sistema ritarda il riutilizzo della memoria fino al completamento dell’operazione di lettura. I risultati, misurati sul laptop di Torvalds, sono stati sostanziali:

Metrica Prima dell’ottimizzazione Dopo l’ottimizzazione Miglioramento
Velocità di lettura (File piccoli) ~10 milioni di letture/sec 30–33 milioni di letture/sec ~3x Aumento
Contesa sui contatori di riferimento Alta Eliminata N/A

La metodologia si basa sul ritardo del riutilizzo della memoria, una tecnica che scambia un leggero aumento dell’impronta di memoria con una riduzione dell’overhead della CPU e della contesa sui lock. Questo trade-off è accettabile in molti workload server dove la memoria è abbondante ma i cicli CPU sono scarsi. Il fatto che Claude Code abbia generato il codice e i test per questa ottimizzazione dimostra che gli LLM possono gestire logica complessa di gestione della memoria a basso livello quando forniti di vincoli chiari e meccanismi di verifica.

Scoperta di bug decennali tramite analisi del codice assistita da LLM

assoc-array-fixes. Questo processo ha coinvolto la decifrazione di codice oscuro nella libreria degli array associativi, un compito che i manutentori umani spesso trovano noioso e soggetto a errori. Utilizzando l’IA per analizzare il codice, Torvalds ha confermato un bug segnalato e ne ha scoperti tre aggiuntivi che risalgono alla nascita della libreria nel 2013. Questo evidenzia una capacità significativa degli LLM nella manutenzione del codice: la capacità di rilevare errori logici di lunga data in codebase legacy complesse.

La libreria degli array associativi è una struttura dati fondamentale utilizzata in tutto il kernel. Bug in un componente così core possono avere implicazioni diffuse, influenzando prestazioni, stabilità e sicurezza. La scoperta di bug che risalgono al 2013 suggerisce che le code review manuali potrebbero aver trascurato problemi sottili a causa della complessità del codice o del passare del tempo. Gli LLM, con la loro capacità di elaborare grandi quantità di codice e identificare pattern, possono agire come un potente “secondo paio di occhi”, cogliendo problemi che gli umani potrebbero perdere.

Questo caso d’uso sposta la percezione dell’IA da generatore di codice ad auditor di codice. Suggerisce che gli strumenti di IA possono migliorare l’affidabilità delle codebase esistenti identificando bug latenti, riducendo il debito tecnico che si accumula nel corso di anni di sviluppo. Per i manutentori del kernel, questo significa un’identificazione più rapida di problemi critici e, potenzialmente, release più stabili.

Il cambio di rotta di Torvalds: dallo scetticismo all’advocacy

La posizione di Linus Torvalds sull’IA è evoluta significativamente. Nel 2024, descriveva l’industria dell’IA come “90 percento marketing e 10 percento realtà”. Nell’ottobre 2026, difende l’uso dell’IA, affermando: “L’IA è uno strumento, proprio come gli altri strumenti che usiamo. Ed è chiaramente uno utile”. Sottolinea che la community del kernel prende decisioni basate sul merito tecnico piuttosto che sulla “paura dei nuovi strumenti”. Questo cambio riflette un riconoscimento pragmatico dell’utilità dell’IA in compiti specifici, come la generazione di codice, la creazione di test e il rilevamento di bug.

Torvalds ha anche affrontato il concetto di “vibe coding”, descrivendolo come un modo per trovare gioia nella programmazione, in particolare per i nuovi arrivati. Riconosce le imperfezioni dell’IA ma insiste sul fatto che la soluzione è assicurarsi che gli strumenti LLM aiutino i manutentori anziché causare dolore. Ha dichiarato che “ignorerà rumorosamente” chi argomenta contro il suo utilizzo, segnalando un fermo impegno nell’integrare l’IA nel workflow di sviluppo. Questa advocacy non riguarda la sostituzione degli sviluppatori umani, ma l’aumento delle loro capacità, permettendo loro di concentrarsi su design e architettura di alto livello mentre l’IA gestisce compiti analitici ripetitivi o complessi.

Consenso dei manutentori: gli strumenti IA migliorano la qualità delle segnalazioni

L’integrazione dell’IA nello sviluppo del kernel non si limita a Torvalds. Greg Kroah-Hartman, manutentore del kernel Linux stable, ha notato che mentre le prime segnalazioni generate dall’IA erano “spazzatura” (slop), la qualità è migliorata significativamente con i modelli frontier del 2026 come Anthropic Claude Opus 4.8. Ha descritto le segnalazioni come “reali” e “buone”, indicando che la community sta riconoscendo il valore dell’IA nel migliorare la qualità delle segnalazioni di bug e delle patch. Questo consenso tra i manutentori chiave è cruciale per l’adozione diffusa degli strumenti IA nell’ecosistema del kernel.

Il miglioramento della qualità delle segnalazioni suggerisce che i modelli IA sono avanzati abbastanza da comprendere il contesto e i requisiti dello sviluppo del kernel. Possono generare segnalazioni di bug significative, identificare potenziali problemi e persino proporre patch che soddisfano gli elevati standard della community del kernel. Questo riduce il carico sui manutentori, che spesso spendono molto tempo nel triage di segnalazioni di bassa qualità. Con migliori segnalazioni generate dall’IA, i manutentori possono concentrarsi sulla revisione di patch di alta qualità e sull’affrontare problemi critici.

Gestire la resistenza: Ts’o e Bottomley sull’integrazione dell’IA

Nonostante la crescente accettazione, la resistenza persiste. Theodore “Ted” Ts’o, un prominente manutentore del kernel, ha affrontato i casi limite riguardanti i backport automatizzati, sostenendo che la community non dovrebbe “piegarsi all’indietro” per compiacere gli autori di patch che rifiutano i sistemi generati dall’IA. Questo evidenzia una tensione tra efficienza e tradizione. Alcuni sviluppatori potrebbero resistere all’uso degli strumenti IA a causa di preoccupazioni sulla qualità del codice, sulla sicurezza o dal desiderio di mantenere il controllo umano sulle infrastrutture critiche.

James Bottomley, un altro manutentore chiave, ha anche contribuito alla discussione, sottolineando la necessità di una valutazione attenta del codice generato dall’IA. L’approccio della community non è accettare ciecamente gli output dell’IA, ma integrarli come parte di un workflow più ampio che include test rigorosi e revisioni. Questo approccio bilanciato assicura che i benefici dell’IA siano realizzati senza compromettere la stabilità e la sicurezza del kernel.

Il dibattito sull’integrazione dell’IA nel kernel riflette una tendenza più ampia del settore. Man mano che gli strumenti IA diventano più capaci, la loro adozione in sistemi critici diventa inevitabile. Tuttavia, deve essere gestita con attenzione, con linee guida chiare per l’uso, la verifica e la responsabilità. L’esperienza della community del kernel fornisce un prezioso caso di studio per altre industrie che considerano l’integrazione dell’IA nei loro processi di sviluppo core.

Il ruolo dei modelli frontier nello sviluppo del kernel 2026

L’uso di Claude Code e di altri modelli frontier nello sviluppo del kernel 2026 dimostra la maturazione degli strumenti IA per compiti complessi di ingegneria del software. Questi modelli non generano più solo semplici snippet di codice, ma contribuiscono a ottimizzazioni significative e fix di bug nel livello più critico del sistema operativo Linux. Il successo della branch noref-filemap-read-with-llm e del tag assoc-array-fixes mostra che l’IA può gestire la gestione della memoria a basso livello e l’analisi del codice legacy con elevata precisione.

Per sviluppatori e manutentori, l’implicazione è chiara: gli strumenti IA stanno diventando componenti essenziali del workflow di sviluppo. Possono accelerare lo sviluppo, migliorare la qualità del codice e scoprire bug nascosti. Tuttavia, il loro utilizzo richiede un’attenta supervisione e integrazione nei processi esistenti. L’approccio della community del kernel—usare l’IA come strumento anziché come sostituto—fornisce un modello per l’adozione responsabile dell’IA nelle infrastrutture critiche.

Man mano che i modelli IA continuano a migliorare, il loro ruolo nello sviluppo software si espanderà probabilmente. La sfida chiave sarà assicurare che la loro integrazione sia sicura, affidabile e allineata con i valori della community open-source. L’esperienza del kernel Linux con Claude Code offre una strada promettente, dimostrando che l’IA può migliorare, anziché minare, la qualità e le prestazioni del software core.

← Tutti gli articoli