Self-taught hardware engineer discovers that GPUs really are ridiculously complex and hard to design after all-

Anyone who has studied electrical engineering will know that with the right tools, know-how, and a lot of perseverance, it’s possible to design a basic CPU from scratch. It won’t be anything like today’s processors, of course, but what about GPUs? Surely they can’t be any different, yes? Well, one determined software engineer decided to do just that but found out that it’s much harder than you’d think.

Adam Majmudar has been chronicling his trials and tribulations on Twitter (via Tom’s Hardware), having first started with learning the fundamentals behind central processor architecture, before moving on to creating a complete CPU. It’s obviously nothing like the chips you can buy for your gaming PC and it reminds me a lot of basic 4-bit processors I learned to design many decades ago.

Modern software packages and hardware description languages simplify the process quite a bit, but it’s still a mighty challenge.

Flushed with success, Majmudar then decided it was time to do the same with a GPU. After all, the basic structure of a shader unit is nothing more than an arithmetic logic unit, with some registers to store data, another unit to load and store said data, and something to manage the whole process of doing an operation.

The engineer rapidly realised that while CPUs and GPUs do share a lot of common aspects, the latter are very different in how they use memory and manage threads. It’s also worth noting that Majmudar wasn’t aiming to make a ‘graphics’ GPU but rather a GPGPU—in other words, he wasn’t designing systems like triangle setup, TMUs, ROPs, or any of the numerous fixed function circuits that the chips in graphics cards have.

But, to his credit, his basic GPU design ultimately worked after solving a number of issues with the help of others and was able to run a small number of instructions and crunch through some matrix calculations in software simulation. His CPU and GPU designs will get put into a physical form via the Tiny Tapeout project.

The best part about Majmudar’s work is that he’s shared the whole project on Github, to have a resource that anyone can use if they want to know more about how a GPU works in the depths of its hardware.

Anyone can learn to program a GPU, simply because all of the necessary tools are readily available online, along with a raft of tutorials and exercises to follow. Learning how to design a shader unit at a transistor level is a different thing entirely, as none of the big three chip makers (AMD, Intel, Nvidia) share such information publicly.

Now, if you’ll excuse me, I’m off to design a GPU with 100,000 shaders. Wonder what name I should sell it under—Raforce? Gedeon? Knowing my skills, GeFarce will be more appropriate, I think.

Related Posts

PSU scrips bear brunt of record fall

Shares of state-owned companies bore the brunt of the uncertainty around election results on Tuesday as vote counting showed a slim victory margin for the BJP-led NDA…

Realty Firm Kalpataru files Rs 1,590 crore IPO draft papers to SEBI to reduce debt

Mumbai-based real estate company Kalpataru has filed a draft red herring prospectus (DRHP) with the Securities and Exchange Board of India (SEBI) to launch an initial public…

Share Market Highlight- Markets end higher! Nifty closes below 21,500, Sensex above 71,050; Media and Metal stocks gains

Share Market News Today | Sensex, Nifty, Share Prices Highlights: The benchmark equity indices closed in the positive territory. The NSE Nifty 50 closed 215.15 points or…

Sebi asks brokers to inform most important terms and conditions to clients

For ease of understanding, capital markets regulator Sebi on Monday asked brokers to inform a standard “most important terms and conditions” to the clients, which will be…

Street Fighter 6 For PC Is Nearly 50% Off Today, Comes With Free Game

Street Fighter 6 is one of the best fighting games in recent memory and one of 2023’s standout games in general. It garnered stellar reviews from fans…

The Best Fortnite Merch In 2022

Fortnite continues to be one of the most popular games in the world. Since launching in 2017, the battle royale has seen no shortage of wild collaborations,…