Oggi, Epic Games ha pubblicato sul proprio sito un articolo in cui si mostra l'impatto prestazionale che ha la Patch relativa a Meltdown sui propri Server. Come è possibile osservare dal grafico, il carico su uno dei 3 core dedicati alla macchina virtuale ha visto un incremento del carico di lavoro più che raddoppiato. Le CPU Intel utilizzate nei Server di Epic Games devono quindi lavorare di più (Con conseguenti maggiori consumi energetici) per mantenere il medesimo grado di produttività. I clienti, però, non vedranno un deterioramento dei servizi, in quanto vi è ancora un margine di sicurezza (Le CPU invece di lavorare al 30%, lavoreranno al 70%). Chi vi perde è Epic Games, la quale dovrà vedersela con un consumo energetico più elevato, un'usura più veloce della componentistica, e un più facile degrado dei sistemi di raffreddamento, i quali dovranno subire una manutenzione più attenta. Epic Games, in conclusione, dovrà pagare di più per via dei costi di manutenzione/mantenimento più elevati. E tutto ciò si ripercuoterà su tutto il parco macchine.
The following chart shows the significant impact on CPU usage of one of our back-end services after a host was patched to address the Meltdown vulnerability (Epic Games)
Anche altre case sono nella medesima situazione di Epic Games, come ad esempio Microsoft. La casa di Redmond ha rassicurato i propri clienti che i servizi di Azure non subiranno cali prestazionali sensibili: "The majority of Azure customers should not see a noticeable performance impact with this update. We’ve worked to optimize the CPU and disk I/O path and are not seeing noticeable performance impact after the fix has been applied. A small set of customers may experience some networking performance impact". Anche qui, molto semplicemente, i Server di Microsoft dovranno lavorare di più.
Per le grandi aziende che operano nel mercato del Cloud Computing e delle Macchine Virtuali, la situazione non è delle più rosee, come abbiamo costatato. Ma per noi utenti casalinghi quanto potrà impattare Meltdown? Per osservarlo in prima persona, abbiamo deciso di sfruttare il PC MSI Infinite X ancora nei nostri laboratori, dotato di una CPU Intel Core i7-8700K e di un RAID 0 composto da due SSD Intel 600P NVMe da 256GB.
CPU | Intel Core i7-8700K |
Scheda Madre | MSI Z370M Gaming AC Micro-ATX (Custom) |
Dissipatore | Asetek AiO 140mm |
RAM | 2x8GB Kingston DDR4-2400 |
SSD | 2x256GB Intel 600P M.2 NVMe |
HDD O.S. |
Seagate Barracuda 2TB SATA III |
PSU | Delta GPS-850HB 850W 80+ Platinum |
GPU | MSI GeForce GTX1080Ti ARMOR 11GB-GDDR5X |
Altro | DVD/RW |
Sistema Operativo | Windows 10 Home (1709 - KB4056892) |
Modalità di Test
- Sulla scheda sono stati installati solo i componenti necessari: CPU, memoria, scheda video e hard disk.
- Ogni test è stato ripetuto per tre volte e, se i risultati di qualche test si mostrano troppo lontani dalla media (elevata varianza), il test stesso è stato di nuovo ripetuto, scartando il risultato non corretto.
- Alla fine di ogni sessione di prova l'hard disk è stato formattato.
- Per effettuare i Benchmark in Windows è stata selezionata la modalità "Bilanciata".
- Il processore, a frequenza Default, ha attive tutte le opzioni di risparmio energetico disponibili nel BIOS.
Per prima cosa, abbiamo deciso di testare la situazione con due software dedicati principalmente all'utenza SoHo-Prosumer, ATTO Disk Benchmark e AIDA64 Engineer. I benchmark per HDD e SSD di queste suite sfruttano principalmente la lettura e la scrittura sequenziale di dati, tipica dei computer casalinghi (Caricamento di livelli di videogiochi, visione di film rippati, imponenti file Office, ecc). Come è possibile osservare dagli screen qui mostrati, non vi è alcuna particolare differenza tra la situazione Pre-Patch e la situazione Post-Patch (A parte un leggero aumento dell'occupazione della CPU in AIDA64).
A sinistra Pre-Patch, a destra Post-Patch
A sinistra Pre-Patch, a destra Post-Patch
Veniamo quindi ad osservare come le cose possono cambiare sfruttando IOMeter, simulando il carico di lavoro di un piccolo Server Web. I server, ad esempio quelli che hostano videogiochi (MMORPG, FPS, ecc), devono fare i conti con l'invio e la ricezione di una quantità inumana di piccoli pacchetti di dati, e questo richiede un'enorme efficienza da parte della CPU nella gestione delle attività di I/O. E' proprio il caso dei server di Epic Games!
Abbiamo settato IOMeter secondo queste impostazioni. Il file creato è di 160GB (10 volte la nostra memoria RAM), mentre il test è stato eseguito per 30 minuti.
A sinistra Pre-Patch, a destra Post-Patch
Il Test lo abbiamo eseguito più volte per evitare che potessero esserci eccessive disparità, ma così non è stato. Per questo vi mostriamo solo due risultati. Nel complesso i test non si discostano eccessivaamente tra loro (Ad esempio, Post-Patch abbiamo avuto un'occupazione massima della CPU pari al 6,60%).
Come è possibile osservare dai nostri risultati in IOMeter, l'occupazione della CPU è aumentata, passando dal 4,85% al 6,52% (Occupazione +34,4%), mentre la latenza di risposta massima è aumentata di circa 10 volte (La latenza media, invece, risulta stabile). Questo accade perché con l'utilizzo di pacchetti di così ridotte dimensioni e così frequenti, aumenta la frequenza di Context Switch. La CPU, dovendo gestire via Software anche le funzioni di sicurezza introdotte con la Patch KB4056892 di Windows, a seconda dei casi o necessita di maggiore potenza per mantenere il medesimo livello di I/O Throughput (Maggiore occupazione) o, nel caso fosse impossibile fare altrimenti, in rari casi necessita di più tempo (Maggiore latenza).
Qui alcune referenze:
In conclusione, possiamo affermare che la Patch di sicurezza per Meltdown non andrà ad inficiare le prestazioni degli SSD degli utenti Consumer, per via dei carichi di lavoro tipici di questa tipologia di clienti. Al contrario, le grandi aziende che operano nei settori del Cloud Computing e della Virtualizzazione avranno le loro gatte da pelare. La Patch mette una pezza ai problemi relativi alla sicurezza, ma impone anche dei pesanti deficit prestazionali. Si spera che nelle prossime settimane Intel possa sistemare la cosa via Driver, almeno in parte, per limitare questo handicap. Non sarebbe conveniente "far arrabbiare" chi con il PC ci lavora e, probabilmente, per comprarlo ha speso decine di migliaia di Euro (Laboratori di ricerca, Università, ecc).
Il degrado prestazionale, lato Consumer, si avrà con l'aggiornamento del Microcodice delle CPU e del Firmware UEFI delle schede madri per patchare Spectre V2, sia per le CPU Intel sia per le CPU AMD, Ma in questo caso bisognerà testare approfonditamente come e quanto impatterà, secondo la tipologia del software utilizzato, in quanto ogni uArch farà storia a sé.