Classic Computer Magazine Archive COMPUTE! ISSUE 154 / JULY 1993 / PAGE 56

Pentium power. (Intel's newest microprocessor)
by Mark Minasi

Why is a Pentium faster than a 486, and how fast is it?

By now, you've heard a lot about Intel's new microprocessor, the Pentium. Wondering how much of the stuff that you're hearing is actually true? Well, the Pentium is a good chip in many ways, although not the amazing world-beater that some of the (ahem) competing computer magazines claim it to be. This month, let's take a very quick look at what's fact and what's not concerning intel's newest engine.

I said you'd probably heard a lot about the Pentium; actually, hearing is about all you'll be doing about the Pentium for a while, as Intel will be lucky to be able to produce 200,000 of them by the end of the year. While 200,000 may sound like a lot of chips, it's only about 1 percent of Intel's production run for this year's 386 and 486 chips, and an even smaller percentage when you add in the folks like Cyrix, AMD, and IBM who make clones of those CPUs.

There are lots of things to like about the Pentium, and not a lot of space to describe them. Here's a whirlwind tour.

Greater raw speed. The Pentium comes in 60-MHz and 66-MHz flavors. If offering two speeds that are so close together seems odd, it is--usually. The Pentium is such a difficult chip to make, however, that the percentage of manufactured chips that can operate at the goal rate of 66 percent--the yield, in chip talk--is much lower than it is for, say, 386 or 486 chips. Lowering the bar of acceptability to 60 MHz allows Intel to sell the chips that almost made it. That means that the 60-MHz Pentiums failed the 66-MHz test but passed the 60-MHz test, whereas the 66-MHz Pentiums passed both tests. Personally, I'd look closely at a return and service policy before buying a PC based on a 60-MHz Pentium.

Why is the Pentium so difficult to make? For one thing, it's much bigger than the 486. The 486 contains 1.2 million transistors; the Pentium contains 3.1 million--over two-and-a-half times as many. (That's not the biggest jump we've seen, however. The 386 is only a quarter million transistors.) The Pentium is also a hot chip in the literal sense. The Pentium overview document from Intel says that the chip should be expected to run at up to 85 degrees Centigrade--that's 185 degrees Fahrenheit--prompting the inevitable observation that it'll not only crunch your numbers, but it'll also cook your dinner. Look for makers of Pentium-based computers to tout their unique cooling facilities.

The greater raw speed refers to the fact that the 66-MHz clock rate is a pure clock rate, unlike the 486DX2/66 chip, which runs at 66 MHz internally but interacts with the outside world at only 33 MHz. A 486DX2/66 is a relatively simple chip to design a PC around; that it communicates at 33 MHz externally means that all a designer needs to do is to mate a DX2/66 CPU chip with a run-of-the-mill 33-MHz motherboard, and it's an instant 66-MHz computer.

With a Pentium-66, on the other hand, both internal and external communication is at 66 MHz, requiring a motherboard that runs at 66 MHz. While it may seem that building a 66-MHz motherboard would be a small incremental change from the currently available 33-MHz and 50-MHz motherboards, it's not--the task gets harder as the speed gets greater. It turns out that 66 MHz is around the frequency of TV channel 4, so a Pentium-equipped PC has a serious potential noise problem. Run one without the proper shielding (with the cover off or with an inadequate cover), and you're, well, on the air. Currently, anyone can design a motherboard with a few chips and a processor. That won't be true with Pentium-based systems. Don't be surprised if the early 66-MHz Pentium-based PCs vary in usable speed by as much as 50 percent.

Smarter cache. Since the 20-MHz 80386DX's introduction, PC designers have been faced with a difficult choice--what kind of memory to use in their machines. The majority of PC RAM is called dynamic RAM (DRAM): It's relatively cheap, but it's not available in the kind of speeds needed to keep up with systems of 20+ MHz. You can't get DRAMs in 40, 25, 20, or 15 nanosecond access times, the times required by those systems. There's a different kind of RAM called static RAM (SRAM) that's available in those higher speeds, but SRAM is much more expensive than DRAM.

How do manufacturers build high-speed machines and still find RAM that won't drive the price of the PCs out of sight? By using a lot of DRAM and a little SRAM. The DRAM serves as main memory, and most systems have megabytes of it. But many motherboards have between 64K and 512K of SRAM called cache RAM. When the CPU needs the next item of data from the system RAM, it looks first in the fast SRAM cache to see if it's there. If the data is in the SRAM cache, then the CPU gets it from the SRAM without delay.

If, on the other hand, the required data isn't in the SRAM, the CPU must go to DRAM for the data, which slows the system down considerably. The whole idea of a cache is that some smart hardware called a cache controller (it's built into the 486, and it's an optional chip with the 386) must essentially look into the future, guess which data the CPU will soon need, and go get that data before the CPU asks for it.

While many 386 motherboards incorporate some kind of cache memory and cache controller, the 486 actually builds a cache and cache controlling into the CPU. The 486 chip contains 8K of cache, and most 486 systems have additional cache on the motherboard.

The Pentium's cache system is better than the 486's in four ways. First, the Pentium has twice as much cache, with two 8K caches--one for data, one for program code. Second, the cache's method of organizing its cached data is more efficient, employing a write-back algorithm. The opposite of a write-back algorithm, a write-through algorithm, forces data written to the SRAM cache memory to be immediately written to the slower DRAM memory. That means that memory reads can come out of the cache quickly, but memory writes must always occur at the slower DRAM time. Because not every piece of information written to memory stays in memory very long, the Pentium's cache algorithm puts off writing data from SRAM to DRAM for as long as possible, unlike the 486, which uses a write-through cache.

Third, there's the time wasted by the cache controller in searching to see if an item is in the cache. The Pentium reduces that time by dividing the cache into smaller caches, each of which can be searched more quickly; that technique is called a two-way set associative cache.

To explain the fourth way in which the Pentium's cache is better than the 486's, I have to first make an important point about what a cache must do. Recall that a cache has to guess which data and program code the CPU will need soon, and then go get that data before the CPU asks for it.

Guessing what the CPU will need isn't a straightforward task, particularly when there are decisions to be made. Suppose the cache sees that the CPU is currently executing some instructions that mean: "Compare value A with value B. If A is greater than B, then set the value MAXIMUM to A; otherwise, set the value MAXIMUM to B." That simple statement boils down to a bunch of instructions that had better be in the cache if the Pentium is going to continue to run without delays. But since the cache controller can't know whether the CPU will take the "A is greater than B" or "B is greater than A" fork in the road, it doesn't know which result's code to go grab and put in the cache. For years, mainframe cache controllers have used a technique called branch prediction to guess which way the CPU will go, and now a PC chip--the Pentium--has a cache controller built into it with branch prediction capabilities.

Two processors in one. There are essentially two CPUs in this chip. The first one is a simple 386-like CPU: It does integer operations, not floating-point operations. The second is like the 486--a 386 with floating-point capabilities built right into it. That means that the Pentium is essentially a parallel-processing CPU, with the ability to do two things at once. Those two CPUs-within-a-CPU are called the U and V pipelines, and the fact that the Pentium has more than one pipeline makes it a superscalar CPU. Without special programming, only the 486 pipe (the U pipe) is active. New programs and operating systems, such as Windows NT and OS/2 3.0, will be required to make use of these multiple processors.

Fault tolerance. The Pentium is designed to be linked with another Pentium on the motherboard that's dedicated to fault tolerance. The second Pentium constantly monitors the first. If the main Pentium malfunctions, the other one jumps right in and takes up without skipping a beat.

Benchmarking the Pentium

How much faster is a Pentium, really? As I said, the actual speed of a Pentium-based PC will depend heavily on motherboard design, as the Pentium relies upon the motherboard to access both its DRAM and its external SRAM cache. If those respond slowly, the Pentium can only run slowly.

Simple small benchmarks, on the other hand, will run like greased lightning because they'll fit entirely into the Pentium's 16K cache. They'll return some great numbers, but those numbers will be of very little real-world value in judging system effectiveness. After all, how many applications do you run that will fit in 16K?

I should also mention that modern benchmarks don't exploit multiprocessor capabilities, so any benchmark values on the Pentium are values determined while it works with one hand tied behind its back--that is, while the V pipeline isn't doing anything. Using a common set of benchmarks, the Pentium-based PC built by Intel (who should, after all, know how to make a Pentium-based PC) turns in a performance 76 percent faster than a DX2/66 on basic processor operations, with memory throughput almost exactly the same as the fastest current DX2/66s.

This underscores my previous point: The CPU performs amazingly well in a vacuum, but hook it up to peripherals on a motherboard--such as RAM chips--and you'll see that while the Pentium is a very special chip, it will need some very special hardware surrounding it before it can soar to computing heaven.