Join the discussion

Write your take first — we'll ask for email only when you're ready to publish.

  • Hacker News
  • I heard about Alpha in that it while being more powerful than x86 it wasn't as alien as the competition. The boards had PCI slots and looked like normal PCs, it had Windows NT and Linux. So if your Exchange server was not handling the load you moved it to Alpha and it was good.

    It also seems faith in IA64 was the meteor that killed most of these self developed RISC architectures.

  • A VAR I worked with back in the day made great scratch for a good number of years flogging MS SQLServer on Alpha for the performance boost, which was apparently more than enough to justify the price premium for those that needed it.
    by kjs3
  • FWIW Alpha pretty quickly went with mainly PCI + few legacy ISA slots for considerable chunk of the line, unlike competition which used proprietary buses that might have been faster but meant extra level of exotic in procurement
    by p_l
  • > outside of the highly specialized embedded-application market, RISC is in retreat

    with hindsight it is funny to realize that RISCs come back would start from inside that highly specialized market in the form of ARM.

  • And just like the 90s, every major tech company is making their own RISC chip[1]! Apple Silicon, Tensor, Graviton, Axion, Cobalt, Grace....

    [1] - Though not exactly since they're all ARM ISA at the foundation.

  • From back when IA-64 (A.K.A. Itanium) was supposed to take Intel to the promised land.
  • Without AMD, maybe it would have.
  • It's important in the historical context of the Alpha AXP to also remember the DEC PRISM architecture. Canceled in 1988. One of many architectures killed off by DEC.

    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.

    by loph
  • Jupiter was just a PDP-10, I don't think killing Jupiter was bad. The VAX was insanely successful and adopted by a large amount of people. And Jupiter was a very expensive project and it basically failed to do what it wanted to do and was already late. They stopped with PDP-10 because nobody seemed to be able to make a next generation architecture work.

    Arguably, all ECL projects should have been killed, even Venus.

  • Fun fact - Linus first trip to the United States was related to Linux-on-Alpha port and sponsored by Digital Equipment Corporation.
    by stmw
  • The Alpha CPUs didn’t implement the div instruction and Linus’ assembly version was faster than DEC’s in some cases.

    https://git.kernel.org/pub/scm/linux/kernel/git/stable/linux...

  • My memory is that the Alpha and OSF/1 hit at the same time. OSF/1 had a different model of shared library stuff, and I recall it being something which sometimes demanded a reboot to get a runtime cache rebuilt/linked so things worked as you expected. I may be mis-remembering, I think DEC had coded some pull up smarts to optimise the lib -> indirect -> actual call path into the shortest path possible.

    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.

    by ggm
  • Unaligned access was common issue on many RISCs, which depending on specific Unix variant and runtime settings might mean regularly getting SIGBUS for code ported from other architectures.

    Without BWX instructions from EV56 (21164A) you also could not make memory access smaller than 32bits

    by p_l
  • It’s so good to re-read Tom Halfhill’s articles. I wonder where he’s been in the past… checks notes… 30 years I haven’t seen his writings.
  • He was my favorite author at Byte.
  • I seem to remember that Alpha’s were very fast for the time but their maximum optimization level waived IEEE floating point conformance. This, of course, drove us nuts trying to validate ports of numerically intensive code. Less interesting chips with lower optimization and limited market penetration.

    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.

  • 600Mhz Alphas existed when there was 195mhz MIPS
  • what did they not implement from 754? Given the design of the processor i can imagine them being very aggressive with assumptions around exception handling / traps - iirc this is actually the original reason why Tomasulo algorithm exists because the first out-of-order processors didn't actually make any guarantees about the order that you would observe these side effects.
  • VAX compatibility was very important to DEC- the Alpha has hardware to handle the non-IEEE VAX floating point formats.
  • I worked on the first PA-RISC workstations (“snakes”, 1989-1991). PA-RISC started as a fairly pure RISC design and was consequently very simple and predictable (short pipeline, 1 delay slot, no complex instructions). The philosophy of the design team was to make the system fast with high clock speeds, short pipelines, and big caches, all big fundamental variables in the performance equation.

    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.

  • The bit about how the AMD Athlon (K7) uses the same bus, and how they planned to make Slot A Alphas where the only adjustment an Althon motherboard would need is a different BIOS. Imagine what might have been, especially as Alpha Windows 2000 had a built in FX!32. Cheap Alpha systems with a good x86 compatibility story, it could've been a contender.

    (Yeah, I know, several stars would've had to align for it to actually work).

  • There was a problem with that idea, DEC engineers working for AMD made K7 too fast for Alpha to compete.
    by rasz
  • "Cheap" and "Alpha" would have been hard to pull of simultaneously. But it would have been really cool.
  • A video of an 1994 presentation put together for Hot Chips VI on the 21164: https://youtube.com/watch?v=OHupqMbLj1g

    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 )

    by leoc
  • In those days, I was using SGI machines to build web sites for folks .. the Indy was very popular for this purpose. One day I was given a DEC Alpha machine to evaluate and see if it was a worthwhile addition to our inventory.

    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.

  • From Microsoft’s POV they soundly beat Unix in the 1990s because they were primarily focused on the GUI workstation market.

    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).

  • Digital, HP, and IBM had the foresight to supply NCSA with Windows NT machines with their respective not-Intel chips in them to make sure that they had a web browser on their platforms. I got the honor of using the Alpha machine, and so it got the most QA by far. I recall spending an unnecessary amount of time not only staring at the heat sink but occasionally showing it to the new guy so they could confirm my astonishment.

    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.

  • Most of the barriers for Alpha adoption were problems inherent in the 32-bit to 64-bit transition. Alignment problems, yes, but another killer problem was that 64-bit pointers were twice as large.

    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.