5 ms·
And, then in 1989, they released the i860 [0] with similar promises to similar failure. 0: https://en.wikipedia.org/wiki/Intel_i860 https://en.wikipedia.org/wi
by chris_st 3y ago
And, then in 1989, they released the i860 [0] with similar promises to similar failure.
0: https://en.wikipedia.org/wiki/Intel_i860 https://en.wikipedia.org/wiki/Intel_i860
- kjs3 3y agoIntel and Microsoft thought so much of the i860's future, it was the architecture Microsoft started developing Windows NT on. Obviously...didn't work out.
- WorldMaker 3y agoSimilarly, NT allegedly invested a lot into supporting the even later (and more goofily named) Itanium [1] (IA-64) architecture. In general, Intel's history of failed architectures is almost more interesting than its history of winning architectures. [1] https://en.wikipedia.org/wiki/IA-64 https://en.wikipedia.org/wiki/IA-64
- kjs3 3y agoThe full Intel i960 implementation (i960MX & i960MC variants) was particularly interesting, supporting a capabilities based arch and a lot of built in fault tolerance features. Unfortunately, it got squeezed by the BiiN project going nowwhere in the end, and both the i386 & i860 competing for mindshare within Intel. In the end, they stripped out most/all of the nifty stuff and made a lot of money from i960 as a high-end but pedestrian embedded processor.
- jandrese 3y agoThe i860 failed for entirely different reasons though. It was really a vector engine that could manage some general compute with some grumbling whereas the 432 was built for general purpose applications written in Ada. But I guess they did both fail for the same reason: they were more expensive and slower than x86 when running regular applications. Itanium would follow this trend. Come to think of it i860 and Itanium are far more closely related, both suffering greatly from the Intel hardware engineers punting on the difficult instruction scheduling issues with the architecture and the compiler writers not being able to pull the rabbit out of the hat and magically fix those issues. So you have chips that only ever perform properly on trivially parallelizeable tasks and are slow on the vast majority of code.
- chris_st 3y agoAs I understand it, the hardware design for the i860 made it incredibly hard to write a compiler for. This also helped it fail.
- kps 3y agoAt the time I worked for a small compiler company (primarily C and secondarily Fortran) that did a port for the i860, but decided not to polish and market it. It was a while ago, but my memory matches what jandrese (parent comment) says. It's not that it was particularly hard to compile for — it did have specific multiple-issue rules, but we were used to worse from microcode and VLIW targets — but that, outside of a very few arithmetic kernels, real-world code simply did not have enough parallelism for the chip to get anywhere near its paper performance claims. Entering and leaving the multi-flop mode had high latency, and there was so much internal state that interrupts/task-switching were ridiculously expensive. It was predictable that it was not going to be succeed as a general-purpose processor.
- Findecanor 3y agoThe i960 embedded CPU series (that came out at about the same time as the i860) has been called the successor to the iAPX432. It had the same lead designer, and was also intended to run Ada, but except for its use of tagged memory it was a relatively conventional RISC architecture: <https://en.wikipedia.org/wiki/Intel_i960 https://en.wikipedia.org/wiki/Intel_i960>
- kps 3y agoI quite liked the i960 at the time. The later implementation, the i960CA, dropped all the capability features but was one of the first, if not the first, commercial microprocessor to offer superscalar execution. This required correct instruction placement, which was fun, but also fun. My vague memory is that real-world code could get something like 25% speedup from automatic scheduling alone, which was a lot better than the internally-competing i860.