1
00:00:00,000 --> 00:00:06,080
Most computer enthusiasts know Intel for their famous x86 CPU architecture that powers most

2
00:00:06,080 --> 00:00:15,140
of today's desktops and laptops. But did you know that not so long ago, Team Blue actually tried to kill off x86 entirely?

3
00:00:15,140 --> 00:00:19,880
If you're not sure what I'm talking about, maybe the name I-tanium will ring a bell?

4
00:00:19,880 --> 00:00:27,120
Eh? Probably not for a lot of you. This was an all-new architecture and CPU brand from Intel that made its debut back

5
00:00:27,120 --> 00:00:32,960
in 2001, and was billed as being so efficient that it would just naturally come to dominate

6
00:00:32,960 --> 00:00:38,760
the market at some point. But these days, you can barely even buy an I-tanium CPU anymore.

7
00:00:38,760 --> 00:00:44,520
So what was the big idea? Let's start as we always do with a little bit of history.

8
00:00:44,520 --> 00:00:49,400
Back in the 1990s, Hewlett-Packard was looking at ways to make CPUs more parallel, but instead

9
00:00:49,400 --> 00:00:54,400
of sticking more cores onto a CPU or using hyperthreading, HP wanted to simplify the

10
00:00:54,400 --> 00:00:59,960
architecture by having software determine what order to execute instructions in, instead

11
00:00:59,960 --> 00:01:03,440
of having the CPU do the heavy lifting and hardware.

12
00:01:03,440 --> 00:01:07,760
The hope was that this would free up processing resources to execute more instructions in

13
00:01:07,760 --> 00:01:12,320
parallel, ultimately making for a more powerful, energy efficient CPU.

14
00:01:12,320 --> 00:01:17,560
HP took the new architecture, which was called Epic, no not that one, to Intel, which then

15
00:01:17,560 --> 00:01:23,120
helped develop it further into IA64, the architecture used in I-tanium.

16
00:01:23,240 --> 00:01:27,960
I-tanium was also Intel's first attempt at a 64-bit processor and actually hit the

17
00:01:27,960 --> 00:01:34,200
market before AMD's first 64-bit CPU, Opturon, which released in 2003.

18
00:01:34,200 --> 00:01:39,200
HP and Intel felt confident that I-tanium would become popular in the server and workstation

19
00:01:39,200 --> 00:01:44,160
settings and go on to overtake x86 in home PCs as well.

20
00:01:44,160 --> 00:01:48,480
There was even a version of Windows specifically written for I-tanium's architecture.

21
00:01:48,480 --> 00:01:55,320
So why did it flop so badly? So it turns out that trying to determine what instructions the CPU should run in software

22
00:01:55,320 --> 00:01:59,000
is a lot trickier than HP and Intel thought it would be.

23
00:01:59,000 --> 00:02:03,400
Typically, the CPU has a specialized group of circuits called a scheduler that determines

24
00:02:03,400 --> 00:02:09,400
what order to run instructions. The scheduler can make these decisions much more effectively than software can, since

25
00:02:09,400 --> 00:02:15,200
the scheduler can make adjustments based on when exactly the CPU is trying to access the memory.

26
00:02:15,200 --> 00:02:19,280
This can't be done effectively in software, since you can't figure out when the CPU is

27
00:02:19,320 --> 00:02:26,240
accessing memory ahead of time. And because the software would pre-schedule instructions, I-tanium CPUs suffer from stalls

28
00:02:26,240 --> 00:02:32,200
quite frequently, slowing them down. There was also the issue that even though I-tanium's architecture was intended to be the way of

29
00:02:32,200 --> 00:02:38,520
the future, Intel still had to do business in the present, and the vast majority of software

30
00:02:38,520 --> 00:02:45,120
for servers and workstations was written for x86 or other non-I-tanium architectures.

31
00:02:45,120 --> 00:02:49,240
Running these programs on I-tanium meant that they had to be emulated, which introduced

32
00:02:49,240 --> 00:02:57,080
a huge amount of performance overhead. And to make matters even worse for I-tanium, the aforementioned Opturon from AMD was released

33
00:02:57,080 --> 00:03:05,200
two years later. Although Opturon was also 64-bit, it used the X8664 instruction set, the same one that

34
00:03:05,200 --> 00:03:08,960
powers the chips that's probably sitting in your home PC right now.

35
00:03:08,960 --> 00:03:13,960
And as the name implies, it's natively compatible with x86 since it was essentially built on

36
00:03:13,960 --> 00:03:20,200
top of it. So the folks running x86-based servers and workstations had a far easier time upgrading

37
00:03:20,200 --> 00:03:27,000
to Opturon instead of I-tanium for their 64-bit fix, making Team Red's offering much more

38
00:03:27,000 --> 00:03:34,440
popular. Intel, quickly realizing that I-tanium wasn't going to catch on, instead implemented X8664

39
00:03:34,440 --> 00:03:39,240
into their own Xeon lineup of server processors, which went on to become very successful.

40
00:03:39,240 --> 00:03:44,520
So Intel actually let Xeon cannibalize the I-tanium lineup to a large extent, and I-tanium

41
00:03:44,520 --> 00:03:47,960
became relegated to niche markets only.

42
00:03:47,960 --> 00:03:52,480
Intel did actually keep developing new models of I-tanium chips until 2017, but despite

43
00:03:52,480 --> 00:03:56,800
the fact it hung on for quite a while, it never made up more than a small fraction of

44
00:03:56,800 --> 00:04:00,120
Intel CPU sales. So what's the lesson here?

45
00:04:00,120 --> 00:04:04,240
If you're trying to reinvent the wheel, make sure you have a car to stick that wheel on,

46
00:04:04,240 --> 00:04:07,640
or at least like a tricycle.

47
00:04:07,640 --> 00:04:17,160
We're not really good at metaphors.
