Mentre i processori per server Intel Xeon hanno supportato il clustering sub-NUMA (SNC) per un po’, i server HPE SGI UV con SNC abilitato non hanno funzionato sotto Linux… Ma con Linux 6.5 le cose stanno cambiando.
Il clustering sub-NUMA suddivide i core della CPU/cache/memoria di un processore in più domini NUMA. Il clustering sub-NUMA è disponibile con i processori Intel Xeon da anni e l’abilitazione di SNC dal BIOS può aiutare le prestazioni di molti carichi di lavoro compatibili con NUMA. Ma si scopre che la funzionalità SNC sulle piattaforme Ultraviolet/HPE SGI UV non è mai stata adeguatamente controllata sotto Linux.
L’ingegnere di Intel Linux Dave Hansen ha spiegato nel x86/platform pull per il kernel Linux 6.5:
“Esegui il pull di alcune modifiche x86/platform per 6.5. Queste consentono alle CPU in SGX/HPE Ultraviolet di iniziare a utilizzare il clustering Sub-NUMA (SNC) modalità. SNC è stato in giro al di fuori del mondo UV per un po’, ma evidentemente non ha mai lavorato sui sistemi UV.
SNC è piuttosto noto per aver infranto i cattivi presupposti di una relazione 1:1 tra socket fisici e nodi NUMA. Il codice UV era piuttosto prolifico con questi presupposti e ci è voluto un bel po’di refactoring per rimuoverli.”
La rielaborazione di circa duecento righe di codice ora consente al clustering Sub-NUMA sui server HPE SGI UV di funzionare effettivamente correttamente su Linux. Da ieri questo aggiornamento della piattaforma UV è stato unito a Linux 6.5.