eGPU via Thunderbolt 3 vs GPU PCIe 3.0: la matematica dietro le quinte

Leggi questo articolo grazie alle donazioni di Andrea Castiglione, Enrico Valzano, Riccardo Dalla Fontana, Filippo Gatti, Nicolò Dondi, Marcello Manzini, Andrea Montagna, Matteo Capuzzi, Filippo Lelli Mami, Nicola Modugno, Federico Tonello.
♥ Partecipa anche tu alle donazioni: sostieni SaggiaMente, sostieni le tue passioni!

Ormai da diverso tempo si parla di eGPU, ovvero schede grafiche esterne al computer. Una soluzione simile non aveva alcuna utilità in passato, ma è diventata mano a mano più intrigante quanto più il mercato dei PC si allontanava dal vecchio concetto di tower. Oggi i computer che si vendono sono per lo più portatili ed all-in-one, ovvero sistemi chiusi in cui l'utente ha sempre meno possibilità di upgrade. In tale scenario la possibilità di connettere esternamente una scheda grafica più potente di quella fornita di serie ha acquisito un valore completamente diverso, ma se l'idea in sé può sembrare semplice rimane un grosso scoglio da superare: la velocità di connessione.

featured-fiber-optics-numbers

Tecnicamente era già fattibile con ExpressCard e mini PCI-e, ma è solo con l'arrivo di Thunderbolt nel 2011 che la strada è sembrata finalmente percorribile. Questa è poi migliorata nel tempo, raddoppiando una prima volta la larghezza di banda con Thunderbolt 2 nel 2013 e poi ancora nel 2016, con una terza generazione capace di gestire fino a 40Gbps. Con questi numeri non c'è da stupirsi che il concetto di eGPU sia tornato incredibilmente attuale ed Apple stessa ne ha introdotto il supporto nativo su macOS High Sierra. Limitate lo stupore per questa apertura, poiché solo le GPU di AMD sono supportate nativamente mentre per le NVIDIA si procede ancora per workaround, driver non ufficiali e necessaria disattivazione di SIP. Comunque di strada se ne sta facendo e se inizialmente le eGPU sembravano non convenire, oggi ci sentiamo un po' più ottimistici.

Non si può discutere sempre e solo di teoria, però, ecco perché da qualche settimana sto facendo un po' di sperimentazione con il box Thunderbolt 3/PCIe AKiTiO Node Pro. Ho puntato direttamente ad un prodotto di alta qualità e che consentisse massima libertà di configurazione ed installazione di GPU full-size, così da non avere limiti nella fase di test. Seguirà una recensione appena possibile, sto cercando di renderla il più completa possibile analizzando configurazioni miste, sia lato desktop che mobile, con AMD ma anche NVIDIA, e la cosa richiede un po' di tempo. Tuttavia mi è bastato poco per realizzare che potesse servire un articolo preparativo per analizzare le tecnologie in gioco. Esattamente quello che state leggendo ora.

Importante: nel testo che segue ho riportato tutte le unità di misura sempre e solo in bit, così da evitare la frequente confusione con in Byte.

PCI Express

Voglio evitare di fare un copia e incolla dalle pagine di Wikipedia, per cui non mi dilungherò con storia, date, differenze tecniche ed altre digressioni, concentrandomi principalmente su un aspetto: la velocità. Ad oggi la versione più recente già in commercio è la PCIe 3.0, ma è bene premettere fin da subito che il PCI-SIG ha ufficializzato le specifiche definitive della 4.0 e che inizieremo a vederla nel corso del 2018 – inizialmente era prevista per il 2017 e ci si aspettava già la ver. 5.0 nel 2019, ora pare che i tempi si dilateranno un bel po'. Comunque sia, le schede madri con i più recenti chipset Intel Z370/X299 e AMD X370/X399 offrono tutte connessione PCIe 3.0, la stessa utilizzata dalla totalità delle GPU di ultima generazione.

L'originale PCIe 1.0 gestiva fino a 2,5Gbps (bidirezionali) per lane ma una cospicua parte di questi (circa il 20%) venivano impiegati dalla codifica 8/10b, riducendo il totale teorico ad un più modesto 2Gbps. La PCIe 2.0 ha raddoppiato i numeri, portando la banda teorica a 5Gbps e quella disponibile a 4Gbps per lane. Il moltiplicatore di fianco alla sigla indica quante di queste "corsie" vengono utilizzate, per cui una connessione PCIe 2.0 x16 dialoga a 64Gbps effettivi (80 teorici). La PCIe 3.0 ha incrementato la banda per lane in misura minore, passando da 5 a 8Gbps, ma la codifica 128/130b ha consentito una migliore efficienza. Con una perdita limitata solo all'1,54%, una PCIe 3.0 x16 raggiunge circa 126Gbps effettivi. Per cui, conti alla mano, si è trattato di un ennesimo raddoppio della banda.

thunderbolt-display-27

Thunderbolt

Premiamo il pulsante avanti veloce per saltare i primi due step ed approdare direttamente sulla terza generazione di porta Thunderbolt. Il marketing ce la propone come soluzione ad ogni tipo di problema di connessione e non c'è dubbio che le sue potenzialità siano incredibili. Certo, siamo ancora lontani dalle meraviglie intraviste con la sua antenata Light Peak in fibra ottica, che già nel 2013 prometteva prossimi sviluppi fino a ben 1.6Tbps, ma evidentemente i costi non erano proponibili e l'intesa tra Intel ed Apple ci ha portato a questa soluzione implementabile fin da subito nel mercato e con diversi affinamenti tecnologici. La Thunderbolt è una porta multi standard che include al suo interno diversi protocolli, tra cui DisplayPort, USB e proprio il PCIe. La banda complessiva nella terza generazione è salita a 40Gbps (sempre bidirezionali), risultando di fatto la connessione cablata più veloce disponibile nei prodotti destinati al commercio generalista.

thunderbolt3-usage

Cosa si può fare con 40Gbps? Iniziamo col dire cosa non si può fare, ovvero allocare le risorse a proprio piacimento. Tanto per fare un esempio, la parte elettrica che gestisce lo scambio dati non andrà mai a saturare tutta la banda ma sarà limitata ad un massimo di 22Gbps in ambo i versi. Una componente molto importante sono gli schermi, in quanto se ne riescono a gestire due in 4K @ 60Hz (10 bit) avendo un residuo di 8Gbps per i dati oppure uno da 5K @ 60Hz (10 bit) con 18Gbps in eccesso... ovvero quelli che hanno consentito di mettere un hub di tre porte USB-C castrate (5Gbps) dietro il monitor LG Ultrafine 5K venduto da Apple. Sono sicuro che in pochi si fossero effettivamente fermati a fare queste considerazioni, io stesso non ci avevo perso molto tempo prima d'ora ma è interessante notare come, alla fine, i conti tornano sempre.

PCI-Express_4.0

Incroci tecnologici a suon di numeri

E se di conti vogliamo parlare, allora portiamo alla luce quello più importante, ovvero: 126 - 40 =  86, che sono i Gbps che mancano alla Thunderbolt 3 per offrire una connessione PCIe 3.0 completa. Della Thunderbolt 4 non si sa ancora nulla, qualcuno ipotizza che non verrà presentata prima del 2020, ma nel frattempo questo gap è destinato ad aumentare. Dopotutto se anche questa fosse disponibile oggi e proponesse un ulteriore raddoppio della banda a 80Gbps, sarebbe ancora distante 46Gbps dalla meta. Meta che, per giunta, si accinge a spostarsi ben più in là nell'imminente futuro, dato che la PCIe 4.0 porterà a 16Gbps ogni linea PCIe e la banda effettiva salirà a circa 252Gbps. Tanto per dire: se la Thunderbolt proseguisse davvero come è stato finora, con raddoppi ad ogni generazione, si potrebbe offrire una PCIe 4.0 completa solo con la Thunderbolt 6.

aorus-gtx-1070-gaming-box

Quindi le eGPU sono una sòla?

No, tutto sta nel capirne i limiti. La componente PCIe 3.0 della Thunderbolt 3 può arrivare a coprire fino a quattro linee, per un totale di 32Gbps dei 40 totali. In sostanza sarebbe l'equivalente di una PCIe 3.0 x4 visto che per la successiva x8 servirebbero 64Gbps. Se ci basassimo soltanto sulla banda, allora una scheda video PCIe 3.0 vedrebbe le sue performance ridotte al 25% del totale, ma per fortuna non è così. Non necessariamente le GPU sfruttano completamente i 126Gbps della PCIe 3.0 x16, anche se le installiamo su un slot fisico della scheda madre. Per assurdo, dunque, sono quelle più potenti a soffrire di più nell'uso come eGPU. Ciò non vuol dire che una RX 560 andrà meglio di una RX Vega 64, perché i numeri saranno sempre a vantaggio di quest'ultima anche se maggiormente castrata dal taglio di banda, tuttavia la prima offrirà un miglior rapporto tra spesa e mantenimento delle prestazioni. La stessa cosa vale in casa NVIDIA, dove una 1060 avrà una perdita ben inferiore a quella di una Titan X.

akitio-Node-Pro

Applicazioni pratiche

Pur consapevoli di tali limiti vi sono delle situazioni in cui una eGPU via Thunderbolt 3 può essere "consigliabile". È su questo aspetto che sto cercando di focalizzare la mia prossima recensione, ma non è semplicissimo trarre delle conclusioni oggettive – e non è neanche semplice trovare delle RX Vega a prezzi umani viste le assurde richieste dovute al mining di criptovalute. Di certo l'applicazione concreta più ragionevole è con i portatili senza GPU dedicata, ma considerando il taglio di prestazioni e la spesa, mi viene "il dubbio" che possa essere più produttivo assemblarsi una postazione desktop dedicata, con tutti i contro che si possono comunque immaginare (doppio computer, complessità nella condivisione dello storage, utilizzo di Windows e quant'altro vi venga in mente). Ad ogni modo è un settore che merita di essere esplorato e conosciuto, per questo motivo ho voluto pubblicare questo articolo di preparazione tecnica dedicato ai meno esperti prima dell'imminente recensione con test e numeri concreti.

Maurizio Natali

Titolare e caporedattore di SaggiaMente, è "in rete" da quando ancora non c'era, con un BBS nell'era dei dinosauri informatici. Nel 2009 ha creato questo sito nel tempo libero, ma ora richiede più tempo di quanto ne abbia da offrire. Profondo sostenitore delle giornate di 36 ore, influencer di sé stesso e guru nella pausa pranzo, da anni si abbronza solo con la luce del monitor. Fotografo e videografo per lavoro e passione, seguimi su Instagram