64

The DEC Alpha, released in 1992, seems like an early implementation of a fully 64-bit microprocessor architecture. Its release led to quite a bit of both marketing hype and genuine vendor support in the mid-1990s, which supported the conclusion that Alpha would be a serious challenger to Intel x86, at least in the high-end performance and enterprise markets. It even had support from Microsoft with a native Windows NT 4.0 release.

In the late 1990s, Alpha fizzled in the face of the HP/Intel partnership pushing their Itanium 64-bit architecture. My limited understanding of the phase-out suggests that it was not a technical matter of Itanium being better than Alpha. Rather, it was that Compaq acquired DEC, which was later acquired by HP, that killed the Alpha (by selling it to Intel!).

Assuming my background is correct and that the DEC Alpha represented a formidable technical challenge to x86 processors of the mid-1990s, what were the specific architectural features that made it better or "ahead of" the Pentium CPUs of the same era? And at what point after would Intel introduce x86-compatible processors that matched these technical architecture features already in DEC Alpha from 1992?

  • 14
    The Alpha wasn't really (directly) competing with the x86 arhitecture... it was more competing with the mid-to-large, minicomputers of the time (IBM's AIX, HP/UX boxes, Solaris Sparc, Sequent etc.). If you remember the fabulous AltaVista search engine (before DEC teamed up with Yahoo, and got sold to Compaq)... it was essentially created as a test-project to show-case the power of a top-end Alpha box (see digital.com/about/altavista). IIRC, the original box behind it had something like 6 processors and (then almost unheard of) 12GB or RAM. – TripeHound Feb 6 at 14:18
  • 4
    @TripeHound, I remember 6GB of RAM when it first appeared - probably upgraded a few times during its life, though. – Toby Speight Feb 6 at 18:46
  • 1
    @TripeHound - agreed; it was absolutely mind-boggling (I was pretty impressed with a 64MB 256-colour workstation at the time - I didn't get my hands on a gigabyte until nearly a decade later). – Toby Speight Feb 6 at 19:11
  • 2
    @TripeHound The Alpha most definitely was competing with the x86 architecture. When it was new, a DEC salesman came to my company to pitch it. His entire talk was comparing it to existing x86 servers running NT. It was much faster, of course, so fast it ran x86 software via an emulator at competitive speeds. But it was basically trampled by x86 inertia. Even Intel's own highish end architecture ended up being trampled by x86. – JeremyP Feb 7 at 10:06
  • 2
    Not just NT 4.0 - all the NT 3.x releases also supported the Alpha, as did all or nearly all of the betas for Windows 2000 (Alpha support was only dropped very late in development, shortly before the final release of Windows 2000). – Sean Feb 8 at 5:01
68

The Alpha team set out to create a high-performance architecture, planned to last for 25 years and allow for 1000-performance increase over those 25 years. So they placed some long bets, starting with the 64-bit design (which cost performance but ensured long-term viability). It wasn’t designed to compete with x86 (which wasn’t perceived as a viable long-term architecture at the time of the 486, at least not from the point of view of RISC manufacturers), but rather to be the best possible CPU for Digital, from workstations to high-end servers. Digital did understand early on that Intel’s Pentium and later CPUs would end up competing, and tried to adjust their strategy to address that, but the competitive landscape at the time was much more complex than Alpha versus x86 (see this famous issue of PC Magazine).

Here are some features present in Alpha CPUs before competing Intel x86 CPUs (Alpha wasn’t necessarily the first architecture to implement these):

  • 64-bit architecture (64-bit ALU, registers, pointers, etc.) — 2007 in Intel x86 CPUs (but the first 64-bit x86 CPU was the Opteron in 2003; other 64-bit-capable architectures were MIPS III in 1991, SPARCv9 in 1994, PA-RISC 2.0 in 1996, PowerPC 620 in 1997)
  • high clock rates (enabled by the typical RISC design, with a simplified register file, split register files, fixed instruction size, and very careful layout), 192MHz in 1992 — Intel caught up with Alpha clock rates in 1999 with the Coppermine Pentium III
  • multi-issue (superscalar) — the first Pentium was also multi-issue, but had unbalanced pipes
  • built-in multiprocessor support (albeit with a famously weak memory model) — this is difficult to compare, since Alpha and x86 have very different multiprocessing models; Intel’s CPUs supported bus sharing as early as the 8080 and locking with the 8086, multiprocessor systems using Intel CPUs have existed for a long time, and the P54C included hardware to support two-way multiprocessing in 1994
  • built-in secondary cache (starting with the 21164) — Coppermine Pentium III
  • out-of-order execution at high frequencies (starting with the 21264) — Pentium Pro
  • built-in memory controller (starting with the 21364) — Nehalem in 2008

The instruction set was designed with many of these goals in mind, in particular high clock rates, multi-issue (the instruction set avoids instructions which typically cause dependencies), and multiprocessor support (atomic updates etc.). Intel could never replicate this with a backwards-compatible instruction set, at least not on the surface.

The amount of engineering effort which went into all the details of the architecture is easy to underestimate. For example the layout engineers used to spend ages planning simulation runs which would take days if not weeks to complete, to calculate the optimal layout for portions of the CPU (using what would be called machine learning nowadays).

At the time, Alpha systems had more of everything, even compared to competing workstations and servers, let alone PCs, in particular higher clock rates, and support for more memory (I saw the first motherboard-sized memory boards with a full gigabyte of memory in the Digital factory in Scotland), albeit for more dollars (at least compared to PCs). For some time, the fastest computers for running Windows NT x86 binaries were Alpha workstations!

Most of the Alpha niceties made it to x86, many through AMD rather than Intel (follow the engineers after Digital’s breakup). Some that didn’t include fixed-size instructions, and PALcode.

The Alpha is extensively documented; see for example this BYTE article by one of the Alpha architects, Richard L. Sites; Paul V. Bolotoff’s Alpha: The History in Facts and Comments; and Digital technical journal, in particular volume 4 number 4.

(If you want to try to get a feel for what typical PC users experienced when they spent some time on an Alpha system in the mid-90s, try to spend some time on a high-end POWER system nowadays. The price difference is also similar now to what it was then...)

  • 5
    The Alpha architecture is the canonical example of a "really weak" memory model, which complicates life for the programmer on a multi-core system. See e.g. cs.umd.edu/~pugh/java/memoryModel/AlphaReordering.html – fadden Feb 6 at 16:08
  • 4
    I joined a company that was producing, and testing, the same Windows NT software on x86 and Alpha in spring 1995. At the time, the Alpha was way faster than the Pentiums we were using. The Pentium Pro was the point at which Intel looked like they could compete with the RISC processors; it did not quite catch up with the Alphas we had, but the differences were small. By the time of the Pentium III, Alpha had been overtaken, and there was no reason left for customers to use it. – John Dallman Feb 6 at 20:42
  • 1
    Re: high clock rates on Alpha: this probably merits a mention of the speed-demons vs brainiacs debate. Speed-demons attempt to be faster via high clock frequency, while brainiacs attempt to be faster via high IPC. Alpha was frequently mentioned as the archetypical speed-demon. – ninjalj Feb 7 at 0:07
  • 1
    re NT on Alpha running x86 binaries - my first "PC" ever was an Alpha (Jensen, aka DECpc AXP 150). I suppose it wasn't bad, but its contemporary, the 60MHz Pentium, seemed better to me (no data here, just 'feel'). This is the fundamental problem with new architectures for the mass market -- applications, applications, applications. – another-dave Feb 7 at 0:29
  • 2
    @fadden: Even if an architecture uses a weak memory model, an OS could emulate a stronger model by allowing programmers to specify combinations of threads for which cache consistency is required, and ensuring that such threads aren't assigned to cores with different caches. A bigger issue I suspect is that operations on adjacent bytes can interfere with each other, – supercat Feb 7 at 1:05
45

Stephen Kitt has done what seems to me an excellent job of outlining features and when they were introduced. I'll take a slightly different tack, instead picking a single point in time, and pointing out differences between the two at that time.

I'm going to choose the 21164 as the Alpha to compare. It came out in January of 1995. It had a 266 MHz clock speed, and a quad-issue pipeline (i.e., could issue 4 instructions per clock). That was balanced between integer and floating point, so you could issue 2 integer instructions per clock and 2 floating point instructions per clock.

Intel's fastest processor at that time was the P54C Pentium. I believe at the time, it had a maximum clock speed of 75 MHz. It had dual pipelines, so it could issue (at best) two instructions per clock. The second pipeline was fairly restricted, and scheduling was static, so in a given clock cycle, the first instruction (almost) always went to the the first pipeline, and then the second instruction issued to the second pipeline if and only if it was one of the specific instructions that the second pipeline supported.

To get an idea of performance (well, okay, my aim was a bit more selfish: to try to justify buying an Alpha workstation) I did some simulations of running Alpha code for a program I had at the time. It averaged around 1.6 instructions per clock.

I had a Pentium at the time (a 66 MHz P5). The same code running on it ran at about 1.1 instructions per clock.

The Alpha instruction set was rather simpler, so you needed to execute more instructions to carry out a particular task with it than with the Pentium. If memory serves, this was about a 2:1 difference, but varied a fair amount.

So, at least at that point in time, the Alpha was effectively about 3 times the speed of the fastest Pentium.

I feel obliged to address one more point though. You said:

In the late 1990's, Alpha fizzled in the face of the HP/Intel partnership pushing their Itanium 64-bit architecture.

In my opinion, this is basically wrong. It wasn't Alpha that fizzled. It was DEC that fizzled. Continuing from the performance comparison outlined above: my numbers were convincing enough that I eventually got permission to buy a DEC Alpha workstation, and got funds allocated for it.

So, I went through the DEC catalog, and picked out exactly the workstation I wanted. Then I contacted DEC. The first guy I talked to was very enthused right up until he heard the size of company I worked for - we were too small a company, so he couldn't sell me anything. He gave me somebody else to talk to. So I talked to them. They were very helpful until they heard what I wanted - they weren't allowed to sell that workstation.

This went on for over a month. I spent weeks calling different people at DEC, and an almost bewildering number of VARs and VADs and god only knows what else. On essentially every call, I was very clear about exactly what I wanted, and that I had funds available to buy exactly that, immediately. I also made clear that assuming this worked out, my boss and his boss were both probably going to buy similar machines soon (there was no way a mere peon like me was going to have the fastest machine in the company for very long!).

In the end, I simply had to give up. I had the money. I had permission to spend it. But no matter how hard I tried, I couldn't get DEC to take the money.

At least in my opinion, that's why the Alpha died. I don't claim to know sales particularly well, but I'm pretty sure an effective sales strategy does not include refusing to sell your product, even when you have a legitimate customer who's not only ready and willing, but in fact downright eager to buy your product.

  • 3
    Yeah. There was a point in the late 80s when DEC, HP and Sun had great machines, a logical product range you could order out of a catalogue and great service and support. Then they just suicided in the face of their market expanding from technical users to corporates and SMEs. – Rich Feb 6 at 23:07
  • 4
    The legal mess with Intel likely helped kill Alpha. In settlement, Intel buys the Hudson fab, Intel agrees to make Alpha chips at that fab, and DEC agrees to use Itanium. I'm sure this mess made sense to someone at the time. – another-dave Feb 7 at 0:41
  • I remember seeing ads in (the print version of) Linux Journal for Alpha workstations way back in the day, like late 90s / early 2000. So at some point someone figured out how to sell Alpha workstations to individual buyers, but probably this was a year or two after your experience, if a 66MHz P5 was top of the line. – Peter Cordes Feb 7 at 9:27
  • 1
    @Peter that was probably Microway (a long-standing LJ advertiser, who sold their own range of Alpha workstations for a while). – Stephen Kitt Feb 7 at 13:32
  • @PeterCordes: All those I saw advertised and easily available used the 21164PC, which was a 21164 with the S-cache removed (and, if memory serves, the I-cache enlarged a little to try to compensate). I eventually got a chance to play with one of those too, but it wasn't really the same. – Jerry Coffin Feb 10 at 5:58
9

Alpha fizzled in the face of the HP/Intel partnership pushing their Itanium 64-bit architecture

I think it's important to note that during this period, there was a widespread belief that the VLIW approach was "the next RISC". Existing RISC approaches were growing into the millions of transistors and the outright performance gap that existed in the 1990s was fading. HP looked on Itanium as the future and Alpha as the past. So did a lot of people.

So Alpha wasn't competing with x86; they were totally different markets, in the same fashion that we don't have desktops based on ARM (yet). And since Itanium was going to replace both Alpha and x86, what was the point of continuing development of Alpha?

  • Good point. Close comparison only works for close related application. – Raffzahn Feb 6 at 14:43
  • 3
    During the middle of its life, Alpha was competing with x86, and Digital understood that quickly. – Stephen Kitt Feb 6 at 14:58
  • 5
    Put another way, Alpha might have been addressing different markets compared to typical x86, but x86 was certainly targeting Alpha’s markets. – Stephen Kitt Feb 6 at 15:07
  • DEC sales left room at the bottom for Windows + x86 to grow and slowly push them out of more and more of the market. Add in Microsoft's push for developers and they steamrolled from the low end on up pushing out competitor after competitor. I don't see ARM on the desktop anytime soon as it doesn't have a standard like 'IBM PC Compatible' yet making it harder to build a packaged software and hardware ecosystem like DOS/Windows has enjoyed. – Brian Feb 6 at 21:51
  • 2
    I remember Andrew Orlowski illustrating the decisionary aspect by random bosses sitting on chairs they shouldn't occupy and a big lack of balls during the 2000-2001 serial buyout disasters involving DEC, Compaq, HP and whatnot (I can't remember the details) in The Register. For example: Don Capellas justifies Compaq Alphacide, Farewell then, Alpha – Hello, Compaq the Box Shifter etc. – David Tonhofer Feb 6 at 22:24
3

I was at HP when the Alpha cancellation decision was made. In fact I was part of a team that ran comparative HPC benchmarks on Alpha and x86. The fact was that by 1999 the x86 Pentium-II was matching the Alpha in floating point performance. This was reported by objective groups, e.g. Dongarra et al. Unfortunately the Alpha ecosystem was 10x more expensive than the x86 ecosystem. So there was really no choice.

  • 1
    Intel came a long way with x86 performance from 1992-2000, no doubt. Competition is important. – Brian H Feb 13 at 18:06
0

One little known fact is that what become PostgreSQL was done on Alpha workstations with 64MB of RAM. I forget the model number of the workstations but they were small desktop machines. I was the system manager for the Postgres Research Group at UC Berkeley. We also had a couple of Alpha servers.

The Alpha hardware (and software) worked quite well. We were part of a large DEC external research project (Sequoia2000) so we got everything in essence for free. I doubt that we would have used Alphas if it weren't for that.

-1

The DEC Alpha, the first mass-produced 64-bit processor, featured a pipeline architecture superior for the time. Intel contracted as a second-source manufacturer of the Alpha technology for DEC, whose manufacturing was superior, but limited. When Intel afterwards brought out the Itanium, supposedly borrowing some of Alpha's technology, DEC sued. Thereafter Intel agreed to buy DEC's Alpha technology, along with its manufacturing facility, and to pay punitive damages. DEC was being led differently anyway and no longer wanted to be in the manufacturing business. Thus most of today's 64-bit processor technology had its roots in Alpha. However, at the time, the best processor on the market was Sun Microsystem's SPARC—but only while running their SunOS/Solaris Unix.

  • 2
    The original poster was asking about specific architectural features of the Alpha that made it superior to x86. Could you elaborate? – Jim Nelson Feb 7 at 23:51
  • DEC sued Intel over the Pentium, PPro and PII, not Itanium. – Stephen Kitt Feb 9 at 14:37

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.