New open source GPU is free to all — FuryGPU runs Quake at 60fps, supports modern Windows software
FuryGPU is currently capable of running Quake at 720p and 60fps.
An open source fully custom GPU has come out of stealth after four years in development. FuryGPU has been a one-man effort from games software developer Dylan Barrie, who says he put together this extremely complex hardware and software project in his spare time. FuryGPU is based on a Xilinx FPGA design, and the prototype PCIe graphics card is currently capable of achieving around 44fps in the Quake Timedemo. The work on FuryGPU was undertaken after Barrie was inspired by Ben Eater’s building a programmable 8-bit computer from scratch project.
As you can see from the pictures in this article, FuryGPU looks very much like a typical PC graphics card from about 20 years ago, modernized by equipping DisplayPort and HDMI outputs. The project is far more than the hardware, though, with Barrie admitting that the most painful aspect of this graphics card’s design was creating the Windows drivers.
Hardware, from maker board to graphics card
Barrie began realizing his dreams of building a GPU from scratch after picking up an FPGA-packing Arty Z7 development board and doing some preliminary development and testing. Subsequently, the project got a boost by the debut of Xilinx Kria System-on-Modules (SoMs), which combine “insanely cheap Zynq UltraScale+ FPGAs with a ton of DSP units and a (comparatively) massive amount of LUTs and FFs, and of particular interest, a hardened PCIe core,” enthused Barrie.
To go from this maker board to the FuryGPU PCIe add-in-card design we see in 2024, Barrie taught himself the SystemVerilog hardware description and hardware verification language and the KiCAD EDA / electronics CAD software suite. He says a Herculean effort was required to design the schematic for the FuryGPU with the 4-lane PCIe we see today, even with the FPGA circuitry built into the SoM. Now it was time to plug the FuryGPU into his test rig, write the drivers, and test games.
Windows drivers and Quake at 60fps
Creating the Windows drivers for FuryGPU is described by Barrie as “the most painful” aspect of the entire project – despite his day job being in the software side of graphics rendering in the games development industry for the last 14 years.
Initially, the FuryGPU maker’s ambition was to put together a simple spinning cube demo, to show the GPU working. However, as the project developed, playing the iconic PC game Quake at playable frame rates started to become the new goal.
Barrie explains that after getting the Windows drivers ready, he wrote a custom graphics API to communicate with the GPU, wrote Windows kernel drivers for the display and audio, and now has “a fully-functional piece of graphics hardware that can render Quake at a solid 60 frames per second.”
Stay On the Cutting Edge: Get the Tom's Hardware Newsletter
Get Tom's Hardware's best news and in-depth reviews, straight to your inbox.
We’ve embedded Barrie’s Quake Timedemo video capture, demonstrating that the FuryGPU could achieve 44fps in this benchmark at 720p about a month ago. The developer says there are clear opportunities to get Quake “running much faster,” as he saw some obvious bottlenecks that he will target for optimization efforts.
The FuryGPU is set to be open-sourced. “I am intending on open-sourcing the entire stack (PCB schematic/layout, all the HDL, Windows WDDM drivers, API runtime drivers, and Quake ported to use the API) at some point, but there are a number of legal issues,” Barrie wrote in a Hacker News post on Wednesday. Because he works in a tangentially related vocation, he wants to make sure none of this work would break his work contract or licensing etc. This same thread includes quite a bit of extra detail about the FuryGPU project for those particularly interested.
On the FuryGPU website, there is an article dedicated to the GPU’s texture units, for those wishing to take a deeper dive into the architecture.
To conclude our coverage of this interesting new (to us) project, it is worth explaining the intended scope of the FuryGPU project. It is clear this is a maker project, like the breadboard CPU, but the FuryGPU offers such impressive performance that some may mistake it for a serious new GPU architecture. Barrie makes it clear this is not the case in the afore-linked Hacker News thread (writing under the nom de plume of PfhorSlayer). “This is a toy,” asserted the FuryGPU maker. "This is not going to change the GPU landscape or compete with any of the commercial players.”
Even though the FuryGPU (or its offspring) may never make our chart of the best graphics cards, we will watch FuryGPU developments with great interest. Now that the project has gone public, there’s a chance that publicity and expert collaborators can accelerate the plans already in place.
Mark Tyson is a news editor at Tom's Hardware. He enjoys covering the full breadth of PC tech; from business and semiconductor design to products approaching the edge of reason.
-
TechLurker Would be kind of neat if this results in a collaborative effort to make and maintain a functional low-to-mid-range, open-source GPU, funded in batches similar to Massdrop or Indiegogo, and refined and maintained by the open-source community at large. Then we can see if the open-source community can get better drivers and stability out faster than AMD or Intel.Reply
Yeah, I know it's not intended to be a serious project, but with new rivals like Intel and Moore's Threads entering the legacy space, it'd be neat to see yet another entrant even if they only ever target the low-middle end. Maybe those dedicated Voodoo GPU fans who make limited batches of the last planned Voodoo card using salvaged chips from previous-gen Voodoo cards could utilize this to make new Voodoo GPUs from the ground-up as part of their continuing passion project. -
passivecool This reminds me...Reply
when i was a kid, i remember reading a book (probably a fictional story funded by Colgate) about some kids who decided it was cheaper to make their own toothpaste. The story continues with their exploration of economics and economy of scale (don't ask me why i thought this was interesting when i was 13, about 100 years ago)
those 100 years later, there are many DIY toothpaste recipes on the web. And it seems there will soon be GPU recipes as well. Except, unfortunately, by the time the fruit is ripe, equivalent GPU will be CPU embedded everywhere. But CUDOS and respect to the developer!! the world needs fewer politicians and more nerds who do stuff because they want to try it out. -
Eximo
Using an FPGA for a GPU is never going to be cheap enough to be viable for any low to mid range contemporary card. Maybe a mid-range card from 15 years ago.TechLurker said:Would be kind of neat if this results in a collaborative effort to make and maintain a functional low-to-mid-range, open-source GPU, funded in batches similar to Massdrop or Indiegogo, and refined and maintained by the open-source community at large. Then we can see if the open-source community can get better drivers and stability out faster than AMD or Intel.
Yeah, I know it's not intended to be a serious project, but with new rivals like Intel and Moore's Threads entering the legacy space, it'd be neat to see yet another entrant even if they only ever target the low-middle end. Maybe those dedicated Voodoo GPU fans who make limited batches of the last planned Voodoo card using salvaged chips from previous-gen Voodoo cards could utilize this to make new Voodoo GPUs from the ground-up as part of their continuing passion project.
As you say the fully recreating a 3DFX chip is an option. Though we have gotten to the point where emulating an entire Voodoo card is viable, so the market would be quite small.
Though I will point out that many of those new voodoos are actually using new old stock GPUs that were already produced. There are still trays of them available and they were used in more than just expansion card GPUs, many arcade machines used integrated 3DFX chips. Memory chips seems to be the most harvested components if I remember correctly. -
bit_user If he's using an API that's non-standard (i.e. not OpenGL, Direct3D, or Vulkan), I wonder how much more work it would've been to implement the old 3dfx GLiDE API, and how many games out there it would then potentially be able to run.Reply -
Eximo Now I want to fire up my Voodoo 5 5500 just to see if it still works. Might need capacitors at this point.Reply -
Speeddymon
The story was required reading in my school. I remember reading it too. The kids made it in baby food jars and ended up on TV in the story.passivecool said:This reminds me...
when i was a kid, i remember reading a book (probably a fictional story funded by Colgate) about some kids who decided it was cheaper to make their own toothpaste. The story continues with their exploration of economics and economy of scale (don't ask me why i thought this was interesting when i was 13, about 100 years ago)
those 100 years later, there are many DIY toothpaste recipes on the web. And it seems there will soon be GPU recipes as well. Except, unfortunately, by the time the fruit is ripe, equivalent GPU will be CPU embedded everywhere. But CUDOS and respect to the developer!! the world needs fewer politicians and more nerds who do stuff because they want to try it out. -
thisisaname
The project is far more than the hardware, though, with Barrie admitting that the most painful aspect of this graphics card’s design was creating the Windows drivers.
Aye just ask Intel and AMD now easy drivers are to write. -
coolestcarl
This is why Nvidia has more software engineers than hardware engineers. Which is absolutely why their drivers are better (they are just better resourced in this crucial area) and they have such a big gap to the competition when it comes to the corporate space. Their driver integration teams are second to none at the moment.thisisaname said:Aye just ask Intel and AMD now easy drivers are to write. -
bit_user I just noticed that he called it "Fury GPU". He really should've found another name for it, since it's too easily confused with AMD's Radeon R9 Fury.Reply
https://www.anandtech.com/show/9421/the-amd-radeon-r9-fury-review-feat-sapphire-asus -
NinoPino Impressive work in all aspects, one man, spare time, no hardware experience and so quick to complete the job.Reply