Dal ring bus a mesh, il futuro prossimo dei processori Intel

Le CPU Intel Xeon Scalable e le soluzioni Core Skylake-X adottano una nuova topologia mesh per integrare più core senza cali prestazionali.

Avatar di Paul Alcorn

a cura di Paul Alcorn

Intel ha annunciato la nuova architettura mesh alla base della piattaforma server Xeon Processor Scalable. Di recente l'azienda ha cambiato il nome dei processori Xeon: la nuova gamma basata su architettura Skylake che arriverà sul mercato non solo costituirà la linea "Xeon Processor Scalable", ma sarà composta da sottofamiglie chiamate Platinum, Gold, Silver e Bronze.

Dietro i nuovi prodotti non c'è però un semplice cambio di brand, ma molto di più. La nuova topologia mesh dei processori Xeon sfida l'Infinity Fabric di AMD, alla base dei processori Ryzen, ThreadRipper ed EPYC. Confrontiamo i due progetti.

L'era del Ring Bus

Le CPU nascono per processare i dati, e di conseguenza è richiesto che le informazioni passino tra le diverse unità. I bit, rappresentati da 1 e 0, passano nei percorsi dentro al processore alla velocità di miliardi di cicli al secondo. Spostare dati tra gli elementi principali come i core, la memoria e i controller di I/O, è una delle sfide più grandi nella progettazione di un processore.

Spostare i dati in modo efficiente ha un enorme impatto sulle prestazioni, ma il fluire dei dati richiede anche energia, quindi una trasmissione senza intoppi ed efficace è una componente chiave per assicurare consumi ridotti e di conseguenza minori temperature.

L'ottimizzazione delle interconnessioni, a sua volta, consente ai progettisti di dedicare ulteriore margine ad altri compiti utili, come il processo dei dati. Negli anni sono state impiegate diverse tecniche per la comunicazione nel processore, ma l'implementazione ad anello di Intel, meglio nota come ring bus, ha rappresentato il cuore dei progetti dell'azienda ìn molte delle ultime generazioni.

ring bus

Il ring bus di Intel, mostrato qui sopra sul die Broadwell LCC (Low Core Count), connette vari componenti con un bus bidirezionale (in rosso). I die LCC usano un singolo ring (anello) che spinge i dati a una velocità di un singolo ciclo per hop - tra i core contigui. Spostare i dati da un core a quello più vicino richiede un ciclo, mentre inviare il dato ai core più distanti richiede più cicli, aumentando così la latenza associata al transito del dato.

Sono necessari fino a 12 cicli per raggiungere il core più distante, quindi la capacità di spostare il dato in ambedue le direzioni permette al processore d'indirizzarlo tramite il percorso più breve possibile. Ogni core sul die è accompagnato da cache, quindi la maggiore latenza impatta anche sulle prestazioni della cache.

ring bus 2

Un die HCC (High Core Count) più grande fa emergere uno dei problemi di questo approccio. Per aumentare core e cache, il die HCC usa un doppio bus ad anello. La comunicazione tra i due anelli deve passare tramite un buffered switch (guardate tra i due anelli in alto e in basso). Attraversare lo switch impone un penalty di 5 cicli, e questo prima che il dato continui attraverso più hop per arrivare alla sua destinazione. Questa maggiore latenza limita la scalabilità.

La comunicazione all'interno del processore richiede più tempo all'aumentare del numero di core, impattando sulle prestazioni. Incrementare la frequenza per far fronte al calo delle prestazioni richiede una tensione maggiore, che impatta sui consumi e sulle temperature.

Ricordate: i processori possono raggiungere frequenze Boost per periodi più lunghi di tempo in base al budget termico, quindi una tensione maggiore può influenzare negativamente le prestazioni.


Tom's Consiglia

Scopri i processori Intel Core su Amazon.