FuryGPU: un appassionato ha creato da zero una GPU open source. Funziona!

FuryGPU: un appassionato ha creato da zero una GPU open source. Funziona!

Dopo quattro anni di sviluppo, un appassionato ha completato un suo particolare progetto: creare una GPU da zero. FuryGPU, basata su un FPGA Xilinx, funziona e può gestire giochi degli anni '90 come Quake con un buon frame rate.

di pubblicata il , alle 08:11 nel canale Schede Video
 

Quattro anni fa Dylan Barrie, uno sviluppatore di videogiochi e appassionato di hardware, decise di imbarcarsi in un'impresa epica: creare da zero una GPU funzionante nel tempo libero.

Un impegno che, lo stesso Barrie, ha definito "infernale", ma che dopo quattro anni ha portato a termine dando finalmente "dando alla luce" FuryGPU. Dietro a quella che sembra una scheda video degli anni '90 c'è un progetto basato su un FPGA Xilinx Zynq UltraScale+, posto su un un PCB personalizzato con interfaccia PCIe.

Se il look ci ricorda schede video come le GeForce 4 o la Radeon 8500, anche le capacità hardware di FuryGPU strizzano l'occhio ai tempi che furono: la scheda video supporta funzionalità hardware equivalenti a una scheda grafica "high-end" della metà degli anni '90, con uno stack completo di software e driver per le moderne versioni di Windows.

La GPU può eseguire il rendering dei giochi di quell'epoca con frame rate giocabili in tempo reale. Per esempio, FuryGPU riproduce Quake - sì, quello del 1996 - con un frame rate solido a 720p che migliora ottimizzazione dopo ottimizzazione, dai 44 fps registrati nella Timedemo ai 60 fps stabili ottenuti in seguito.

L'appassionato, pronto a pubblicare schemi, software e driver tramite licenza open source, ha deciso di costruire un chip grafico da zero perché non conosceva i "dettagli effettivi" di come funzionano le GPU. Avendo estrema familiarità con il processo di rendering 3D lato software, Barrie ha maturato la convinzione che progettare una GPU poteva essere un progetto personale realizzabile, anche se complesso.

Ha trascorso "innumerevoli ore" a imparare come funzionano gli FPGA e come approntare progetti di chip tramite descrizione hardware, la verifica e il linguaggio di implementazione SystemVerilog. E se progettare la scheda è stato uno "sforzo erculeo", scrivere i driver per Windows è stato un compito ancora più "doloroso".

Lo sviluppatore ha scritto una API grafica personalizzata per comunicare con la GPU e ha creato driver per il kernel Windows in modo da gestire i segnali video e audio.

Barrie ha intenzione di diffondere maggiori dettagli sul processo di creazione della GPU sul suo blog, dove ha iniziato a parlare delle Texture Unit. Inoltre, punta a ottimizzare la sua versione personalizzata di Quake per farla girare ancora più velocemente su FuryGPU.

Meno chiara l'identità di Dylan Barrie, anche se su LinkedIn c'è un Lead Graphics Programmer di Respawn Entertainment (Star Wars Jedi: Survivor, ecc.) che sembra corrispondere perfettamente al profilo dell'appassionato.

22 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - info
Saturn29 Marzo 2024, 08:45 #1
Grande ! É veramente un piacere leggere e commentare queste notizie !

Hai detto niente riuscire a tirar da solo su una gpu che riesce a muovere mostri sacri come il primo Quake !
io78bis29 Marzo 2024, 09:23 #2
Grande

Ottimo anche il fatto che abbia deciso in qualche modo di diffondere le conoscenze apprese e magari anche gli ostacoli che ha dovuto superare.
Opteranium29 Marzo 2024, 09:24 #3
questo lo recluterei tempo zero se fossi un'azienda..!
Therinai29 Marzo 2024, 09:32 #4
Mah, sono un po' perplesso, sto tizio si sta sbattendo tanto per fare qualche frame in più con quake quando basterebbe usare la mod del frame generator per triplicarli
UtenteHD29 Marzo 2024, 09:53 #5
Che impresa epica, e' ancora piu' incredibile che a quanto letto per l'hardware e' partito da zero ed ha imparato tutto strada facendo, il tempo impiegato di 4 anni sembra ancora piu' miracoloso.
Incredibile.
alien32129 Marzo 2024, 10:00 #6
Grande rispetto, anche solo per imparare a programmare un chip FPGA ci vuole coraggio, specialmente partendo da 0 o quasi.
supertigrotto29 Marzo 2024, 10:24 #7
Gli fpga da quel che dicono,sono ostici da programmare
Totix9229 Marzo 2024, 10:30 #8
Veramente notevole, sviluppare da soli una GPU funzionante, questo tizio è un genio, fossi in AMD o Nvidia lo assumerei all'istante.
demon7729 Marzo 2024, 10:33 #9

questo ha fatto un lavoro mostruoso. Ma mostruoso veramente.
..nel "TEMPO LIBERO".. me cojoni.

Come dire che di lavoro faccio il carpentiere in falegnameria ma nel tempo libero sto scavando il monte bianco a mani nude per fare una galleria a 4 corsie di marcia.
cignox129 Marzo 2024, 11:03 #10
--Mah, sono un po' perplesso, sto tizio si sta sbattendo tanto per fare qualche frame in più con quake quando basterebbe usare la mod del frame generator per triplicarli

Sei serio? Non credo...

Complimenti al tizio in questione. Lavoro immenso, spero gli frutti qualcosa, ad esempio un lavoro ben pagato che gli piaccia fare.

Devi effettuare il login per poter commentare
Se non sei ancora registrato, puoi farlo attraverso questo form.
Se sei già registrato e loggato nel sito, puoi inserire il tuo commento.
Si tenga presente quanto letto nel regolamento, nel rispetto del "quieto vivere".

La discussione è consultabile anche qui, sul forum.
 
^