[HN Gopher] The Dawn of Nvidia's Technology
       ___________________________________________________________________
        
       The Dawn of Nvidia's Technology
        
       Author : wmf
       Score  : 174 points
       Date   : 2025-05-20 17:04 UTC (1 days ago)
        
 (HTM) web link (blog.dshr.org)
 (TXT) w3m dump (blog.dshr.org)
        
       | pjmlp wrote:
       | 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.
        
         | stewarts wrote:
         | We hold you singularly responsible for the eventual failure of
         | the Voodoo3/4/5 and Nvidia domination.
        
           | pjmlp wrote:
           | Sorry.... :)
        
         | ahartmetz wrote:
         | I had a Riva TNT at the time, and a friend's Voodoo... 2? sure
         | ran Half-Life better than my card. The Voodoo 2 probably really
         | was the better GPU at the time. Later games required later APIs
         | (unsupported by older cards) - and much higher performance -
         | anyway, so longevity was not much either way.
        
       | 2OEH8eoCRo0 wrote:
       | No mention of SGI.
        
         | wmf wrote:
         | AFAIK the SGI-Nvidia connection was after DSHR's time.
        
         | jandrese wrote:
         | I thought the majority of SGI's contribution was braindead
         | management decisions that caused the good engineers to leave
         | and form nVidia.
        
       | rjsw wrote:
       | I still have a NV1 card.
        
         | christkv wrote:
         | Me too i also have a rendition verite card which i guess in
         | some ways is the first real fully programmable consumer gpu as
         | it has a risc processor.
        
           | rjsw wrote:
           | I also have an even older NEC ISA card with a TI TMS34010
           | chip [1], that was a programmable CPU/GPU.
           | 
           | [1] https://en.wikipedia.org/wiki/TMS34010
        
             | christkv wrote:
             | Oh yeah I remember those but did they ever get used for any
             | games on the PC platform? I know they were used in multiple
             | arcade machines.
        
       | mrandish wrote:
       | 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.
        
         | rhdjsjebshjffn wrote:
         | I'm excited about this too, but it's a little concerning
         | there's a brand in the title. There's no shortage of those from
         | ati, intel, amd, apple, ibm, the game gaggle, etc to interview.
         | The fact that nvidia succeeded where others failed is largely
         | an artifact of luck.
        
           | jjtheblunt wrote:
           | Nvidia's Cg language made developers prefer their hardware,
           | I'd say.
        
             | pjmlp wrote:
             | Which influenced HLSL, with their close collaboration with
             | Microsoft on DirectX.
        
           | mrandish wrote:
           | > largely an artifact of luck.
           | 
           | I disagree with "largely". Luck is _always_ a factor in
           | business success and there are certainly some notable
           | examples where luck was, arguably, a big enough factor that
           | "largely" would apply - like Broadcast.com's sale to Yahoo
           | right at the peak of the .com bubble. However, I'm not aware
           | of evidence luck was any more of a factor in NVidia's success
           | than the ambient environmental constant it always is for
           | every business. Luck is like the wind in competitive sailing
           | - it impacts everyone, sometimes positively, sometimes
           | negatively.
           | 
           | Achieving and then sustaining substantial success over the
           | long run requires making a lot of choices correctly as well
           | as top notch execution. The key is doing all of that so
           | consistently and repeatedly that you survive long enough for
           | the good and bad luck to cancel each other out. NVidia now
           | has over 30 years of history through multiple industry-wide
           | booms, downturns and fundamental technology transitions - a
           | consistent track record of substantial, sustained success so
           | long that good luck can't plausibly be a significant factor.
           | 
           | That said, to me, this article didn't try to explain NVidia's
           | long-term business success. It focused on a few key
           | architectural decisions made early on which were, arguably,
           | quite risky in that they could have wasted a lot of
           | development on capabilities which didn't end up mattering.
           | However, they did end up paying off and, to me, the valuable
           | insight was that key team members came from a different
           | background than their competitors and their experiences with
           | multi-user, multi-tasking, virtualized mini and mainframe
           | architectures caused them to believe desktop architectures
           | would evolve in that direction sooner rather than later. The
           | takeaway being akin to "skate to where the puck is going, not
           | where it is." In rapidly evolving tech environments, making
           | such predictions is greatly improved when the team has both
           | breadth and depth of experience in relevant domains.
        
           | voidspark wrote:
           | Concerned about a "brand in the title"? What do you expect?
           | 
           | The author is David Rosenthal, who was employee #4 at Nvidia
           | (Chief Scientist).
           | 
           | He's not some random historian or interviewer. That's his
           | life experience.
        
           | jandrese wrote:
           | I would say nVidia made their own luck. A lot of their
           | success can be attributed to their management never losing
           | sight of the fact that the software is just as important as
           | the hardware. Both drivers and CUDA are key to nVidia's
           | success. ATI and nVidia would trade places on quality of
           | hardware, but there was never a question on the software
           | side.
        
             | rhdjsjebshjffn wrote:
             | I'm not sure how nvidia's driver track record would have
             | _helped_ them, but drivers nor linux nor software in any
             | way has ever really been nvidia 's strong-suit. but even
             | with the popularity of it CUDA cannot explain nvidia's
             | success alone; you also need the demand of butcoin and the
             | secondary-but-farcical imitation of LLMs but also the
             | inexplicable lack of awareness of alternatives that need
             | explaining...
        
               | BobbyJo wrote:
               | I worked on CUDA and OpenCL in the 2010-2014 timeframe,
               | well before buttcoin and LLMs were profit centers, and
               | Nvidia was already well ahead in the "GPUs as general
               | compute" area. Literally everyone doing highly parallel
               | HPC wanted to use Nvidia, despite AMD having higher
               | throughout for some workloads. It was better, easier to
               | use software.
        
               | WJW wrote:
               | I'll add to that: even though it is true that "drivers
               | nor linux nor software in any way has ever really been
               | nvidia's strong-suit", as GP put it, their software was
               | _still_ miles ahead of its competitors. In the land of
               | the blind a one-eyed man is king, and all that.
        
               | MichaelZuo wrote:
               | I definitely recall Nvidia cards were consistently priced
               | higher than AMD cards of the equivalent hardware as early
               | as 2011.
               | 
               | So judging by actions, not words, they had a clear
               | software/firmware advantage by then already.
        
           | FabHK wrote:
           | The author worked at Nvidia and explains some of the
           | engineering decisions made at the time. Why shouldn't the
           | brand be in the title?
        
       | killme2008 wrote:
       | 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.
        
       | hackyhacky wrote:
       | > At a time when PC memory maxed out at 640 megabytes,
       | 
       | Pretty sure the author meant write 640 _kilobytes_.
        
         | rjsw wrote:
         | Maybe that is what they were thinking but anything designed to
         | work with a PCI bus would have been introduced after PCs became
         | capable of using more memory than that.
        
         | usefulcat wrote:
         | It's hard to tell exactly what time frame the author is
         | referencing there. For context, NV1 was released in '95, by
         | which time it was not uncommon for a new PC to have 8-16 MB of
         | memory (I had a 486 with 16 MB by '94). Especially if you
         | planned to use it for gaming.
        
         | npalli wrote:
         | The sentence and paragraph which makes it clear that this was
         | megabytes and not kilobytes
         | 
         |  _At a time when PC memory maxed out at 640 megabytes, the fact
         | that the PCI bus could address 4 gigabytes meant that quite a
         | few of its address bits were surplus. So we decided to increase
         | the amount of data shipped in each bus cycle by using some of
         | them as data. IIRC NV1 used 23 address bits, occupying 1 /512th
         | of the total space. 7 of the 23 selected one of the 128 virtual
         | FIFOs, allowing 128 different processes to share access to the
         | hardware. We figured 128 processes was plenty._
        
           | AStonesThrow wrote:
           | Okay but "640" is a completely fictitious number for
           | installed RAM in any given PC.
           | 
           | PC memory was nearly always sold in powers of two. So you
           | could have SIMMs in capacity of 1MiB, 2MiB, 4, 8, 16MiB. You
           | could usually mix-and-match these memory modules, and some
           | PCs had 2 slots, some had 4, some had a different number of
           | slots.
           | 
           | So if you think about 4 slots that can hold some sort of
           | maximum, we're thinking 64MiB is a very common maximum for a
           | consumer PC, and that may be 2x32 or 4x16MiB. Lots of people
           | ran up against that limit for sure.
           | 
           | 640MiB is an absurd number if you think mathematically. How
           | do you divide that up? If 4 SIMMs are installed, then their
           | capacity is 160MiB each? No such hardware ever existed. IIRC,
           | individual SIMMs were commonly maxed at 64MiB, and it was not
           | physically possible to make a "monster memory module" larger
           | than that.
           | 
           | Furthermore, while 64MiB requires 26 bits to address, 640MiB
           | requires 30 address bits on the bus. If a hypothetical PC had
           | 640MiB in use by the OS, then only _2 pins_ would be unused
           | on the address bus! That is clearly at odds with their
           | narrative that they were able to  "borrow" several more!
           | 
           | This is clearly a typo and I would infer that the author
           | meant to write "64 megabytes" and tacked on an extra zero,
           | out of habit or hyperbole.
        
             | chadaustin wrote:
             | You are straight up wrong. The first computer I ever built
             | was a Pentium 2, RivaTNT, and it had 640 MB RAM.
             | 
             | I can't find the purchase receipts or specific board brand
             | but it had four SDRAM slots, and I had it populated with
             | 2x64 and 2x256.
             | 
             | Edit: Found it in some old files of mine:
             | 
             | I was wrong! Not four DIMM slots... three! One must have
             | been 128 and the other two 256.                 Pentium II
             | 400, 512k cache       Abit BF6 motherboard       640 MB
             | PC100 SDRAM       21" Sony CPD-G500 (19.8" viewable, .24
             | dot pitch)       17" ViewSonic monitor (16" viewable, .27
             | dot pitch)       RivaTNT PCI video card with 16 MB VRAM
             | Creative SB Live!       Creative 5x DVD, 32x CD drive
             | Sony CD-RW (2, 4, 24)       80 GB Western Digital ATA/100
             | 40 GB Western Digital ATA/100       17.2 GB Maxtor
             | UltraDMA/33 HDD       10.0 GB Maxtor UltraDMA/33 HDD
             | Cambridge SoundWorks FourPointSurround FPS2000 Digital
             | 3Com OfficeConnect 10/100 EtherNet card       3 Microsoft
             | SideWinder Gamepads       Labtec AM-252 Microphone
             | Promise IDE Controller card       Hauppage WinTV-Theatre
             | Tuner Card
        
               | AStonesThrow wrote:
               | Alright then! Humbly, I stand corrected about my poor
               | speculation without research. It looks like 640MiB has
               | been a perfectly achievable configuration, especially
               | with 2x256+2x64 or such. That is, I must say, a huge
               | amount of RAM. Like, way more than any video game ever
               | specified in HW requirements. What use cases applied that
               | you could use up 640MiB in that era, I wouldn't know!
               | 
               | I remain a bit mystified about why it would be a hard
               | maximum, though. Did such motherboards prevent the user
               | from installing 4x256MiB for a cool 1GiB of DRAM? Was the
               | OS having trouble addressing or utilizing it all? 640MiB
               | is not a mathematical sort of maximum I was familiar with
               | from the late 1990s. 4GiB is obviously your upper limit,
               | with a 32-bit address bus... and again, if 640MiB were
               | installed, that's only 2 free bits on that bus.
               | 
               | So I'm still a little curious about this number being
               | dropped in the article. More info would be enlightening!
               | And thank you for speaking up to correct me! No wonder it
               | was down-voted!
        
               | chadaustin wrote:
               | I did a bunch of media and software development back then
               | so RAM helped a lot. Why 640? Not sure. My particular
               | board could have gone up to 768. I did some googling and
               | found some boards that maxed out at 1 GB.
               | 
               | That was a weird time in computing. Things were getting
               | fast and big quickly (not that many years later, I built
               | a dual-socket Xeon at 2.8 GHz, and before that my brother
               | had a dual socket P3 at 700 MHz.) but all the expansion
               | boards were so special-purpose. I remember going out of
               | my way to pick a board with something like seven
               | expansion slots.
               | 
               | But I think your question about why the author said 640
               | is fair! Maybe they had a machine like mine around then.
               | Or maybe it's something NVIDIA was designing around?
        
               | tolien wrote:
               | > I remain a bit mystified about why it would be a hard
               | maximum, though. Did such motherboards prevent the user
               | from installing 4x256MiB for a cool 1GiB of DRAM?
               | 
               | Probably not - it's not that rare to see the supported
               | maximum memory be a function of the biggest DIMM you can
               | buy, I guess as a reflection of the biggest configuration
               | the manufacturer could test.
        
               | trentnelson wrote:
               | Oh man, the Abit motherboards! That takes me back. How
               | much did this cost and at what time? Presume very late
               | 90s.
        
               | chadaustin wrote:
               | Looks like '97. Unfortunately I can't find the receipts!
               | If I had to guess, I think I'd say somewhere around $2000
               | in all. That computer lasted me a LONG time. When it was
               | done being a desktop, it became a Linux server until I
               | sold it around 2009. Sometimes I wish I'd kept it: the
               | Pentium 2 was such an important CPU and I smile every
               | time I see the one on display in the Computer History
               | Museum.
        
               | Clamchop wrote:
               | The article is a touch confusing, but I'm pretty sure I
               | agree that they meant the 640 kilobyte limit of the OG PC
               | architecture. The Pentium II dates from 1997, the NV1 to
               | 1995, and the new PCI bus with its whopping 32-bits to
               | 1992. 640MiB would have been a prodigious amount of
               | memory at the time of launch.
               | 
               | I don't think any mathematical relationship between the
               | address bus and either 640KiB or 640MiB was intended, it
               | was just the anchor point for how huge 4GiB of addressing
               | was viewed at the time.
               | 
               | The article then goes on to say that the NV1 used 23 bits
               | of the address bus but adds in the next paragraph that 16
               | bits remained to use for data. That math isn't working
               | out for me.
               | 
               | Actually, I'm really struggling to understand how this
               | scheme would work at all. It strongly implies open
               | addressing with no other MMIO devices to conflict with,
               | but that's just not how I thought PCI worked. Maybe
               | someone who knows more can explain it to me.
        
               | npalli wrote:
               | My reading was 640MiB was seen as some extraordinary
               | upper bound that was unlikely to be breached in 1995
               | leaving lot of bits of the address bus for NV1 for quite
               | some time. The 640 KiB seems definitely not a limit as
               | even IBM PC/AT released in 1984! had an upper limit of
               | 16MiB. So, as NV1's designer you could not assume 640KiB
               | was some sort of upper bound on PC's of 1995 when
               | designing the scheme. As to why 640MiB and not something
               | else, I believe Windows 95 could address 2GB in theory
               | but would start becoming unstable around 512MiB so maybe
               | he chose 640MiB.
               | 
               | The whole thing a bit ironic since Bill Gates took great
               | pains to say he never said 640KiB is all you need (or
               | something like that). Given my example of the IBM PC/AT
               | it definitely was not common understanding of upper
               | limits in 1995 apocryphal or not.
        
               | Clamchop wrote:
               | Yeah, I dunno. Besides being a lot for 1995, the address
               | space stuff, if taken at face value, means you'd only
               | have to knick 3 bits off before starting to eat into it.
               | Shrug
        
               | jandrese wrote:
               | To make this easy, there was no overlap between when
               | 640kb was common on PCs and when nVidia existed as a
               | company.
        
               | adrian_b wrote:
               | By 1995, PCI had vanquished VL-Bus and a cheap entry PC
               | would have had a PCI bus and a 486 CPU at 66 MHz or 100
               | MHz with 8 MB of RAM, while a decent PC would have had a
               | Pentium with 16 MB of RAM.
               | 
               | The days of 640 kB memory were long forgotten.
               | 
               | Even in 1990, a decent PC would have had a 386 CPU with 4
               | MB of RAM, which would have been used as extended memory
               | by the MS-DOS programs, while the cheapest computers
               | would have been PC/XT clones with a NEC V20 CPU and with
               | 2 MB of expanded memory, so still well beyond the 640 kB.
        
               | accrual wrote:
               | Impressive build, probably sounded pretty wild upon
               | startup with 4x ATA drives!
        
               | chadaustin wrote:
               | It did, especially as the drives got older and shrieky.
               | Plus the floppy and optical drives spinning up. But...
               | funny story, when I moved to Silicon Valley, SSDs didn't
               | exist yet, but compile times were IO-bound. So my company
               | bought everyone Dell workstations with two 15k RPM SAS
               | drives in RAID 0. When I'd kick off a build, the desk
               | would start vibrating under my fingers.
               | 
               | It made everything feel real!
               | 
               | Later, the company switched new employees to 3x 10,000
               | RPM SATA drives. Not quite as grindy, but still loud.
        
             | userbinator wrote:
             | For a while, I had 36MB on a 486 mobo, with a combination
             | of SIMMs and DIMMs. As others have mentioned, 640MB is a
             | valid, if odd, configuration for RAM.
        
               | rasz wrote:
               | Not a single 486 motherboard supported DIMMs.
        
             | adrian_b wrote:
             | As another poster has said, around 2000/2001 there were
             | many PC motherboards for which the maximum RAM capacity was
             | 640 MB of SDRAM (though depending on the motherboard the
             | capacity limit could have other values, e.g. 512 MB or 768
             | MB were other frequent values). Only around 2003,
             | motherboards where you could install up to 4 GB of DDR
             | memory became widespread.
             | 
             | I had a few such motherboards, with Pentium III
             | "Coppermine" and with AMD Athlon "Thunderbird" (with 3 DIMM
             | sockets, 2 accepting 256 MB modules and 1 accepting 128 MB
             | modules).
             | 
             | While I had initially equipped them with less memory, i.e.
             | either 128 MB or 256 MB, because of the high cost at that
             | time, eventually I had maxed up the installed memory to 640
             | MB on the Athlon motherboards.
             | 
             | At that time, the memory controller was not included in the
             | CPU, but it was contained in an external chip, the
             | Northbridge. The MB chipsets could come from various
             | vendors, including Intel and Via. Depending on the chipset,
             | different maximum amounts of SDRAM could be supported.
             | Sometimes there were also limits for the maximum amount of
             | RAM caused by the L2 cache controller, due to the size of
             | the tags required in cache lines. Even with the same
             | chipset, the MB manufacturer could choose to route
             | different numbers of address lines to the sockets, probably
             | depending on whether the extra capacitive loading caused by
             | a bigger memory module would have allowed it to function at
             | the rated speed on that PCB.
             | 
             | 64 MB would have been a typical maximum memory around 1998
             | (2 sockets for 32 MB SDRAM modules, on a MB with an AGP
             | socket for the graphics card), so if the author would have
             | had that year in mind, you would be right.
        
             | DonHopkins wrote:
             | Haven't you ever heard the Bill Gates quote that he didn't
             | actually say?
             | 
             | https://news.ycombinator.com/item?id=18120477
             | 
             | https://groups.google.com/g/alt.folklore.computers/c/mpjS-h
             | 4...
             | 
             | QUESTION: I read in a newspaper that in 1981 you said,
             | ``640K of memory should be enough for anybody.'' What did
             | you mean when you said this?
             | 
             | ANSWER: I've said some stupid things and some wrong things,
             | but not that. No one involved in computers would ever say
             | that a certain amount of memory is enough for all time.
             | 
             | The need for memory increases as computers get more potent
             | and software gets more powerful. In fact, every couple of
             | years the amount of memory address space needed to run
             | whatever software is mainstream at the time just about
             | doubles. This is well-known.
             | 
             | When IBM introduced its PC in 1981, many people attacked
             | Microsoft for its role. These critics said that 8-bit
             | computers, which had 64K of address space, would last
             | forever. They said we were wastefully throwing out great
             | 8-bit programming by moving the world toward 16-bit
             | computers.
             | 
             | We at Microsoft disagreed. We knew that even 16-bit
             | computers, which had 640K of available address space, would
             | be adequate for only four or five years. (The IBM PC had 1
             | megabyte of logical address space. But 384K of this was
             | assigned to special purposes, leaving 640K of memory
             | available. That's where the now-infamous ``640K barrier''
             | came from.)
             | 
             | A few years later, Microsoft was a big fan of Intel's 386
             | microprocessor chip, which gave computers a 32-bit address
             | space.
             | 
             | Modern operating systems can now take advantage of that
             | seemingly vast potential memory. But even 32 bits of
             | address space won't prove adequate as time goes on.
             | 
             | Meanwhile, I keep bumping into that silly quotation
             | attributed to me that says 640K of memory is enough.
             | There's never a citation; the quotation just floats like a
             | rumor, repeated again and again.
        
       | artyom wrote:
       | 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.
        
         | whyowhy3484939 wrote:
         | You can read in Kernighans History of Unix that really good
         | managers - "enlightened management" IIRC - were involved and
         | not just involved, some of them were absolutely crucial or Unix
         | won't have existed. It's not like you can just let loose a
         | couple of big brains and things will work out fine. They won't
         | (and didn't).
        
       | jacobgorm wrote:
       | 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.
        
         | DonHopkins wrote:
         | That's right, he's a great down-to-earth guy (but he can still
         | write like a passionate punk rocker -- see below), and there's
         | a wealth of interesting thoughtful stuff on his blog. I've
         | known him since the days of the X10 / X11 / NeWS window system
         | wars.
         | 
         | He worked with James Gosling on Andrew at CMU and NeWS at Sun,
         | and on X10 as well as X11 and ICCCM, and he implemented the
         | original X10 compatibility layer that was in NeWS 1.0, before
         | X11 was a "thing".
         | 
         | https://en.wikipedia.org/wiki/David_S._H._Rosenthal
         | 
         | One of my favorite classics is his Recreational Bugs talk
         | [1989] by "Sgt." David Rosenthal (author of the ICCCM,
         | developer of the Andrew Window Manager, X10, X11, and NeWS,
         | employee #4 and chief scientist at Nvidia):
         | 
         | https://blog.dshr.org/2018/05/recreational-bugs.html
         | 
         | >"You will get a better Gorilla effect if you use as big a
         | piece of paper as possible." -Kunihiko Kasahara, Creative
         | Origami.
         | 
         | Here's his review of "The Philosopher of Palo Alto", a book
         | about Mark Weiser:
         | 
         | https://blog.dshr.org/2023/06/the-philosopher-of-palo-alto.h...
         | 
         | At the 1985 Alvey Workshop "Methodology of Window Management",
         | David Rosenthal and James Gosling presented "System Aspects of
         | Low-Cost Bitmapped Displays" and "A Window Manager for
         | Bitmapped Displays and Unix" about their work on Andrew at CMU.
         | And James presented "SunDew - A Distributed and Extensible
         | Window System" about his work at Sun, which was later renamed
         | NeWS, and was what convinced David to leave CMU and join him at
         | Sun.
         | 
         | System Aspects of Low-Cost Bitmapped Displays:
         | 
         | https://www.chilton-computing.org.uk/inf/literature/books/wm...
         | 
         | A Window Manager for Bitmapped Displays and Unix (with the
         | first known use of the term "Gorilla effect" as it applies to
         | computer graphics):
         | 
         | https://www.chilton-computing.org.uk/inf/literature/books/wm...
         | 
         | SunDew - A Distributed and Extensible Window System:
         | 
         | https://www.chilton-computing.org.uk/inf/literature/books/wm...
         | 
         | Warren Teitelman's "Ten Years of Window Systems - A
         | Retrospective View" covers the fascinating history of
         | Smalltalk, DLisp (Interlisp), Interlisp-D, Tajo (Mesa
         | Development Environment), Docs (Cedar), Viewers (Cedar),
         | SunWindows and SunDew systems:
         | 
         | https://www.chilton-computing.org.uk/inf/literature/books/wm...
         | 
         | Here's David Rosenthal's notorious Sun Deskset Environment
         | flame that some rogue leaked to the Unix-Haters mailing list
         | (inspiring the Unix-Haters Handbook's X-Windows chapter), in
         | which he poignantly concluded:
         | 
         | "It's like having a Roy Lichtenstein painting on your bedroom
         | wall.":                   From: DR         Date: 18 Oct 90
         | 17:02:39 GMT         Newsgroups: sun.open-windows
         | Subject: Re: Deskset environment                 [NS replied to
         | me directly.  Her reply illustrates the            reasons why
         | I sent out yesterday's mail so perfectly that            I'm
         | taking the liberty of copying my reply to
         | openwindows-interest]              > When we give standard
         | Deskset presentations, a couple of         > things tend to
         | "dazzle" the audience ...         >         > 1.    Use the MT
         | Calendar template to generate an         >       appointment.
         | Mail it to yourself, then         >       drop it onto CM which
         | will schedule it.  The         >       template is totally
         | hokey (we're working on         >       it) but it works and is
         | wizzy.         >         > 2.    Build a small application with
         | GUIDE and make it         >       on the spot.  Show it up and
         | running on XView         >       in minutes.  You can talk to
         | BW about that         >              Thank you, but you have
         | completely missed the point.  I         don't want to show
         | people how whizzy the standard default         desktop
         | environment is.  That's your job.              I want to give a
         | talk about a quite different subject.  I         merely want to
         | *use* the desktop environment to achieve my         own ends.
         | And as soon as I try to actually *use* it for         something
         | instead of merely showing off the glitz, it falls         to
         | pieces in my hands.  Unfortunately, this is becoming all
         | too common in Sun products these days, because we no longer
         | *use* the things we build for anything but whizzy demos.
         | Have you ever actually tried to *use* the desktop for
         | anything?  Like, say, printing a PostScript file?  The
         | answer has to be no - because dropping a PostScript file on
         | the print tool doesn't work.  Or binding a shell command to
         | a pattern?  Again no, because doing so depends on
         | undocumented features of /etc/filetype.  Even trying to
         | create a new icon from the standard set causes the icon
         | editor to dump core.  I'm not joking when I say that I've
         | been filing a bug report every couple of hours of trying to
         | use the desktop.  Its this kind of fragility that shows me
         | that I'm treading on fresh snow.  No-one else has walked
         | this way.              And that is a truly sad commentary on
         | the state of Sun -         no-one has been this way because no-
         | one believes that         there's anything worth doing over
         | this way.  The reason Unix         was such an advance over
         | previous operating systems was that         you could customize
         | your environment in arbitrary ways.         With just a few
         | shell scripts, for example.  Its just like         the cold war
         | - in our anxiety to compete with the enemy         we've ended
         | up losing the things that made our way of life         worth
         | defending in the first place.  Like the freedom to
         | disagree with the authorities.              > I believe you're
         | correct in saying that most people live         > with the
         | default environment, but I think it's only partly         >
         | because they don't know how to customize it.  We've done
         | > some user testing and, surprisingly, people either prefer
         | > the default environment or just don't want to take the
         | > time to make it special.  This is particularly true of
         | > people like admins, marketing, etc.              Testing
         | whether people actually do customize their         environment
         | is beside the point.  Of course they don't.  In         order
         | to do it, I have to write C code using bizarre         features
         | of Xview, exercise all my shell wizardry, and         dredge up
         | undocumented features of the system from the         source.
         | And you're suprised when admins can't do this?  I         don't
         | expect admins to do it.  But I do expect ISVs and         Sun's
         | SEs to be able to do it, and right now they can't.
         | PS - I notice that someone filed a bug today pointing out
         | that even your example of dropping a mail message on CM
         | doesn't work if CM is closed.  That's a symptom of the kind
         | of arrogance that all the deskset tools seem to show -
         | they're so whizzy and important that they deserve acres of
         | screen real estate.  Why can't they just shut up and do
         | their job efficiently and inconspicuously?  Why do they have
         | to shove their bells and whistles in my face all the time?
         | They're like 50's American cars - huge and covered with
         | fins.  What I want is more like a BMW, small, efficient,
         | elegant and understated.  Your focus on the whizzy demos may
         | look great at trade shows, but who wants to have their tools
         | screaming at them for attention all the time?  It's like
         | having a Roy Lichtenstein painting on your bedroom wall.
        
       | Animats wrote:
       | 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.)
        
         | saltcured wrote:
         | And that was an evolution of earlier 2D cards where you had a
         | potential mixture of CPU-addressable framebuffer and various
         | I/O ports to switch modes between text and raster graphics,
         | adjust video modes in DACs, adjust color palette lookup tables,
         | load fonts for text modes, and maybe address some 2D
         | coprocessors for things like "blitting" (kind of like
         | rectangular 2D DMA), line drawing, or even some basic polygonal
         | rendering with funny options like dithering or stipple
         | shading...
        
           | userbinator wrote:
           | It all started with the 8514/A... and maybe a bit of the VGA
           | too.
        
         | pjmlp wrote:
         | And that is because of that low level exposure, and extension
         | spaghetti, that Khronos finally acknowledged at Vulkanised 2025
         | that adoption didn't went on as expected, and there is now a
         | roadmap being put into place on how to improve the whole
         | situation.
         | 
         | The talk being "The Road to The Future".
        
           | Animats wrote:
           | Just looked at that roadmap.[1] Good to know they are
           | thinking about that.
           | 
           | I've discussed this in the context of Rust renderers. There
           | are about four of them, and they all sit on top of Vulkan and
           | export roughly similar APIs. The API is roughly comparable to
           | three.js - meshes, textures, materials, lights, shadows, and
           | updating are supported. They all get to the point where they
           | can load static glTF scenes, and then the devs hit the hard
           | concurrency problems and bail.
           | 
           | That's a much more comfortable level for users who need to
           | get something done in 3D. Vulkan level belongs to people who
           | write engines.
           | 
           | Getting off topic, though. This is not a retro problem. This
           | is a current problem.
           | 
           | Further discussion on the Vulkan roadmap request for comments
           | on Discord, here.[2]
           | 
           | [1] https://vulkan.org/user/pages/09.events/vulkanised-2025/T
           | 2-T...
           | 
           | [2] https://discord.com/channels/427551838099996672/115155677
           | 637...
        
         | DonHopkins wrote:
         | Did you ever play around with the Matrox Digisuite SDK for
         | DirectX for real time video processing, that had a visual data
         | flow programming language interface for its video processing
         | nodes that would execute inside the gpu?
         | 
         | https://video.matrox.com/en/about/history-of-innovation
         | 
         | >1996: Matrox launches the Matrox Genesis Series vision
         | processor, and with its highly pipelined, parallel-processing
         | architecture, establishes a new performance industry standard.
         | 
         | >The company also introduces Matrox DigiSuite, the first
         | affordable all-digital system for real-time, non-linear
         | editing. The award-winning DigiSuite breaks new ground in
         | offering a full set of professional-quality editing and effects
         | capabilities. DigiSuite becomes the world's best-selling
         | professional video editing card.
        
       | cadamsdotcom wrote:
       | > 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 wrote:
       | 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...
        
         | djmips wrote:
         | Thanks!
        
       | trinsic2 wrote:
       | 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.
        
         | jwmcq wrote:
         | Probably read the rest? I did not see Jensen's name on any of
         | the patents that this key engineer discusses the detail and
         | rationale of, and I feel that those names are listed fairly
         | deliberately.
        
         | tasty_freeze wrote:
         | > He is a marking guy,
         | 
         | You would be wrong. He worked at AMD as a design engineer, and
         | later went to LSI logic helping customers put out custom ASICs.
         | One of his customers, a big customer, was Sun, helping with
         | their SPARC processor and the GX graphics chips, and no doubt
         | many others.
         | 
         | In 1989-1991 I did three ASICs at LSI Logic -- and Jensen was
         | my liason there on the latter two. He was incredibly smart,
         | hard working, technically knowledgeable, kind, patient, and
         | generous with his time despite being very busy.
         | 
         | The marketing stuff came later (or maybe said better: it was
         | latent and it came out later)
        
           | trinsic2 wrote:
           | If he is an engineer he sure doesn't sound like it with his
           | keynote address. The guy spends more time on AI than talking
           | about how they plan on improve technology and their
           | relationship with their partners.
        
         | nubinetwork wrote:
         | The Nvidia of the late 90s died once they realized people
         | wanted compute on a video card.
        
       | Netcob wrote:
       | 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.
        
       | DonHopkins wrote:
       | 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_...
        
       | muziq wrote:
       | 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."
        
       ___________________________________________________________________
       (page generated 2025-05-21 23:02 UTC)