Es gibt nicht wenige, die die Vorzüge der FPGA-Technologie preisen, und viele Projekte haben diese Schaltkreise als endgültige Lösungen übernommen, aber es ist ein Fehler zu glauben, dass sie wie durch Zauberei funktionieren. Eines der besten Beispiele kommt von Dylan Barrie, einem Software-Ingenieur mit über zwei Jahrzehnten Erfahrung im Rendering. Sein ursprünglicher Plan war, einige Monate zu widmen und eine Art technische Demo zu erstellen, aber vier Jahre Arbeit haben ihn in eine vollständige Grafikkarte verwandelt, mit PCI-Express-Schnittstelle, Treibern für Windows und einer eigenen API. Der Name seiner Bestie ist FuryGpu, und sie kann Quake mit über 40 FPS ausführen...
Die Idee einer DIY-Grafikkarte ist nicht gerade neu. Wahrscheinlich erinnern sich einige unserer Leser an „Die schlechteste Grafikkarte der Welt“ erschaffen von Ben Eater, und an „Die einfachste der Welt“, eine Optimierung von George Foot.
Das Problem ist, dass der Übergang von einem Prototyp auf einem Breadboard zu einer vollständigen Karte eine immense Anstrengung erfordert, selbst mit jahrzehntelanger Erfahrung. So kommen wir zum Blog von Dylan Barrie, der sich nach seiner Spezialisierung als Software-Ingenieur auf Rendering dazu entschloss, sich in die Gewässer der Hardware zu begeben. Barrie hatte geplant, einige Monate diesem Projekt zu widmen, um „einen rotierenden Würfel zu erschaffen“ und dann aufzuhören, aber mit fast vier Jahren auf dem Buckel ist sein Ergebnis FuryGpu.
FuryGpu: Eine DIY-Grafikkarte, die unter Windows läuft und Quake ausführt
FuryGpu ist ein „GPU-auf-FPGA“, basierend auf dem Xilinx Zynq UltraScale+, mit einer Kernfrequenz von 400 MHz und 480 MHz in seiner Textureinheit. Es unterstützt ein vollständiges FP32-Frontend, lineare und bilineare Filter und verwendet eine PCI-Express-2.0-x4-Schnittstelle. Es gibt keine programmierbaren Shader, und anstatt auf konventionelle APIs wie Direct3D und Vulkan zu setzen, hat Barrie seine eigene Lösung geschaffen: FuryGL.
Das bedeutet, dass alle Spiele für die FuryGpu portiert werden müssen, etwas Schwieriges, aber nicht Unmögliches. Barrie musste SystemVerilog lernen und sich mit KiCad auseinandersetzen, gibt aber zu, dass der schmerzhafteste Teil des Projekts das Schreiben von mit Windows kompatiblen Videotreibern war. Leider hat er keine Details preisgegeben, aber es überrascht uns nicht, dass das Microsoft-Betriebssystem ein Hindernis darstellt (ganz zu schweigen davon, dass das Schreiben von Treibern in jedem Fall kompliziert ist).
Barries Absicht ist es, FuryGpu zu Open Source zu machen, aber er warnt, dass es keine zeitliche Begrenzung gibt. Am besten verfolgt man seinen Blog und seinen YouTube-Kanal, um weitere Neuigkeiten zu erhalten.
Offizielle Website von FuryGpu: Hier klicken
Dylan Barrie auf YouTube: Hier klicken