Categoria : News by TPole | 7 Maggio 2020
Era il Novembre del 2008 quando Intel® con la presentazione di Nahalem, la prima generazione dell’architettura Core™, ha introdotto una distinzione per le soluzioni destinate alla fascia di mercato desktop.
Due socket distinti per altrettante fasce di prodotto: LGA 1150 per i desktop mainstream, LGA 1366 per i prodotti enthusiast, poi chiamati HEDT (High End Desktop). Le soluzioni di quest’ultima categoria potevano adottare processori con più core e memory controller che superavano i limiti del dual channel delle controparti mainstream, oltre ad avere un numero maggiore di linee PCIe da utilizzare per le schede di espansione.
È passato del tempo, sono cambiati i socket, ma questa distinzione di mercato per Intel® è tutt’oggi valida, anche se ora è possibile configurare una macchina desktop mainstream con lo stesso numero di core di una soluzione HEDT o server entry level.
La domanda è lecita: se ho a disposizione lo stesso numero di core, quando utilizzare un sistema desktop mainstream di fascia alta e quando usare un sistema server entry level, più complesso ed economicamente meno vantaggioso?
La risposta è dipende: come in tutti i problemi di dimensionamento, in primo luogo è necessario individuare i bottleneck che limitano le performance del software applicativo durante l’esecuzione.
In termini di elaborazione pura, un processore desktop può avere una frequenza di clock superiore ad un processore server, e da qui ne consegue una perfomance single thread superiore a parità di IPC (Instructions per clock), fattore che dipende dall’architettura.
I problemi nascono quando si eseguono algoritmi memory bounded, ovvero le cui performance dipendono strettamente dalla banda messa a disposizione dal sistema di memoria.
Ad esempio, se consideriamo l’ambito della visione artificiale, la convoluzione di un kernel su un’immagine o l’applicazione di operatori di morfologia matematica sono due tipologie di lavoro che eseguono accessi non locali alla memoria provocando frequenti cache miss. Il tempo trascorso in attesa dei dati è tempo in cui la CPU non procede con l’elaboarazione, e questo limita in modo più o meno importante le performance finali dell’applicativo.
Per minimizzare l’impatto dei cache miss si può ricorrere a due soluzioni: usare processori con una cache più grande o utilizzare un sottosistema di memoria più performante. Ed è qui che i processori Server fanno la differenza rispetto alle controparti desktop mainstream, limitate dall’utilizzo di memory controller dual channel.
Ora che la fascia HEDT di Intel® sta migrando verso le performance dei sistemi server a singolo socket e ricordando che nessun processore HEDT Intel® Core™ X-Series è stato inserito nella embedded roadmap da Intel®, è sempre più comune ricorrere a soluzioni basate su architettura server come workstation grafiche per digital imaging o visione artificiale, soprattutto dopo la presentazione dei processori Intel® Xeon™ W-Series dedicati a questa tipologia di applicazioni.