Having the free hardware mostly worked, but there was a long time before all of the data alignment bugs got sorted out. It got to the point where my CS classes had progressed enough that I started looking for them myself. Literally the first development tasks I got paid to do was code reviewing for word alignment bugs on 64 bit code. It was a long goddamned time ago so it's pretty fuzzy but IIRC not all 3 processors had exactly the same restrictions for all data types. So if it worked on Alpha it usually worked on the other 2 but not 100%.
I didn't have to deal with 64 bit software at work again for another 10 years, at which point people looked at me like I was trying to be edgy when I just shrugged. No, really, I was looking at 64 bit code errors 10 years ago.
The software I was writing at the time (EDA) took almost exactly twice as much memory. So if we needed more than 4GB, we could go to a 64-bit machine, but unless you bought even more than 8GB, you couldn't really run on bigger problems.
As you note, all those problems had to be sorted out 10 years later, when AMD finally forced Intel's hand into selling 64-bit computers.
A question on terminology, I come from bsd world so prefer i386, amd64, ia64(the itanium) whereas the linux side appears to prefer x86 x86-64 Nothing wrong with it(it describes the architecture fine) but I assume that x86-64 is intel face saving propaganda.
It came with NT, so there was some friction to just adding it to our services. These days were very frustrating - Microsoft was hell-bent on killing Unix, and later Linux also - and there was a lot of back and forth in our engineering team whether we wanted to invest in this hassle.
We didn't. I had that machine under my desk doing basically nothing for a year, before I sent it back.
If there had been a bit more insight into the nature of things, and if it had been running a Unix variant, we would have given it a better chance.
So then it was even more frustrating when SGI did a deal with the devil in later years, and tried to get its customers switch to NT, also. That killed SGI, in my opinion.
Looking back now, it's kind of incredible the resistance to Unix in those days, and how it was all going to be replaced with some "New Technology". Linux won. SGI didn't. And DEC was an early victim they should have learned from, in my opinion.
In 1991 the market for high-end desktop software like engineering, video editing and 3D modeling tools was dominated by Unix and classic Mac. In 1999 all of those applications were on Windows NT.
Vendors like Autodesk and Avid were building for Windows first. New graphics acceleration hardware targeted PC add-on cards rather than being exclusive to a workstation vendor (SGI tried this approach with their NT box and it flopped).
In retrospect it was just commercial Unix that had lost the game, but it wasn’t obvious at the time that Linux could reclaim this market. And Mac OS X was considered by many a doomed project (after all Apple had been promising a new OS for the entire ‘90s, nobody knew how deeply the NeXT acquisition would transform the company).
Between 1997 and 2007, I worked at 3 different companies, in 3 different countries (2 in Europe + Israel) as Design Engineer in electronics.
All the serious engineering programs for EDA/CAD were run on Solaris and accessed from Windows with X-terminal programs.
Towards the end of that decade, the Opteron-based servers were both much faster and much cheaper than the Sun servers or the Fujitsu servers, so the EDA/CAD programs were migrated from Solaris to Linux, while the Windows computers continued to run only the X-terminal programs for accessing the servers.
At the beginning of that decade, I also used a Sun workstation, but those disappeared after 1999, because they were much too slow in comparison with a PC with Intel Pentium III or with AMD Athlon.
It is likely that the reason why those EDA/CAD programs did not have Windows versions at that time was that they already required a lot of memory, typically much more than 4 GB, so they migrated from Solaris to Linux only after the availability of x86-64 servers, while having a Windows version was not possible before mid 2006, when Intel joined AMD in providing 64-bit CPUs even for PCs, not only for servers, so the market share of 64-bit PCs became non-negligible.
For example, in 1996/1997, Digital Domain (VFX industry) used a 'render farm' cluster of Carrera Alpha workstations running NT to render the Titanic film, instead of SGIs running IRIX. (SGIs were still often used on the artists workstations though, but progressively that shifted).
By 2001, many of those machines were x86 which were then often as fast as the SGIs and Alphas, even with x86's stack-based floating point architecture which handicapped it a bit, and the significantly higher memory bandwidth and larger caches of the SGIs.
An April 1992 University Video Communications presentation on the Alpha architecture https://youtube.com/watch?v=klg1FtHADso and then from 38m 19s on the 21064 CPU https://youtube.com/watch?v=klg1FtHADso&t=2299s . From about 2m52s https://youtube.com/watch?v=klg1FtHADso&t=172s to 4m 43s Richard L. Sites gives the Alpha team’s predictions from 1992 for the next 12-25 of CPU development, which seem to have been fairly on the nail.
(Sites hasn’t been idle recently either! He’s responsible for the ultra-low-overhead KUTrace: https://news.ycombinator.com/item?id=40972099 )
(Yeah, I know, several stars would've had to align for it to actually work).
Part of the settlement was that Intel had to fab for Digital for a long time and pay for a bunch of their patents. The Digital folks made it sound like it was a victory for them but it felt like the beginning of the end, and sure enough it was.
I think Alpha's big problem was people were still migrating to 32 bit code and here was a bunch of smartasses trying to push 64 bit processors 10 years before x86-64 became the flagship for Intel-compatible processors. During the time when 'Internet time' was a thing people said regularly and unironically. 10 years was forever.
Now, HP’s PA-RISC chips…. Those things were fast and easier to work with. Curiously, with SoftPC they could do windows faster than a 486 could. Slaughtered all sorts of mini-supers they did.
Would have been interesting if alpha survived to compete with SGI’s MIPS.
Alpha was much more sophisticated but also a lot more complex. The Alpha memory model, in particular, was quite complex with lots of cache control and barrier primitives, IIRC. But it could fly when you got the stars to align.
Edit: Alpha also came out later and PA-RISC also got more complex in later generations.
I also recall the syslog being absolutely FLOODED with "unaligned access at..." messages.
It was fast. It was very fast. If you knew how to make the compiler to the precompile, test run, introspect, recompile cycle, it would work out from some sample state the right choices (branch prediction ordering?) and make your fast code even faster.
Without BWX instructions from EV56 (21164A) you also could not make memory access smaller than 32bits
https://en.wikipedia.org/wiki/DEC_PRISM
Killing Prism sent David Cutler into the arms of Microsoft.
Another dead architecture was Jupiter: https://en.wikipedia.org/wiki/Jupiter_project
Killing Jupiter sent many of DEC's DECsystem-10 customers to IBM.
Years later, they both seem like bad decisions.
Arguably, all ECL projects should have been killed, even Venus.
https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux...
with hindsight it is funny to realize that RISCs come back would start from inside that highly specialized market in the form of ARM.
[1] - Though not exactly since they're all ARM ISA at the foundation.
It also seems faith in IA64 was the meteor that killed most of these self developed RISC architectures.
That worked out swimmingly for Alpha... >sigh<
I never programmed Alpha assembly, so I don't really have a feel for the architecture. I did deploy some Alpha-based boxes running NT, and they were very nice. They didn't feel pieced-together like x86 servers did.
As for Alpha, funnily enough the first few years I knew of it, I knew only of NT use with them, because that's what the R&D institute my father worked at had.
Dr Dobbs has been gone for 12, which is still a long time, but when I first read the intro my brain transposed the two and I had a proper freak out before I realized what I'd done.
"According to Allen Baum, the StrongARM traces its history to attempts to make a low-power version of the DEC Alpha, which DEC's engineers quickly concluded was not possible."
https://en.wikipedia.org/wiki/StrongARM
While AArch64 has been in the top supercomputer, a phone running on Alpha was not.
For this scalability problem, it deserved to die.
The issue was that DEC lacked the resources to run a completely new microarchitecture design to target low-power platforms, and the failure was trying to push an extreme performance chip into low-power envelope instead of designing a new one.
AFAIK with ARM the difference is that they started with low-power underpowered chip and modified it to bring the performance up.
You'd have probably similar issues trying to make a phone using Fujitsu A64FX (the supercomputer ARM) into low-power chip.