You are playing pretty fast and loose with your definition of a "software company" when you include Amazon and NVIDIA in your list. Amazon is many things but it is not a "software company" and neither is "NVIDIA".
(Which makes sense because all of their end user products suck)
Software company is a pretty good description for both.
Just because software plays a role, doesn't make them software companies. It is like saying all companies are "electrical companies" because they require electricity to operate.
I don’t suppose you know a good “for dummies” explanation of why CUDA is such an insurmountable moat for them?
Like, what is it about that software that AMD can’t produce for their own hardware, or for a most important subset, with these $1T market stakes?
AMD may develop their own software layer, but a lot of things already work on CUDA, and the job to port this to a different platform may be non-trivial (or even possible depending on the level of feature parity).
Theoretically the moat isn’t insurmountable and AMD has made some inroads thanks to the open source community but in practice a generic CUDA layer requires a ton of R&D that AMD hasn’t been able to afford since the ATI acquisition. It’s been fighting for its existence for most of that time and just never had the money to invest in catching up to NVIDIA beyond the hardware. Even something as seemingly simple as porting the BLAS library to CUDA is a significant undertaking that has to validate numerical codes while dealing with floating point subtleties. The CPU versions of these libraries are so foundational and hard to get right that they’re still written in FORTRAN and haven’t changed much in decades. Everything built on top of those libraries then requires having customers who can help you test and profile real code in use. When people say that software isn’t a moat they’re talking about basic CRUD over a business domain where all it takes is a competent developer and someone with experience in the industry to replicate. CUDA is about as far from that as you can get in software without stepping on Mentor Graphics’ or Dassault’s toes.
There’s a second factor which is that hardware companies tend to have horrible software cultures, especially when silicon is the center of gravity. The hardware guys in leadership discount the value of software and that philosophy works itself down the hierarchy. In this respect NVIDIA is very much an outlier and it shows in CUDA. Their moat isn’t just the software but the organization that allowed it to flourish in a hardware company, which predates their success in AI (NVIDIA has worked with game developers for decades to optimize individual games).
the second problem is that so many libraries and existing software is cuda only. even some obscure hardware stuff. i discovered the hard way that some AMD thinkpads dont support thunderbolt transfer speeds on their usb-c ports, whereas nvidia ones do
the third problem is that the cost to develop a cuda equivalent is so great that its cheaper for companies like google to make TPU and amazon to make Trainium. its literally cheaper to make an entire new chipset than it is to fix AMd. i dont see companies like apple/amzn/goog etc fixing AMDs chips
although one could argue disingenuously that nvda is a software company because the product they ultimately manufacture is a bunch of blueprints they email to tsmc or samsung who then actually make the chips
Plenty of AIs have flawed epistemology. But nice try.