View Full Version : Usare C++ direttamente sulle GPU per fare a meno delle CPU: l'idea di AMD
Redazione di Hardware Upg
12-12-2024, 13:11
Link alla notizia: https://www.hwupgrade.it/news/skvideo/usare-c++-direttamente-sulle-gpu-per-fare-a-meno-delle-cpu-l-idea-di-amd_133748.html
Joseph Huber di AMD ha illustrato durante una presentazione l'impegno dell'azienda verso l'esecuzione di codice C/C++ direttamente sulle GPU, senza doverlo adattare a nessun linguaggio specifico dei produttori di hardware.
Click sul link per visualizzare la notizia.
matsnake86
12-12-2024, 13:17
La cpu insomma fa sempre di meno. Se continuiamo così tra un po si occuperà esclusivamente di eseguire il boot e poi consegnerà il sistema nelle mani del gpu...
A sto punto abbandoniamo completamente il paradigma del pc a cui siamo abituati e passiamo tutti ad un soc in stile apple .
Max Power
12-12-2024, 13:29
e passiamo tutti ad un soc in stile apple .
Anche no :asd:
La cpu insomma fa sempre di meno. Se continuiamo così tra un po si occuperà esclusivamente di eseguire il boot e poi consegnerà il sistema nelle mani del gpu...
Il codice sorgente C++ ricompilato per GPU di quelle attualmente sul mercato, viene eseguito in modo relativamente efficiente solo se si tratta di un sorgente che si presta ad essere vettorizzato in modo massiccio, in tutti gli altri casi viene eseguito in modo più effciente su una CPU.
Scusate, non sono programmatore quindi non entro nel merito..
ma da quello che so io non è che è così facile ed immediato tutto questo, le CPU sono fatte in un modo ed hanno un certo set di istruzioni.. le GPU sono fatte in tutt'altro modo e soprattutto hanno un set di struzioni ben diverso e limitato rispetto ad una CPU.
Quindi non è che puoi prednere una GPU e fargli fare roba da CPU come fosse acqua fresca perchè sarebbe come decidere di andare a fare una gita domenicale usando una mietitrebbia al posto della Golf.
..puoi tecnicamente farlo.. ma non vuol dire che sia una buona idea.
Riky1979
12-12-2024, 14:12
Mi ricordo che non molto tempo fa era uscito l'articolo di un team di ricerca che voleva sviluppare un processore RiscV "universale" in grado di eseguire sia le istruzioni tipiche delle CPU che quelle delle GPU senza una specializzazione del chip come avviene oggi.
Penso che questo sarebbe più innovativo ed importante che quanto presentato da AMD ed in entrambe i casi non è scontato che siano le soluzioni più efficienti.
Con GPU già energivore allo stato attuale se spostiamo ancora lavoro dalla CPU alla GPU non rischiamo di sovraccaricarla di lavoro e quindi mantenerla sempre in uso 100%?
Mi ricordo che non molto tempo fa era uscito l'articolo di un team di ricerca che voleva sviluppare un processore RiscV "universale" in grado di eseguire sia le istruzioni tipiche delle CPU che quelle delle GPU senza una specializzazione del chip come avviene oggi.
Penso che questo sarebbe più innovativo ed importante che quanto presentato da AMD ed in entrambe i casi non è scontato che siano le soluzioni più efficienti.
Con GPU già energivore allo stato attuale se spostiamo ancora lavoro dalla CPU alla GPU non rischiamo di sovraccaricarla di lavoro e quindi mantenerla sempre in uso 100%?
Si, ricordo la news, non è di molto tempo fa.
Io concedo il beneficio del dubbio e attendo una prova concreta visto che si parla di una pura idea e nulla di neanche vicino a qualcosa di concreto.. TUTTAVIA già ho messo le mani avanti bollando la cosa come fuffa.. va bene tutto ma non è che gli altri sono tutti scemi eh.
Si fanno il culo per avere CPU e GPU specializzate per ottenere il top in specifici settori con la massima efficienza possibile.. e ti pare che mo arriva il genio della lampada col chip tuttofare che sbaraglia tutti? Anche no direi.
bancodeipugni
12-12-2024, 15:08
infatti: non esisteva già da tempo sta cosa fin dai tempi del calcolo distribuito ?
Si, ricordo la news, non è di molto tempo fa.
Io concedo il beneficio del dubbio e attendo una prova concreta visto che si parla di una pura idea e nulla di neanche vicino a qualcosa di concreto.. TUTTAVIA già ho messo le mani avanti bollando la cosa come fuffa.. va bene tutto ma non è che gli altri sono tutti scemi eh.
Si fanno il culo per avere CPU e GPU specializzate per ottenere il top in specifici settori con la massima efficienza possibile.. e ti pare che mo arriva il genio della lampada col chip tuttofare che sbaraglia tutti? Anche no direi.
Esatto
Ma poi basta vedere Intel, non è proprio l ultima arrivata, eppure con le GPU fa molta fatica.
Evidentemente a parole è bello, ma poi nella pratica realizzare una CPU-GPU non è proprio roba da tutti
WOPR@Norad
12-12-2024, 18:22
La cpu insomma fa sempre di meno. Se continuiamo così tra un po si occuperà esclusivamente di eseguire il boot e poi consegnerà il sistema nelle mani del gpu...
A sto punto abbandoniamo completamente il paradigma del pc a cui siamo abituati e passiamo tutti ad un soc in stile apple .
Facendo una veloce analisi di mercato credo che i computer senza GPU siano la stragrande maggioranza.
Facendo una veloce analisi di mercato credo che i computer senza GPU siano la stragrande maggioranza.
beh no.
Con GPU integrata casomai.. ;)
Oramai viviamo in un mondo in cui le informazioni sono messe in circolo sul web, rimanipolate in continuazione e spesso accade che certe informazioni che apparentemente risultano essere delle novità in realtà non lo sono
Da Windows Vista in poi Microsoft si è mossa con i suoi Windows proprio nella direzione di togliere carico elaborativo alla CPU per assegnarlo alla scheda grafica e assegnare il carico elaborativo dei flussi audio ai processori audio (APU)
Oggi in un PC con sistema operativo Microsoft Windows, il processore cioè la CPU non si occupa affatto della grafica dell'interfaccia di Windows stesso (GUI), questa è un fardello che è oramai totalmente a carico della scheda grafica e quindi della GPU
Inoltre molte applicazioni grafiche assegnano parte del carico elaborativo alla scheda grafica (GPU) per esempio le applicazioni di grafica raster 2D (si pensi a Photoshop), quelle di grafica vettoriale 2D (si pensi ad Illustrator, softwares CAD), quelle di grafica 3D (Softwares CAD 3D, Blender, 3D Studio Max, Maya, Rinoceros ...) per non parlare dei player multimediali e dei software di montaggio video che delegano alla scheda grafica l'intera codifica e decodifica video (Premier Pro, Da Vinci Resolve, Pinnacle Studio ...)
In Microsoft Windows è possibile sfruttare addirittura anche due GPU contemporaneamente, per esempio quella integrata nel processore e quella della scheda grafica su slot PCI Express, non ci credete? rovistate nelle impostazioni di Windows 11 scoprirete che potete assegnare ad ogni applicazione installata nel PC quale GPU sfruttare ...
E se tutto questo non basta aggiungeteci anche le schede audio il cui processore audio (APU) si fanno carico di elaborare i flussi audio sollevando la CPU da questo fardello
paolo.oliva2
13-12-2024, 09:13
Per me bisogna guardare la cosa sia dal punto di vista tecnico che dal punto di vista money e fare le opportune valutazioni.
Esempio, se si parla di codifica video, per velocità di elaborazione e per efficienza, la VGA stravince sulla CPU, però la CPU comprime di più a parità di dimensione file.
Secondo me, quello che manca realmente oggi, o comunque non è stato affinato ancora, è la coesione dell'intero sistema... e per me sarebbe possibile se la cosa fosse a basso livello (hardware, a mo' di TH director) e non esclusiva del software.
L'avere esempio un APU, iGPU, CPU X86 e NPU, che a seconda dell'istruzione da elaborare, la indirizza dove meglio sarebbe elaborata. Se la cosa funziona (e perchè non dovrebbe funzionare?) poi sarà chi progetta la CPU a implementare tutto ciò che serve.
Per fare un esempio... Strix Halo APU prox sarà X16 + 40CU. Cosa è? Un X16, quindi molta prestazione lato X86, e 40CU sono si una bomba per un APU ma non per una discreta. Una implementazione come sopra, forse meglio X12 ma 60CU, oppure X4 Zen + X4 ZenC + 80CU... magari con una L4 interna con la condivisione indirizzi CPU/VGA.
Mi ricordo che non molto tempo fa era uscito l'articolo di un team di ricerca che voleva sviluppare un processore RiscV "universale" in grado di eseguire sia le istruzioni tipiche delle CPU che quelle delle GPU senza una specializzazione del chip come avviene oggi.
Qualche decina di anni fa' i calcoli con i numeri in virgola mobile, venivano eseguiti dalla CPU. I piu' esigenti pero' potevano comprare il coprocessore matematico, molto piu' veloce ad eseguire calcoli in virgola mobile.
In seguito il coprocessore matematico e' sparito. Apparentemente. Di fatto esiste ancora, solo che si trova dentro il chip della CPU.
La stessa cosa potrebbe avvenire con la GPU. Bisogna vedere i vantaggi/svantaggi, di avere un unico chip con CPU+GPU.
Qualche decina di anni fa' i calcoli con i numeri in virgola mobile, venivano eseguiti dalla CPU. I piu' esigenti pero' potevano comprare il coprocessore matematico, molto piu' veloce ad eseguire calcoli in virgola mobile.
In seguito il coprocessore matematico e' sparito. Apparentemente. Di fatto esiste ancora, solo che si trova dentro il chip della CPU.
La stessa cosa potrebbe avvenire con la GPU. Bisogna vedere i vantaggi/svantaggi, di avere un unico chip con CPU+GPU.
Sono anni che Intel e AMD producono chip con integrata la CPU+GPU
e' strano pero' che un idea del genere viene da AMD, il mercato GPU e' quasi totalmente in mano a Nvidia, era piu' scontato se un idea del genere veniva da quest'ultimo
sembra piu' un suicidio, Amd vuole chiudere o svalutare la divisione CPU, che e' l'unica che va a gonfie vele, per consegnare tutto al suo concorrente:confused:
e' strano pero' che un idea del genere viene da AMD, il mercato GPU e' quasi totalmente in mano a Nvidia, era piu' scontato se un idea del genere veniva da quest'ultimo
sembra piu' un suicidio, Amd vuole chiudere o svalutare la divisione CPU, che e' l'unica che va a gonfie vele, per consegnare tutto al suo concorrente:confused:
La toolchain LLVM+Clang per GPU (Low Level Virtual Machine, niente a che vedere con i LLM) non è portata avanti solo da AMD
Inoltre al momento AMD ha buoni prodotti come CPU, GPU e CPU-GPU per consumer, server e per supercomputing (supercomputing generico, non orientato ai LLM) ma ha praticamente le briciole per quel che riguarda Cloud AI (saldamente in mano ad NVidia)
ed uno dei motivi è che il grosso del software per LLM usa CUDA (un dialetto C/C++ pensatyo ad hoc per le GPU Nvidia).
Poter sviluppare in codice C++ "generico" che poi può girare sia su CPU che su GPU permetterebbe ad AMD ed altri di ridurre uno dei vantaggi che ha NVidia nei loro confronti.
Del resto anche Tenstorrent (che usa una architettura di calcolo radicalmente diversa sia da NVidia che da AMD) si appoggia su LLVM proprio per facilitare il porting del software sui suoi sistemi di calcolo.
vBulletin® v3.6.4, Copyright ©2000-2025, Jelsoft Enterprises Ltd.