Live data from Hacker News

Windows XP 2002 for the Itanium: Unbridled rage

virtuallyfun.com

61–70 of 89 posts

Re: Windows XP 2002 for the Itanium: Unbridled rage

#61

Earlier quoted context omitted.

I think HP had a big investment in Itanium and even sued Oracle to get them to keep supporting Itanium (they had contractually agreed to it, but Itanium was such a dead end...)

They had bet 100% on it killing PA-RISC and DEC Alpha. They ported HP-UX, OpenVMS and NonStop to it. All 3 of them were tangled up in long running enterprise and government contracts. They since discontinued HP-UX, offloaded OpenVMS and ported NonStop to x86-64.

Itanium was essentially (incompatible) PA-RISC 3 - it originated as HP project and the direction to totally replace HPPA with Itanium was there from the start.

Non-Stop got ported early on because they needed some hardware and clients were locked down.

OpenVMS customers however balked about shifting to Itanium given that it was often slower than their existing Alpha boxes, leading to HP being forced to finish EV7 work and release another generation of Alpha chips (funnily enough, EV7 might have forked and lived on in Opteron/K8...)

Re: Windows XP 2002 for the Itanium: Unbridled rage

#62
post #11

Earlier quoted context omitted.

It was also planned for a world where high-end CPUs were differentiated by their ability to run floating-point-heavy workloads with relatively predictable memory access patterns. The rise of the web—and databases behind it—as the dominant high-end, high-margin workload obsoleted that assumption. There’s a great presentation floating around where a Compaq-acquired-DEC engineer is trying to justify how great the OpenVM…

I worked for a company that had a fairly large OpenVMS installation and had to make the transition from Alpha to Itanium. It required a considerable amount of work and the early iterations of Itanium did not provide a clear performance improvement over the final Alpha EV7z that we had been using in some GS1280s. Going by my faulty memory, I'd say it wasn't until Tukwila that it was a clear win over Alpha EV7z. By the…

EV7 were introduced after customers refused to upgrade to Integrity over crap performance.

Re: Windows XP 2002 for the Itanium: Unbridled rage

#63
post #36
post #19

Earlier quoted context omitted.

Even if the magical Itanium compiler did exist, Itanium would have still lost to AMD64. As soon as you introduce anything that doesn't behave in a statically predictable manner (multitasking, or virtualization, or even an application that processes unpredictable input like a web backend or database), your performance drops down to a fraction of what a similarly priced AMD64 chip could do. VLIW is great for some very…

The lack of licensing to other companies was clearly a POWERFUL incentive. Imagine how much money they could make if that pesky AMD went away.

IIRC it was major part of intel's roadmap to establish it so that "future" of PC cpus would be locked down to Intel/HP partnership.

And back then VIA was still noticeable competitor!

Re: Windows XP 2002 for the Itanium: Unbridled rage

#64
post #44

Earlier quoted context omitted.

> If Itanium never happened, 64-bit x86 server chips would have done the same thing to MIPS, Alpha, PA-RISC, SPARC, PowerPC. If AMD had launched amd64 server chips those vendors onboard we might have had a different 64-bit x86 market. And those vendors would have had a chance to succeed or fail on their own merits instead of due to dead end chip.

AMD did launch amd64 server chips. The first ones were Opteron, first (and only until Nehalem) x86 with ODMC, glueless multiprocessor up to 8-way (though that was a bit flakey, 4-way was decent), and first dual core. It destroyed Intel's CPUs in many measure of performance for server workloads. Before Intel's decade of humiliation with their 10nm fiasco and before Zen, AMD had a hell of a time getting ISVs and IHVs o…

Already at launch, and also during the next few years, until Intel fought back with Core 2 (but in servers the Core 2 descendants became better than Opterons only in 2009, with the Nehalem Xeons), Opteron was immensely better than the UltraSPARC CPUs used in the Sun servers. Only the Fujitsu SPARC CPUs were somewhat competitive, even if still significantly weaker. The Intel Pentium 4 Xeons were also worse, despite higher clock frequencies.

But as you say, the inertia in servers is huge, so Opteron gained market share very slowly, despite being by far the most performant server CPU that was available.

Where I worked at that time, we had big server farms with Sun or Fujitsu servers, which were disliked by design engineers like myself for their slowness. We had to make great efforts to convince the management to buy a few Opteron-based servers. Of course, after we got them they ran circles around the Sun or Fujitsu servers, a single dual-socket Opteron could be much faster than an 8-socket Sun server whose cost was many times greater.

Re: Windows XP 2002 for the Itanium: Unbridled rage

#65
post #7

I miss itanium. I feel like a madman for saying it, but I do. Something about it is just alluring to me. Alas, the problems were too hard to solve or weren't worth solving anymore Ironically, it died around the time LLMs/AI started becoming good. I feel like the compiler problems with vliw could be solved to a degree with a purpose built ai

People have tried all kinds of techniques for VLIW, including techniques that are much better than a purpose built AI, AI isn't a magic silver bullet. Fundamentally there's no reason you can't analyse a piece of code to death, and maximally extract parallelism out of it The fundamental issue is that there simply doesn't exist enough information to be able to extract the necessary parallelism without a rewrite, its th…

The so-called "SIMT programming model" is a term from the obfuscated jargon that NVIDIA has introduced for CUDA, where they have renamed almost all traditional terms used for decades in the computing literature.

The "SIMT programming model" is the same thing that in 1963 was called "Parallel DO" (from the name of the loop statement in FORTRAN), and later it was more frequently called "Parallel FOR", like in the C/C++ version of OpenMP. In the influential research paper on which later the programming language Occam was based, C.A.R. Hoare referred to the same thing as "an array of processes".

The "SIMT programming model" just means that you write iterative structures where the programmer guarantees that the iterations are independent (unless specified otherwise), so that their order of execution does not matter.

In CUDA it is slightly less obvious than in OpenMP that the so-called "CUDA kernel" is the body of a loop, because the header of the loop is not adjacent, but it is placed elsewhere in the file.

The essential difference between the "SIMT programming model" and writing a "for" loop in C is that the compiler is certain that the iterations are independent. For auto-vectorization, the compiler must prove that they are independent, which can be difficult.

Compiling for a VLIW CPU is in general a much more difficult problem than auto-vectorization (which implements data parallel processing with multiple cores and/or SIMD cores).

A VLIW CPU is able to execute in parallel distinct instructions, not only the same kind of operation like a SIMD CPU, but in most cases there are complex restrictions about what kind of instructions may be combined.

It can be too difficult for a compiler find a schedule for the instructions in such a way that this would allow a maximum number of instructions executed per clock cycle.

Probably the worst part is that it is unlikely to be able to keep busy all execution units without speculative execution of the instructions that are beyond conditional jumps. For these, it is pretty much impossible to guess an optimal schedule at compile-time, because it would change during execution when the same code (in a function or in a loop body) is executed again.

A CPU with dynamic instruction scheduling a.k.a. with out-of-order execution, will change the instruction schedule depending on the predicted branches, with much better chances of keeping busy the execution units.

In HPC applications, where Itanium worked best, it is possible to predict the branches at compile-time quite well, so a compiler has a chance to find an acceptable instruction schedule, unlike in more general-purpose applications, which are hard to predict.

A VLIW CPU also has speculative execution and a branch predictor, because these are needed in any pipelined CPU.

But unlike in an OoOE CPU, the speculative execution handles only complete bundles of instructions that are executed in a given clock cycle. A bundle of instructions may be executed speculatively or not, but the CPU cannot extract speculatively individual instructions from a set of bundles and combine them into a bundle that would occupy all execution units, like in an OoOE CPU.

Re: Windows XP 2002 for the Itanium: Unbridled rage

#66
post #60

Earlier quoted context omitted.

Paper-Itanium is unfairly blamed / credited with that, but it's not exactly true. The vertically integrated RISC/UNIX minicomputer companies were not on economically viable trajectories. x86 systems were undercutting their high margin workstation and server business, subsidized by enormous volumes in PC market needed to sustain increasing silicon manufacturing and design costs of new generations. The RISCs were force…

Alpha cancellation happened before HP/Compaq merger, when it was purely Compaq decision. At the time some partnerships were slowly reducing the base costs of making Alpha machines (with K7 Athlon motherboards and EV6 Alpha being essentially signal compatible but not pinout compatible - you could reuse the chips and most of the design). Compaq however... was not interested, for various reasons.

Oh you must be right, I mix up my time lines.

In any case the economics were more or less the same as Alpha as for the others. They couldn't support integrated silicon manufacturing. It wasn't even just the manufacturing (which could be outsourced although arguably not as competitively as integrated shops like Intel until TSMC really hit its stride). Or the logic and physical design. But the software development and ecosystem support costs were ballooning too. Alpha like the rest of them just never made sense unless they could make competitive cheap systems that were compatible, and by the time efforts like Windows ports and x86 emulation came along, it was already too late.

Re: Windows XP 2002 for the Itanium: Unbridled rage

#67
post #55

Earlier quoted context omitted.

Paper-Itanium is unfairly blamed / credited with that, but it's not exactly true. The vertically integrated RISC/UNIX minicomputer companies were not on economically viable trajectories. x86 systems were undercutting their high margin workstation and server business, subsidized by enormous volumes in PC market needed to sustain increasing silicon manufacturing and design costs of new generations. The RISCs were force…

> The vertically integrated RISC/UNIX minicomputer companies were not on economically viable trajectories. Well, actually one survived, and is making a fruity company quite happy, which also survived the 16 and 8 bit vertically integrated home computer companies. The successful merge of NeXT and Apple, meant PC OEMs now dream of margins of those days hence why building desktops has become a niche market, everything i…

Yes NeXT/Apple survive, although they commodity m68k CPUs, not quite your traditional UNIX minicomputer. Those were IBM, Sun, HP, DEC, maybe SGI. Designed their own ISAs, CPUs, interconnect fabric, 3 of them did their own silicon manufacturing.

One does still survive though, that's IBM's POWER / AIX. Still actively developed, though there is the feeling of 'when' rather than 'if' for them too.

Re: Windows XP 2002 for the Itanium: Unbridled rage

#68
post #6

I miss itanium. I feel like a madman for saying it, but I do. Something about it is just alluring to me. Alas, the problems were too hard to solve or weren't worth solving anymore Ironically, it died around the time LLMs/AI started becoming good. I feel like the compiler problems with vliw could be solved to a degree with a purpose built ai

So I feel like I need to write a blog post about this, but succinctly I think there's a good argument to be made that the issue wasn't the compiler despite popular wisdom. I don't even think it was the nature of unpredictable memory access times either as the itanium has a ton of special architectural hardware to handle unpredictable memory accesses (a lot of which are essentially some of the primitives that an OoO c…

It's more simple. Online bin packing problem is simpler to solve and has more optimal solutions with smaller chunks

Re: Windows XP 2002 for the Itanium: Unbridled rage

#69
post #55

Earlier quoted context omitted.

> The vertically integrated RISC/UNIX minicomputer companies were not on economically viable trajectories. Well, actually one survived, and is making a fruity company quite happy, which also survived the 16 and 8 bit vertically integrated home computer companies. The successful merge of NeXT and Apple, meant PC OEMs now dream of margins of those days hence why building desktops has become a niche market, everything i…

Yes NeXT/Apple survive, although they commodity m68k CPUs, not quite your traditional UNIX minicomputer. Those were IBM, Sun, HP, DEC, maybe SGI. Designed their own ISAs, CPUs, interconnect fabric, 3 of them did their own silicon manufacturing. One does still survive though, that's IBM's POWER / AIX. Still actively developed, though there is the feeling of 'when' rather than 'if' for them too.

I did not count AIX / Solaris in, because they are always some racks in a server room, or the whole IBM / Unisys / Fujitsu for that matter.

I was only thinking about UNIX workstations, those under/besides the desk.

Otherwise you're right, there are few more options available still.

Re: Windows XP 2002 for the Itanium: Unbridled rage

#70
post #8
post #5

A historical note: Windows XP 64-bit Edition that was mentioned in the article, was Itanium-specific. It was based on XP kernel while Windows XP x64 Edition (for AMD64 architecture) was based on Windows Server 2003 kernel. Because of that, Windows XP x64 Edition had some significantly different performance characteristics compared to other Windows XP editions. If anything, it was closer to Vista than XP in some aspec…

I would love to read the Microsoft PM spec for this product. Who in the world were they making it for? Itanium never made it into the consumer-class hardware that was XP’s audience. AFAIK, Intel never even published a roadmap for that to happen! Maybe a proof of concept they shipped as a demonstration of loyalty to Intel?!

I believe efforts like this were funded by HP. It is why the Itanium was kept around for so long despite being dead on arrival.
Post reply on HN