Ricerca nel sito web

Rilasciato il kernel Linux 6.14, ecco le novità


Il kernel Linux 6.14 introduce primitive di sincronizzazione NT per giochi più veloci, bilanciamento della lettura Btrfs RAID1 migliorato, controllo della memoria GPU e altro ancora.


Linus Torvalds ha annunciato il rilascio ufficiale del nuovo kernel Linux 6.14, introducendo una serie di miglioramenti e nuove funzionalità.

Per iniziare, molti giocatori e appassionati di vino saranno entusiasti del nuovo driver primitivo di sincronizzazione NT. I sistemi Windows NT utilizzano metodi di sincronizzazione che differiscono notevolmente dai sistemi operativi UNIX-like, causando spesso un sovraccarico durante l'emulazione sotto Linux.

Questo driver riduce questo sovraccarico, consentendo prestazioni più veloci e fluide, soprattutto per i carichi di lavoro di gioco. Nel linguaggio quotidiano, questo significa meno ritardi e un gameplay più coerente quando si eseguono titoli Windows su Linux.

Inoltre, gli utenti di Btrfs RAID1 possono ora scegliere tra diversi nuovi metodi di bilanciamento della lettura per adattarsi meglio a diverse configurazioni hardware e carichi di lavoro. Il metodo predefinito "rotazione" mantiene attivi tutti i dispositivi, mentre l'opzione "latenza" si rivolge a situazioni con livelli di blocco instabili o non funzionanti.

E, per coloro che preferiscono il controllo manuale, il metodo "devid" è sul tavolo. In altre parole, se si dispone di una configurazione complessa o di un disco in errore, queste nuove strategie possono essere configurate per ottimizzare la velocità effettiva e la stabilità nello scenario specifico.

Un'altra caratteristica accattivante è il supporto introdotto di recente per l'I/O bufferizzato non memorizzato nella cache, che consente alle pagine di dati di uscire dalla cache delle pagine subito dopo le operazioni di lettura o scrittura.

Questa funzione è un punto di svolta su un dispositivo veloce che riempie rapidamente la RAM di sistema con dati che non verranno riutilizzati. Offre la semplicità del tradizionale I/O bufferizzato, il che significa che non è necessario armeggiare con le complessità dell'I/O diretto, garantendo al contempo che il sistema rimanga il più efficiente possibile.

Sul fronte delle notifiche del filesystem, il kernel Linux 6.14 porta l'evento di notifica di pre-accesso al file fsnotifica. In parole povere, questo evento si attiva subito prima dell'accesso al contenuto di un file. Se un listener registrato risponde negativamente, il tentativo di accesso può essere bloccato.

Le applicazioni pratiche vanno dal caricamento su richiesta dei dati dei file (ad esempio, da archiviazione lenta o remota) al controllo granulare sul fatto che un particolare processo possa leggere un file in un dato momento.

Vale la pena notare anche il nuovo dmem cgroup per l'utilizzo della memoria GPU. Molti utenti di data center e workstation si affidano all'elaborazione con accelerazione hardware ed è fondamentale garantire che i carichi di lavoro della GPU rimangano stabili.

Contabilizzando sia la memoria GPU che la memoria CPU allocata dal driver al cgroup corretto, gli amministratori possono ora bilanciare e assegnare priorità ai carichi di lavoro in modo più attento, prevenendo sfratti improvvisi e migliorando le prestazioni della GPU multi-tenant.

Inoltre, la comunicazione basata su io_uring migliora le prestazioni di FUSE. I filesystem FUSE si basano su conversazioni avanti e indietro tra il kernel e un demone in spazio utente. Utilizzando io_uring, che riduce i cambi di contesto e migliora il funzionamento asincrono, i filesystem basati su FUSE vedranno interazioni più rapide e una latenza potenzialmente inferiore.

Anche gli appassionati di machine learning troveranno molto di cui entusiasmarsi. Il nuovo driver amdxdna di AMD lancia ufficialmente il supporto per le NPU (Neural Processing Unit) AMD basate sull'architettura AMD XDNA.

In questo modo è più facile gestire i carichi di lavoro di intelligenza artificiale, dalle reti neurali convoluzionali ai modelli linguistici di grandi dimensioni, direttamente sull'hardware AMD, senza dover mettere insieme complicate soluzioni out-of-tree.

Passando ai filesystem più tradizionali, il reflink XFS e il supporto per la mappatura inversa per i dispositivi in tempo reale colmano finalmente alcune lacune di funzionalità di lunga data. Con reflink, la copia o l'istantanea dei file diventa più efficiente in termini di spazio, mentre la mappatura inversa è un elemento costitutivo necessario per controlli e riparazioni di coerenza avanzati.

Anche NFS, un punto fermo negli ambienti aziendali, questa volta riceve un po' di amore. NFSv4.2+ ora supporta la delega degli attributi, risparmiando tempo sui file scritti di frequente delegando la gestione di determinati metadati (come l'mtime del file) al client. Questo miglioramento può velocizzare notevolmente i flussi di lavoro che si basano fortemente sullo storage di rete.

Infine, lo svuotamento TLB riceve ottimizzazioni di scalabilità per coloro che scavano negli interni del kernel su sistemi x86. Essenzialmente, il kernel può ora svuotare i buffer lookaside di traduzione (che memorizzano nella cache le traduzioni della memoria da virtuale a fisica) in modo più efficiente. Ciò si traduce in una sensazione di maggiore rapidità su sistemi fortemente caricati o virtualizzati e, nei test di microbenchmark, mostra un netto aumento delle prestazioni.

Naturalmente, questi punti salienti graffiano solo la superficie di ciò che è atterrato nella 6.14. Questa versione introduce anche molti driver, modifiche alla sicurezza, miglioramenti della virtualizzazione e altro ancora.

Gli appassionati di kernel che cercano un'analisi approfondita potrebbero voler dare un'occhiata agli eccellenti rapporti sulle finestre di fusione di LWN (parte 1 e parte 2), che offrono un'ampia analisi di tutte le modifiche al codice che hanno trovato la loro strada nel ramo principale.

Per coloro che desiderano compilare il kernel Linux 6.14 da soli, è ora disponibile per il download su kernel.org.