Microsoft aggiorna periodicamente la lista dei processori supportati in Windows 11: di solito lo fa per aggiungere dispositivi di nuova generazione, non per estendere la possibilità di installare il sistema operativo sulle macchine più vecchie. I requisiti di Windows 11 restano infatti piuttosto severi tanto da escludere le macchine basate su processori Intel Kaby Lake di ottava generazione e AMD Ryzen 2000 (oltre a tutti i modelli precedenti).
Certo, è sempre possibile installare Windows 11 sui sistemi non compatibili con un semplice espediente, peraltro documentato da Microsoft stessa. L’azienda di Redmond ha più volte chiarito, tuttavia, che i PC non in possesso dei requisiti minimi e aggiornati forzosamente a Windows 11, potrebbero non ricevere più gli aggiornamenti attraverso Windows Update. Al momento non è mai successo. E ciò anche a distanza di quasi 2 anni dal rilascio della versione finale di Windows 11.
Uno sviluppatore Red Hat, Tejun Heo, ha rilevato che il comportamento della cache L3 dei processori basati su architettura Zen 2 può essere migliorata. L’ingegnere ha trovato una soluzione pratica per fare in modo che il sistema operativo gestisca lo scheduling delle attività che il processore deve svolgere in modo molto più rapido. Soprattutto quando ci sono thread nello stato idle su differenti CCX (CPU Complex) or CCD (Core Compute Die).
Thread, CCX e CCD
Come abbiamo visto nell’articolo citato in precedenza, un thread rappresenta un’unità di esecuzione all’interno del processore. I moderni processori che supportano il multithreading possono eseguire più thread contemporaneamente, migliorando l’utilizzo delle risorse e aumentando le prestazioni complessive. I processori AMD Ryzen utilizzano la tecnologia SMT (Simultaneous Multithreading).
Quando si dice che un thread è in idle, si intende che il thread non sta eseguendo alcun lavoro significativo o attività computazionali. In altre parole, il thread è in uno stato di inattività o di attesa, senza compiti da eseguire o senza richieste da elaborare.
CCX (Core Complex) è un’unità all’interno di un processore AMD Ryzen che contiene un gruppo di core e una cache L3 condivisa. Con la sigla CCD (Core Chiplet Design) si fa riferimento al singolo chiplet all’interno del processore Ryzen che ospita uno o più CCX. Parlando delle differenze tra core P e core E Intel, abbiamo visto perché vi è la tendenza a realizzare processori ibridi e MCM (Multi-chip module).
Nelle immagini di seguito, la gerarchia della cache nei processori AMD con uno o due CCD.
Il kernel Linux migliora il supporto dei processori AMD più vecchi
Con una scelta diametralmente opposta a quella di Microsoft, Linux continuerà ad ottimizzare anche il funzionamento dei vecchi processori. I sistemi basati su AMD Zen 2 (quindi, ad esempio, Ryzen 3000 ed EPYC 7002 in ambito server) risulteranno a breve più scattanti grazie a una migliore gestione dei tempi di idle dei singoli thread.
Peter Zijlstra, ingegnere che si occupa del kernel Linux, ha confermato la bontà dell’approccio studiato da Tejun Heo e ha proposto una modifica che migliora le performance dei processori AMD Zen 2 sin da subito.
Il cambiamento riguarda in particolare le CPU della serie Zen 2. I predecessori come Zen+ e l’architettura Zen originale hanno comunque utilizzato un approccio simile: ogni CCX ha la propria cache L3 o LLC (Last Level Cache) e comunicano tra loro tramite un’interconnessione Infinity Fabric. I benefici prestazionali riguardano quindi anche questi processori AMD ancora più datati.
AMD continua a usare lo schema originale, introdotto nel 2017 con Zen, per i core e le cache L1, L2 e L3. Anche nelle CPU basate su Zen 3 (Ryzen 5000) e Zen 4 (Ryzen 7000). Le ottimizzazioni introdotte in Linux saranno applicabili all’intera offerta presente e passata di AMD.