Nei processori Intel di 6a e 7a generazione, quelli denominati “Skylake” e “Kaby Lake”, è presente un bug che in particolari casi può portare a comportamenti imprevedibili ma anche alla perdita o corruzione di dati. Il bug è stato riportato da sviluppatori della distribuzione Linux Debian ed è legata all’Hyper-Threading, la tecnologia che permette di attivare più thread per ogni core del processore.
Dopo l’esecuzione di alcuni loop con meno di 64 istruzioni e l’accesso contemporaneo di determinati registri su entrambi i core logici di uno stesso processore fisico, potrebbero verificarsi i comportamenti anomali prima descritti.
Il problema riguarda i processori Intel Skylake X e Kaby Lake X di ultima generazione, le rispettive versioni server (quali Xeon v5 e Xeon v6) e anche alcuni Pentium. Intel è a conoscenza del problema e ha cominciato a risolvere il bug aggiornando il microcodice alla base del funzionamento del processore, offrendo ai produttori una soluzione che potrà essere rilasciata come aggiornamento BIOS o EFI.
I Mac con integrati processori Skylake o Kaby Lake con supporto Hyper-Threading sono gli iMac Retina 5K Core i7 fine 2015 e 2017, e i MacBook Pro 2016 e 2017. Apple al momento non ha rilasciato aggiornamenti firmware per queste macchine. Per gli sviluppatori che riscontrano problemi e vogliono eseguire test, ricordiamo che Apple mette a disposizione uno strumento denominato “Instruments” (parte di Xcode) pensato per il profiling delle app e che, tra le altre cose, consente di attivare/disattivare il multi-threading.