Ta da! The new PentiumIII is out -- and Intel is marketing hard. If you see all the advertisements you probably think something significant is new -- but almost everything in it is just recooked versions of what others have shipped long ago. Let me explain.
In the early 90s Intel promised "A new core every 2 years". (A new "core" usually means a major new processor design that includes architectural changes on the "core" of the processor -- the way it works).
In 1993 they did come out with the Pentium Processor (the P5 because it was the 5th generation of processor in the x86 line). The Pentium was certainly a dramatic change over the 80486 processor. In 1995, much to the surprise of everyone (since Intel didn't usually live up to their promises), Intel came out with the PentiumPro processor. The technical name of this processor was the P6, since this was the sixth generation of the x86 processor. The problem is that since then they haven't released a new core. The PentiumII is just the PentiumPro with slightly different packaging and MMX bolted on. The PentiumIII is just the PentiumII with a few more instructions (either called SSE or KNI) bolted on (which is a poor copy and response to AMDs 3DNow! technology). The P7 processor was scheduled for 1997 and is now basically called Merced -- and we should see it sometime around the end of 2000 (if they are lucky). And the one that delivers on the initial promises of Merced will ship a year later and is called McKinley.
Since the 8086 was introduced in 1978, it has taken 21 years to get 6 generations. The 4004, 8008 and 8080 were actually the first 3 generations that the 8086 was based on, but Intel doesn't like to count those. Since the 4004 was released in 1971, we can also figure that it has taken roughly 30 years to go through 9 generations. Which means it takes them 3.5 - 5 years per generation (getting slower over time).
Some people will get real annoyed that I point out that the PentiumIII is really just a PentiumPro with a new name -- but Intel doesn't even refute those facts.
The PentiumPro was a whole new core over the Pentium. It added quite a bit of new things, including the whole way it interpreted instructions. It has a wanna-be RISC like back-end and a butt-ugly CISC front end -- which is an interesting hack that doesn't fix the fundamental problem of CISC (which is the antiquated Instruction Set and memory addressing model) but it was new and was superior to the old. Intel also had to get the speed up to what the PowerPC was, so in a panic, they bonded 3 chips together (two caches and one processor) all on one package. This was an expensive process, but gave them a fast 1:1 backside cache. The results were pretty good, and it kept up -- it had many flaws (like lousy 16 bit performance, a few I/O support chip problems, and a few bugs like overflow and so on), but it did the job.
The PentiumII was really nothing more than a way to reduce the cost of the PentiumPro. They made slot-1 connector for it as a way to make things more proprietary (and try to starve the clone-chip makers out of the market). On the slot-1 they took the L2 cache off the package, and moved them onto the slot-1 card and slowed them down to only 2:1 ratio. The one feature add was they added MMX from the P5 line (actually the P55C).
MMX is a 64 bit wide integer SIMD implementation meant to help graphics, games and so on. If you want to read about what SIMD is, try reading What is MMX / VMX (AltiVec)? or AltiVec vs MMX -- both will help you understand more.
Now the PentiumIII has come out -- and what is new? What did they add to the PentiumII in the last few years?
They added a serial number, so that when you upgrade your processor or machines you software that depends on that will stop working, and so that there can be all these arguments over security. The reality is that it is way too easy to "spoof" this number, so there is little real security value, and it is more a gimick than anything great. Apple figured this out in 1982 when they added serial numbers to the Lisa (the precursor to the Mac), and a few other companies tried similar things out around that time as well. Even know a few processors have serial numbers, but none try to use it for too much, since it isn't very valuable. What is Intel trying to use it for? As a special way to lock people OUT of websites, so that only PentiumIII enabled users can get in. Boy that sounds like something I want to see spread. It probably took them a week to figure out how to add this to the product.
They added KNI (Katmai's New Instructions), now called SSE (Streaming SIMD Extension). Katmai was the code name for the PentiumIII. This gives you 70 new instructions to do 128 bit Floating Point SIMD -- but it is not as much of a core change as people think -- it is just a bolt on unit. Even Intel still considers the PentiumIII a P6-Core. But for a few things this will offer about a 2 fold increase in performance -- though in the real world it doesn't seem to be stacking up nearly that dramatically.
If you want to know more about KNI/SSE and how it compares to Altivec, read AltiVec vs KNI (SSE). The truth is that AltiVec is probably 4 times better in real world performance than SSE for Floating Point SIMD -- and this is compounded by the fact that AltiVec is probably 8 times better (or more) than MMX for Integer SIMD. This is because Apple/Motorola/IBM took the time to do it right (and had the space on chip to do it right). The time also meant that there are far more tools initially, and far more OS support for AltiVec than for SSE (or MMX). On the Mac I expect that support will not only include OS support (like QuickDraw and QuickTime), but also helpful libraries to offer useful functionality to many developers -- and programming AltiVec is done in higher level languages (making it easier), unlike MMX and SSE which usually require assembly. All this means better results and more support for AltiVec.
SSE is really nothing new either. AMD came out with "3DNow!" which is their FP-SIMD extensions nearly a year before Intel. While Intels SSE is a slightly better conceptual design, the implementation is so hampered that there seems to be little real-world difference in performance. But AMD has had problems getting any serious adoption rates for "3DNow!" -- and that will get worse because of the PentiumIII. Of course SSE will also get worse adoption because of the lack of tools, lackluster performance increases and confusion over whether to use MMX, 3DNow or SSE for things. But it is good enough to maket, and heck, that's what really counts right?
What about AMD? I hear that question all too often. The K6-2 and K6-3 are nice integer performers -- but aren't very good for floating point. Intel is squeezing them hard with the Celeron processor line. 3DNow is not better (but not really worse) than SSE -- but that still makes it just a fraction of what the AltiVec unit has to offer (say 1/4th as fast, best case). 3DNow is the only compelling difference (other than price) and 3DNow has been languishing on the vine and having troubles getting Application support. I expect that PentiumIII and SSE will make that even worse. So despite being a nice processor, it will probably not make much of a difference because there is no compelling advantage and the only thing they can market it as is "cheaper". The K-7 looks to be a really nice processor as well -- and may stand a chance to dent Intel if it can make a big improvement in Integer and Floating Point (and cost), but then they still have problems with a SIMD-Unit that most don't really seem to care about very much.
So what are the results of the PentiumIII's stellar improvements over the PentiumII? (Intel is doing their best to hide these results from the public, and instead market the hype).
For Business Apps (general Integer Performance) there is no noticable difference at all. A PentiumII, PentiumIII and Celeron all get about the same exact results at the same speed. Winstone and other mertrics can't tell the difference in the real world. You can get results like a PentiumIII and 500 MHz is a whopping 4% faster than a PentiumII at 450 MHz (for only about twice as much money). No bargain there. In fact the AMD K6-3 / 450 is actually faster than the PentiumIII / 500 or PentiumII / 500, for a fraction the cost.
For specialty Apps that do a lot of floating point and "high end" things, you will again fail to get a significant (or even measurable) difference between the PentiumII and PentiumIII. But in this area the AMD K-6's fall apart. AMD can do better if Apps would take advantage of '3DNow!', but the fact is that most don't.
Lastly, what about SSE Optimization? What if App writers spend many hundreds of thousands or millions of dollars tuning their Apps for the SSE extension (and the new unit added to PentiumIII)? Well, the preliminary results like Photoshop test, NetShow (video streaming), Intel's new FutureMark, and some optimized games, all seem to show similar results -- from between a 5% increase to a whopping 25-30% increase in performance (overall). Of course for some specialty things, I would expect to see almost a doubling of performance -- but in the real world that will likely not cause results anywhere near that dramatic.
The PentiumIII is still just another PentiumPro, with new marketing. If you want a real "New Core" from Intel, then you are going to have to wait for Merced (say late 2000 or 2001),. But Intel admits that it will be expensive and not significantly outperform the x86 (Pentiums) of their time -- and that will take a couple more years (and generations).
There will continue to be incremental increases as Intel puts more L2 cache on the processor, and does a few other things to bump the speed up -- but all are small gains. The next real core change to the x86 (since about 1995) is code named Wilamette, and is scheduled around 2000 - 2001. But we will have to wait and see how substantial a change that will be. Considering that Intel has hamstrung themselves by a poor INT-SIMD unit (with only 64 bits), and a poor FP-SIMD implementation, I wouldn't expect dramatic improvements in those areas -- so the x86 SIMD seems to be forever doomed to be a pathetic shadow of AltiVec.