The Dawn of Nvidia's Technology

blog.dshr.org

188 points by wmf 4 days ago


Animats - 4 days ago

That's from the period when there was no standardization of how the CPU talked to the graphics device. Triangles or quads? Shared memory or command queues? DMA from the CPU side or the graphics device side? Graphics as part of the CPU/memory system or as part of the display system? Can the GPU cause page faults which are serviced by the virtual memory system?

Now we have Vulkan. Vulkan standardizes some things, but has a huge number of options because hardware design decisions are exposed at the Vulkan interface. You can transfer data from CPU to GPU via DMA or via shared memory. Memory can be mapped for bidirectional transfer, or for one-way transfer in either direction. Such transfers are slower than normal memory accesses. You can ask the GPU to read textures from CPU memory because GPU memory is full, which also carries a performance penalty. Or you can be on an "integrated graphics" machine where CPU and GPU share the same memory. Most hardware offers some, but not all, of those options.

This is why a lot of stuff still uses OpenGL, which hides all that.

(I spent a few years writing AutoCAD drivers for devices now best forgotten, and later trying to get 3D graphics to work on PCs in the 1990s. I got to see a lot of graphics boards best forgotten.)

mrandish - 4 days ago

This kind of retrospective from key people who were involved is invaluable from an historical perspective. I find hearing first-hand accounts of the context, assumptions, thought processes, internal debates, technical limitations, business realities and even dumb luck a good way to not only understand how we got here but how to do as well (or better) going forward.

While the nitty gritty detail of recollections captured when still fresh in memory can be fascinating, I especially appreciate reflections written a few decades later as it allows putting the outcomes of key decisions in perspective, as well as generally enabling more frank assessments thanks to fewer business and personal concerns.

jacobgorm - 4 days ago

I remember sitting next to David Rosenthal at a conference reception (must have been FAST, which makes sense given his involvement with LOCKSS) in San Jose some time around 2010 or 2011, not knowing up front who he was. He explained some of the innovations he had made at NVIDIA around making the hardware more modular and easier for parallel teams to work on, and we chatted about the rumors I had heard about SUN thinking about licensing the Amiga hardware, which he confirmed but said would have been a bad idea, because the hardware didn't support address space protection. I guess I didn't know enough about him or NVIDIA to be sufficiently impressed at the time, but he was a very friendly and down to earth person.

cadamsdotcom - 4 days ago

> all an application could do was to invoke methods on virtual objects .. the application could not know whether the object was implemented in hardware or in the resource manager's software. The flexibility to make this decision at any time was a huge advantage. As Kim quotes Michael Hara as saying:

> “This was the most brilliant thing on the planet. It was our secret sauce. If we missed a feature or a feature was broken, we could put it in the resource manager and it would work.”

Absolutely brilliant. Understand the strengths and weaknesses of your tech (slow/updateable software vs fast/frozen hardware) then design the product so a missed deadline won’t sink the company. A perfect combo of technically savvy management and clever engineering.

tiahura - 4 days ago

Talk by Erik Lindholm (now retired), on Riva 128 and many of the other early Nvidia cards: https://ubc.ca.panopto.com/Panopto/Pages/Viewer.aspx?id=880a...

pjmlp - 4 days ago

I wanted to buy a Voodoo card, and due to PCI incompatible version, had to trade it back for a Riva TNT.

Back then I was quite p***d not being able to keep the Voodoo, how little did I know how it was going to turn out.

artyom - 4 days ago

This reads as one of the many engineering marvel stories (e.g. Bell Labs, Xerox) where revolutionary technology is created by a combination of (a) clever engineers with enough "free" time, and (b) no clueless managers around.

killme2008 - 4 days ago

Really fascinating story—thanks for sharing! Graphics programming has been a major driving force behind the widespread adoption of object-oriented programming, and the abstraction of devices in this context is truly elegant.

Netcob - 4 days ago

Interesting that the bus bandwidth was such a bottleneck, when you could also argue it was VRAM. I never looked into why "Hardware transform&lighting" was introduced so late (I'm guessing it didn't fit on the die next to the rasterization stuff?), but I think hardware t&l combined with storing geometry in VRAM would have reduced bus usage to a minimum.

muziq - 3 days ago

Roundabout when NVIDIA breached 3T USD and ousted Apple from #1 spot: “That is a long way from Curtis Priem's kitchen table, a $2.5M A-round from Sutter Hill and Sequoia, and the NV1.”

hackyhacky - 4 days ago

> At a time when PC memory maxed out at 640 megabytes,

Pretty sure the author meant write 640 kilobytes.

rjsw - 4 days ago

I still have a NV1 card.

2OEH8eoCRo0 - 4 days ago

No mention of SGI.

DonHopkins - 3 days ago

Bruce Factor and Curtis Priem developed a flight simulator called Aviator for Sun's S-Bus GX graphics accelerator. I had one of them on my SS2, and owned a copy of Aviator on CDROM, and loved to play it.

It was one of the earliest Sun games distributed with a free playable demo that you could unlock by buying a license key. It would let you play for a minute or so and then the simulation would stop abruptly. That inspired me to do the same thing with SimCity for the Sun: you could play for a few minutes, then the simulator would switch to a cellular automata that would scramble your city, until you bought a license key to unlock it.

The GX was an 8-bit display, so it uses a 256 color palette, and drew shaded colors by halftone stippling. You can clearly see that in this video:

Aviator 1.5.1 running on SunOS 4.1.4 on a Sparcstation 20

https://www.youtube.com/watch?v=4RQscDJCy4c

Aviator had "aircraftcap" file in the format of (yech) a termcap file, that allowed you to configure your aircraft, and several fighter aircraft, small planes, and a 747 were included.

I heard a story about a fighter pilot who played Aviator, but he noticed something was wonky about how a plane he was familiar with flew. So he too a look at the aircraftcap file, and was able to find the problem, tweak it, and then it flew much more to his satisfaction!

You could dogfight over the network, and the sneaky thing to do was to hack your aircraftcap file to mount your guided missiles far behind you fighter jet, so when somebody was on your tail, you could shoot them in the ass!

Software in silicon: the methodology behind Sun's GX graphics accelerator architecture:

https://ieeexplore.ieee.org/document/63673

Sun GX Series Graphics Workstations:

https://old.hotchips.org/wp-content/uploads/hc_archives/hc01...

AVIATOR 1.5 FOR SUN NETWORKS OPENS UP GRAPHICS WORKSTATION GAMES MARKET (July 8 1991):

https://www.techmonitor.ai/hardware/aviator_15_for_sun_netwo...

SGI Users Group Forum: "Aviator" - a flight sim program for Sun GX - does anyone have this installed? Can anyone run it and get screenshots or video?

https://forums.sgi.sh/index.php?threads/aviator-a-flight-sim...

Vintage Computer Federation Forums: The "Aviator" flight sim for Sun GX hardware (e.g. SPARCstations)

https://forum.vcfed.org/index.php?threads/the-aviator-flight...

Reddit: A request to owners of Sun GX hardware such as SPARCstations: Can anyone post screenshots or footage from the late 80s/early 90s flight sim "Aviator"?

https://www.reddit.com/r/vintagecomputing/comments/y9zfhs/a_...

curtisszmania - 4 days ago

[dead]

trinsic2 - 4 days ago

I stopped reading right here:

> Because Nvidia became one of the most valuable companies in the world, there are now two books explaining its rise and extolling the genius of Jensen Huang,

Yeah, he's a real genius. (Sarcasm). He is a marking guy, there is no genius behind this man.

The fact that Nvidia uses its market position cause harm to the industry by strong-arming partners to toe the line makes this company a problem, just like all the others. They operate like any other predatory corporation.