Upgrading and Repairing PCs Free Open Book

Upgrading and Repairing PCs

Previous Section Next Section

Processor Specifications

Many confusing specifications often are quoted in discussions of processors. The following sections discuss some of these specifications, including the data bus, address bus, and speed. The next section includes a table that lists the specifications of virtually all PC processors.

Processors can be identified by two main parameters: how wide they are and how fast they are. The speed of a processor is a fairly simple concept. Speed is counted in megahertz (MHz) and gigahertz (GHz), which means millions and billions, respectively, of cycles per second—and faster is better! The width of a processor is a little more complicated to discuss because three main specifications in a processor are expressed in width. They are

  • Data I/O bus

  • Address bus

  • Internal registers

Note that the processor data bus is also called the front side bus (FSB), processor side bus (PSB), or just CPU bus. All these terms refer to the bus that is between the CPU and the main chipset component (North Bridge or Memory Controller Hub). Intel uses the FSB or PSB terminology, whereas AMD uses only FSB. Personally I usually just like to say "CPU bus" in conversation or when speaking during my training seminars because that is the least confusing of the terms while also being completely accurate.

The number of bits a processor is designated can be confusing. All modern processors have 64-bit data buses; however, that does not mean they are classified as 64-bit processors. Processors such as the Pentium 4 and Athlon XP are 32-bit processors because their internal registers are 32 bits wide, although their data I/O buses are 64 bits wide and their address buses are 36 bits wide (both wider than their predecessors, the Pentium and K6 processors). The Itanium series and the AMD Opteron and Athlon 64 are 64-bit processors because their internal registers are 64 bits wide.

First, I'll present some tables describing the differences in specifications between all the PC processors; then the following sections will explain the width and other specifications in more detail. Refer to these tables as you read about the various processor specifications, and the information in the tables will become clearer.

Table 3.1 lists the primary specifications for the Intel family of processors used in IBM and compatible PCs. Table 3.2 lists the Intel-compatible processors from AMD, Cyrix, NexGen, IDT, and Rise.

Table 3.1. Intel Processor Specifications

[1] The 386SL contains an integral-cache controller, but the cache memory must be provided outside the chip.

[2] Intel later marketed SL Enhanced versions of the SX, DX, and DX2 processors. These processors were available in both 5V and 3.3V versions and included power management capabilities.

[4] 128KB functional L2 cache (256KB total, 128KB disabled) uses the same die as the Pentium IIIE.

[3] L2 cache runs at full-core speed but is contained in a separate chip die.

[5] 256KB functional L2 cache (512KB total, 256KB disabled) uses the same die as the Pentium IIIB.

[6] 128KB functional L2 cache (256KB total, 128KB disabled) uses the same die as the Pentium 4.

[7] The Itanium also includes an additional 2MB (150M transistors) or 4MB (300M transistors) of integrated on-cartridge L3 cache running at full-core speed. The Itanium 2 includes 3MB of on-die L3 cache.

Table 3.2. AMD, Cyrix, NexGen, IDT, Rise and VIA Processors

[8] Samuel 2 core (improved version of Cyrix III core).

[9] Ezra core.

[10] Ezra-T core.

[11] Nehemiah core.

Note

In Table 3.1 the Pentium Pro processor includes 256KB, 512KB, or 1MB of full-core speed L2 cache in a separate die within the chip. The earlier Pentium II/III processors include 512KB of half-core speed L2 cache on the processor card. The Celeron, Pentium II PE, and Pentium IIIE and IIIB processors include full-core speed L2 cache integrated directly in the processor die. The Celeron III uses the same die as the Pentium IIIE, but half of the on-die cache is disabled, leaving 128KB functional. Older Celerons were based on the Pentium II and III; the Celeron 4 is a Pentium 4. The later Pentium 4A includes 512KB of on-die full-core speed L2 cache.

The transistor count figures do not include the external (off-die) 256KB, 512KB, 1MB, or 2MB L2 cache built into the Pentium Pro, Pentium II/III, Xeon, and AMD Athlon CPU packages or the 2MB or 4MB of L3 cache in the Itanium. The external L2 cache in those processors contains an additional 15.5 (256KB), 31 (512KB), 62 million (1MB), or 124 million (2MB) transistors in separate chips, whereas the external 2MB or 4MB of L3 cache in the Itanium includes up to 300 million transistors!

Note in Table 3.2 that the original AMD Athlon included 512KB of L2 cache via separate chips, running at one-half, two-fifths, or one-third the core speed, and Athlon TB or XP models include 256KB or 512KB of on-die L2 at full-core speed.

Data I/O Bus

Perhaps the most important features of a processor are the speed and width of its external data bus. This defines the rate at which data can be moved into or out of the processor.

The processor bus discussed most often is the external data bus—the bundle of wires (or pins) used to send and receive data. The more signals that can be sent at the same time, the more data can be transmitted in a specified interval and, therefore, the faster (and wider) the bus. A wider data bus is like having a highway with more lanes, which enables greater throughput.

Data in a computer is sent as digital information consisting of a time interval in which a single wire carries 3.3V or 5V to signal a 1 data bit or 0V to signal a 0 data bit. The more wires you have, the more individual bits you can send in the same time interval. All modern processors from the original Pentium through the latest Pentium 4, Athlon XP, Athlon 64, and even the Itanium and Itanium 2 have a 64-bit (8-byte) wide data bus. Therefore, they can transfer 64 bits of data at a time to and from the motherboard chipset or system memory.

A good way to understand this flow of information is to consider a highway and the traffic it carries. If a highway has only one lane for each direction of travel, only one car at a time can move in a certain direction. If you want to increase traffic flow, you can add another lane so that twice as many cars pass in a specified time. You can think of an 8-bit chip as being a single-lane highway because 1 byte flows through at a time. (1 byte equals 8 individual bits.) The 16-bit chip, with 2 bytes flowing at a time, resembles a two-lane highway. You might have four lanes in each direction to move a large number of automobiles; this structure corresponds to a 32-bit data bus, which has the capability to move 4 bytes of information at a time. Taking this further, a 64-bit data bus is like having an 8-lane highway moving data in and out of the chip.

Another ramification of the data bus in a chip is that the width of the data bus also defines the size of a bank of memory. So, a processor with a 32-bit data bus such as the 486, reads and writes memory 32 bits at a time. Pentium-class processors, including the Pentium III, Celeron, Pentium 4, and Athlon XP, read and write memory 64 bits at a time. 64-bit processors such as the Athlon 64 and Itanium series also read and write memory 64 bits at a time.

In 486 class systems, because standard 72-pin single inline memory modules (SIMMs) are only 32 bits wide, they must be installed one at a time in most 486 class systems. When used in 64-bit Pentium class systems, they must be installed two at a time. The current module standard, dual inline memory modules (DIMMs), are 64 bits wide. So, they are normally installed one at a time in Pentium or newer systems. Each DIMM is equal to a complete bank of memory on a 64-bit data bus, which makes system configuration easy because they can then be installed or removed one at a time.

Starting in 2003 and beyond, these classic rules for adding DIMM memory will begin to change, as dual-channel chipsets such as the Intel 865 and 875 for the Pentium 4/Celeron 4 and the first Athlon 64 chipsets are introduced. To improve memory performance, these and most, if not all, future chipsets will support and eventually require that DIMM memory modules be installed in identical pairs.

The Rambus inline memory modules (RIMMs) used in some Pentium III and 4 systems are somewhat of an anomaly because they play by a different set of rules. They are typically only 16 or 32 bits wide. Depending on the module type and chipset, they are either used individually or in pairs.

See "Memory Banks," p. 460.


Address Bus

The address bus is the set of wires that carries the addressing information used to describe the memory location to which the data is being sent or from which the data is being retrieved. As with the data bus, each wire in an address bus carries a single bit of information. This single bit is a single digit in the address. The more wires (digits) used in calculating these addresses, the greater the total number of address locations. The size (or width) of the address bus indicates the maximum amount of RAM a chip can address.

The highway analogy in the "Data I/O Bus" section can be used to show how the address bus fits in. If the data bus is the highway and the size of the data bus is equivalent to the number of lanes, the address bus relates to the house number or street address. The size of the address bus is equivalent to the number of digits in the house address number. For example, if you live on a street in which the address is limited to a two-digit (base 10) number, no more than 100 distinct addresses (00–99) can exist for that street (102). Add another digit, and the number of available addresses increases to 1,000 (000–999), or 103.

Computers use the binary (base 2) numbering system, so a two-digit number provides only four unique addresses (00, 01, 10, and 11), calculated as 22. A three-digit number provides only eight addresses (000–111), which is 23. For example, the 8086 and 8088 processors use a 20-bit address bus that calculates as a maximum of 220 or 1,048,576 bytes (1MB) of address locations. Table 3.3 describes the memory-addressing capabilities of processors.

Table 3.3. Processor Memory-Addressing Capabilities

Processor Family

Address Bus

Bytes

Kilobytes (KB)

Megabytes (MB)

Gigabytes (GB)

Terabytes (TB)

8088/8086

20-bit

1,048,576

1,024

1

286/386SX

24-bit

16,777,216

16,384

16

386DX/486/Pentium/K6

32-bit

4,294,967,296

4,194,304

4,096

4

Pentium Pro, Pentium II, Pentium III, Celeron, Pentium 4, Athlon, Duron, Athlon 64

36-bit

68,719,476,736

67,108,864

65,536

64

Opteron

40-bit

1,099,511,627,776

1,073,741,824

1,048,576

1024

1

Itanium

44-bit

17,592,186,044,416

17,179,869,184

16,777,216

16,384

16

The data bus and address bus are independent, and chip designers can use whatever size they want for each. Usually, however, chips with larger data buses have larger address buses. The sizes of the buses can provide important information about a chip's relative power, measured in two important ways. The size of the data bus is an indication of the chip's information-moving capability, and the size of the address bus tells you how much memory the chip can handle.

Internal Registers (Internal Data Bus)

The size of the internal registers indicates how much information the processor can operate on at one time and how it moves data around internally within the chip. This is sometimes also referred to as the internal data bus. A register is a holding cell within the processor; for example, the processor can add numbers in two different registers, storing the result in a third register. The register size determines the size of data on which the processor can operate. The register size also describes the type of software or commands and instructions a chip can run. That is, processors with 32-bit internal registers can run 32-bit instructions that are processing 32-bit chunks of data, but processors with 16-bit registers can't. Most advanced processors today—chips from the 386 to the Pentium 4—use 32-bit internal registers and can therefore run the same 32-bit operating systems and software. The Itanium and Athlon 64 processors have 64-bit internal registers, which require new operating systems and software to fully be utilized.

Some very old processors have an internal data bus (made up of data paths and storage units called registers) that is larger than the external data bus. The 8088 and 386SX are examples of this structure. Each chip has an internal data bus twice the width of the external bus. These designs, which sometimes are called hybrid designs, usually are low-cost versions of a "pure" chip. The 386SX, for example, can pass data around internally with a full 32-bit register size; for communications with the outside world, however, the chip is restricted to a 16-bit-wide data path. This design enabled a systems designer to build a lower-cost motherboard with a 16-bit bus design and still maintain software and instruction set compatibility with the full 32-bit 386. However, both the 8088 and the 386SX had lower performance than the 8086 and 386DX processors at the same speeds.

Internal registers often are larger than the data bus, which means the chip requires two cycles to fill a register before the register can be operated on. For example, both the 386SX and 386DX have internal 32-bit registers, but the 386SX must "inhale" twice (figuratively) to fill them, whereas the 386DX can do the job in one "breath." The same thing would happen when the data is passed from the registers back out to the system bus.

The Pentium is an example of this type of design. All Pentiums have a 64-bit data bus and 32-bit registers—a structure that might seem to be a problem until you understand that the Pentium has two internal 32-bit pipelines for processing information. In many ways, the Pentium is like two 32-bit chips in one. The 64-bit data bus provides for very efficient filling of these multiple registers. Multiple pipelines are called superscalar architecture, which was introduced with the Pentium processor.

See "Pentium Processors," p. 128.


More advanced sixth-generation processors, such as the Pentium III, Athlon XP, and Pentium 4, have as many as six internal pipelines for executing instructions. Although some of these internal pipes are dedicated to special functions, these processors can execute as many as six (Pentium 4) or nine (Athlon XP) operations in one clock cycle.

Processor Modes

All Intel and Intel-compatible 32-bit processors (from the 386 on up) can run in several modes. Processor modes refer to the various operating environments and affect the instructions and capabilities of the chip. The processor mode controls how the processor sees and manages the system memory and the tasks that use it.

The three modes of possible operation are as follows:

  • Real mode (16-bit software)

  • Protected mode (32-bit software)

  • Virtual real mode (16-bit programs within a 32-bit environment)

Real Mode

The original IBM PC included an 8088 processor that could execute 16-bit instructions using 16-bit internal registers and could address only 1MB of memory using 20 address lines. All original PC software was created to work with this chip and was designed around the 16-bit instruction set and 1MB memory model. For example, DOS and all DOS software, Windows 1.x through 3.x, and all Windows 1.x through 3.x applications are written using 16-bit instructions. These 16-bit operating systems and applications are designed to run on an original 8088 processor.


See "Address Bus," p. 46.


Later processors such as the 286 could also run the same 16-bit instructions as the original 8088, but much faster. In other words, the 286 was fully compatible with the original 8088 and could run all 16-bit software just the same as an 8088, but, of course, that software would run faster. The 16-bit instruction mode of the 8088 and 286 processors has become known as real mode. All software running in real mode must use only 16-bit instructions and live within the 20-bit (1MB) memory architecture it supports. Software of this type is usually single-tasking—only one program can run at a time. No built-in protection exists to keep one program from overwriting another program or even the operating system in memory, so if more than one program is running, one of them could bring the entire system to a crashing halt.

Protected (32-Bit) Mode

Then came the 386, which was the PC industry's first 32-bit processor. This chip could run an entirely new 32-bit instruction set. To take full advantage of the 32-bit instruction set, a 32-bit operating system and a 32-bit application were required. This new 32-bit mode was referred to as protected mode, which alludes to the fact that software programs running in that mode are protected from overwriting one another in memory. Such protection helps make the system much more crash-proof because an errant program can't very easily damage other programs or the operating system. In addition, a crashed program can be terminated while the rest of the system continues to run unaffected.

Knowing that new operating systems and applications—which take advantage of the 32-bit protected mode—would take some time to develop, Intel wisely built a backward-compatible real mode into the 386. That enabled it to run unmodified 16-bit operating systems and applications. It ran them quite well—much more quickly than any previous chip. For most people, that was enough. They did not necessarily want any new 32-bit software; they just wanted their existing 16-bit software to run more quickly. Unfortunately, that meant the chip was never running in the 32-bit protected mode, and all the features of that capability were being ignored.

When a high-powered processor such as a Pentium 4 is running DOS (real mode), it acts like a "Turbo 8088." Turbo 8088 means the processor has the advantage of speed in running any 16-bit programs; it otherwise can use only the 16-bit instructions and access memory within the same 1MB memory map of the original 8088. Therefore, if you have a 256MB Pentium 4 or Athlon system running Windows 3.x or DOS, you are effectively using only the first megabyte of memory, leaving the other 255MB largely unused!

New operating systems and applications that ran in the 32-bit protected mode of the modern processors were needed. Being stubborn, we resisted all the initial attempts at getting switched over to a 32-bit environment. It seems that as a user community, we are very resistant to change and would be content with our older software running faster rather than adopting new software with new features. I'll be the first one to admit that I was one of those stubborn users myself!

Because of this resistance, true 32-bit operating systems such as Unix or variants (such as Linux), OS/2, and even Windows NT/2000 or XP have taken a long time in getting a mainstream share in the PC marketplace. Windows XP is the first full 32-bit OS that has become a true mainstream product, and that is primarily because Microsoft has coerced us in that direction with Windows 95, 98, and Me (which are mixed 16-/32-bit systems). Windows 3.x was the last full 16-bit operating system. In fact, it was not really considered a complete operating system because it ran on top of DOS.

The Itanium processor family and the AMD Opteron add 64-bit native capability to the table for servers, whereas the AMD Athlon 64 provides this capability for desktop computers. Both processors run all the existing 32-bit software, but to fully take advantage of the processor, a 64-bit OS and applications are required. Microsoft has released 64-bit versions of Windows XP, and several companies have released 64-bit applications for networking and workstation use.

Note

The Intel Itanium family and the AMD Athlon 64/Opteron use different 64-bit architectures. Thus, 64-bit software written for one will not work on the other without being recompiled by the software vendor. This means that software written specifically for the Intel 64-bit architecture will not run on the AMD 64-bit processors and vice versa.

Virtual Real Mode

The key to the backward compatibility of the Windows 32-bit environment is the third mode in the processor: virtual real mode. Virtual real is essentially a virtual real mode 16-bit environment that runs inside 32-bit protected mode. When you run a DOS prompt window inside Windows, you have created a virtual real mode session. Because protected mode enables true multitasking, you can actually have several real mode sessions running, each with its own software running on a virtual PC. These can all run simultaneously, even while other 32-bit applications are running.

Note that any program running in a virtual real mode window can access up to only 1MB of memory, which that program will believe is the first and only megabyte of memory in the system. In other words, if you run a DOS application in a virtual real window, it will have a 640KB limitation on memory usage. That is because there is only 1MB of total RAM in a 16-bit environment and the upper 384KB is reserved for system use. The virtual real window fully emulates an 8088 environment, so that aside from speed, the software runs as if it were on an original real mode-only PC. Each virtual machine gets its own 1MB address space, an image of the real hardware BIOS routines, and emulation of all other registers and features found in real mode.

Virtual real mode is used when you use a DOS window to run a DOS or Windows 3.x 16-bit program. When you start a DOS application, Windows creates a virtual DOS machine under which it can run.

One interesting thing to note is that all Intel and Intel-compatible (such as AMD and Cyrix) processors power up in real mode. If you load a 32-bit operating system, it automatically switches the processor into 32-bit mode and takes control from there.

It's also important to note that some 16-bit (DOS and Windows 3.x) applications misbehave in a 32-bit environment, which means they do things that even virtual real mode does not support. Diagnostics software is a perfect example of this. Such software does not run properly in a real-mode (virtual real) window under Windows. In that case, you can still run your Pentium 4 in the original no-frills real mode by either booting to a DOS floppy or, in the case of Windows 9x (excluding Me), interrupting the boot process and commanding the system to boot plain DOS. This is accomplished on Windows 9x systems by pressing the F8 key when you see the prompt Starting Windows... on the screen or immediately after the beep when the power on self test (POST) is completed. In the latter case, it helps to press the F8 key multiple times because getting the timing just right is difficult and Windows 9x looks for the key only during a short two-second time window.

If successful, you will then see the Startup menu. You can select one of the command prompt choices that tell the system to boot plain 16-bit real mode DOS. The choice of Safe Mode Command Prompt is best if you are going to run true hardware diagnostics, which do not normally run in protected mode and should be run with a minimum of drivers and other software loaded.

Note that even though Windows Me is based on Windows 98, Microsoft removed the Startup menu option in an attempt to further wean us from any 16-bit operation. Windows NT, 2000, and XP also lack the capability to interrupt the startup in this manner. For these operating systems, you need a Startup Disk (floppy), which you can create and then use to boot the system in real mode. Generally, you would do this to perform certain maintenance procedures, such as running hardware diagnostics or doing direct disk sector editing.

Although real mode is used by 16-bit DOS and "standard" DOS applications, special programs are available that "extend" DOS and allow access to extended memory (over 1MB). These are sometimes called DOS extenders and usually are included as part of any DOS or Windows 3.x software that uses them. The protocol that describes how to make DOS work in protected mode is called DOS protected mode interface (DPMI).

DPMI was used by Windows 3.x to access extended memory for use with Windows 3.x applications. It allowed these programs to use more memory even though they were still 16-bit programs. DOS extenders are especially popular in DOS games because they enable them to access much more of the system memory than the standard 1MB most real mode programs can address. These DOS extenders work by switching the processor in and out of real mode. In the case of those that run under Windows, they use the DPMI interface built into Windows, enabling them to share a portion of the system's extended memory.

Another exception in real mode is that the first 64KB of extended memory is actually accessible to the PC in real mode, despite the fact that it's not supposed to be possible. This is the result of a bug in the original IBM AT with respect to the 21st memory address line, known as A20 (A0 is the first address line). By manipulating the A20 line, real-mode software can gain access to the first 64KB of extended memory—the first 64KB of memory past the first megabyte. This area of memory is called the high memory area (HMA).

Processor Speed Ratings

A common misunderstanding about processors is their different speed ratings. This section covers processor speed in general and then provides more specific information about Intel, AMD, and VIA/Cyrix processors.

A computer system's clock speed is measured as a frequency, usually expressed as a number of cycles per second. A crystal oscillator controls clock speeds using a sliver of quartz sometimes contained in what looks like a small tin container. Newer systems include the oscillator circuitry in the motherboard chipset, so it might not be a visible separate component on newer boards. As voltage is applied to the quartz, it begins to vibrate (oscillate) at a harmonic rate dictated by the shape and size of the crystal (sliver). The oscillations emanate from the crystal in the form of a current that alternates at the harmonic rate of the crystal. This alternating current is the clock signal that forms the time base on which the computer operates. A typical computer system runs millions of these cycles per second, so speed is measured in megahertz. (One hertz is equal to one cycle per second.) An alternating current signal is like a sine wave, with the time between the peaks of each wave defining the frequency (see Figure 3.1).

Figure 3.1. Alternating current signal showing clock cycle timing.

graphics/03fig01.gif

Note

The hertz was named for the German physicist Heinrich Rudolf Hertz. In 1885, Hertz confirmed the electromagnetic theory, which states that light is a form of electromagnetic radiation and is propagated as waves.

A single cycle is the smallest element of time for the processor. Every action requires at least one cycle and usually multiple cycles. To transfer data to and from memory, for example, a modern processor such as the Pentium 4 needs a minimum of three cycles to set up the first memory transfer and then only a single cycle per transfer for the next three to six consecutive transfers. The extra cycles on the first transfer typically are called wait states. A wait state is a clock tick in which nothing happens. This ensures that the processor isn't getting ahead of the rest of the computer.

See "SIMMs, DIMMs, and RIMMs," p. 441.


The time required to execute instructions also varies:

  • 8086 and 8088. The original 8086 and 8088 processors take an average of 12 cycles to execute a single instruction.

  • 286 and 386. The 286 and 386 processors improve this rate to about 4.5 cycles per instruction.

  • 486. The 486 and most other fourth-generation Intel-compatible processors, such as the AMD 5x86, drop the rate further, to about 2 cycles per instruction.

  • Pentium, K6 series. The Pentium architecture and other fifth-generation Intel-compatible processors, such as those from AMD and Cyrix, include twin instruction pipelines and other improvements that provide for operation at one or two instructions per cycle.

  • Pentium Pro, Pentium II/III/4/Celeron, and Athlon/Athlon XP/Duron. These P6 and P7 (sixth- and seventh-generation) processors can execute as many as three or more instructions per cycle.

Different instruction execution times (in cycles) make comparing systems based purely on clock speed or number of cycles per second difficult. How can two processors that run at the same clock rate perform differently with one running "faster" than the other? The answer is simple: efficiency.

The main reason the 486 was considered fast relative to a 386 is that it executes twice as many instructions in the same number of cycles. The same thing is true for a Pentium; it executes about twice as many instructions in a given number of cycles as a 486. Therefore, given the same clock speed, a Pentium is twice as fast as a 486, and consequently a 133MHz 486 class processor (such as the AMD 5x86-133) is not even as fast as a 75MHz Pentium! That is because Pentium megahertz are "worth" about double what 486 megahertz are worth in terms of instructions completed per cycle. The Pentium II and III are about 50% faster than an equivalent Pentium at a given clock speed because they can execute about that many more instructions in the same number of cycles.

Comparing relative processor performance, you can see that a 1GHz Pentium III is about equal to a (theoretical) 1.5GHz Pentium, which is about equal to a 3GHz 486, which is about equal to a 6GHz 386 or 286, which is about equal to a 12GHz 8088. The original PC's 8088 ran at only 4.77MHz; today, we have systems that are comparatively at least 2,500 times faster! As you can see, you must be careful in comparing systems based on pure MHz alone because many other factors affect system performance.

Evaluating CPU performance can be tricky. CPUs with different internal architectures do things differently and can be relatively faster at certain things and slower at others. To fairly compare various CPUs at different clock speeds, Intel has devised a specific series of benchmarks called the iCOMP (Intel Comparative Microprocessor Performance) index that can be run against processors to produce a relative gauge of performance. The iCOMP index benchmark has been updated twice and released in original iCOMP, iCOMP 2.0, and now iCOMP 3.0 versions.

Table 3.4 shows the relative power, or iCOMP 2.0 index, for several processors.

Note

Note that this reflects the most recent iCOMP index. Intel uses other benchmarks for the Pentium 4.

Table 3.4. Intel iCOMP 2.0 Index Ratings

Processor

iCOMP 2.0 Index

Pentium 75

67

Pentium 100

90

Pentium 120

100

Pentium 133

111

Pentium 150

114

Pentium 166

127

Pentium 200

142

Pentium-MMX 166

160

Pentium Pro 150

168

Pentium-MMX 200

182

Pentium Pro 180

197

Pentium-MMX 233

203

Celeron 266

213

Pentium Pro 200

220

Celeron 300

226

Pentium II 233

267

Celeron 300A

296

Pentium II 266

303

Celeron 333

318

Pentium II 300

332

Pentium II OverDrive 300

351

Pentium II 333

366

Pentium II 350

386

Pentium II OverDrive 333

387

Pentium II 400

440

Pentium II 450

483

The iCOMP 2.0 index is derived from several independent benchmarks and is a stable indication of relative processor performance. The benchmarks balance integer with floating-point and multimedia performance.

When Intel developed the Pentium III, it discontinued the iCOMP 2.0 index and released the iCOMP 3.0 index. iCOMP 3.0 is an updated benchmark that incorporates an increasing use of 3D, multimedia, and Internet technology and software, as well as the increasing use of rich data streams and computer-intensive applications, including 3D, multimedia, and Internet technology. iCOMP 3.0 combines six benchmarks: WinTune 98 Advanced CPU Integer test, CPUmark 99, 3D WinBench 99-3D Lighting and Transformation Test, MultimediaMark 99, Jmark 2.0 Processor Test, and WinBench 99-FPU WinMark. These newer benchmarks take advantage of the SSE (Streaming SIMD Extensions), additional graphics and sound instructions built into the PIII. Without taking advantage of these new instructions, the PIII would benchmark at about the same speed as a PII at the same clock rate.

Table 3.5 shows the iCOMP Index 3.0 ratings for Pentium II and III processors.

Table 3.5. Intel iCOMP 3.0 Ratings

Processor

iCOMP 3.0 Index

Pentium II 350

1000

Pentium II 450

1240

Pentium III 450

1500

Pentium III 500

1650

Pentium III 550

1780

Pentium III 600

1930

Pentium III 600E

2110

Pentium III 650

2270

Pentium III 700

2420

Pentium III 750

2540

Pentium III 800

2690

Pentium III 866

2890

Pentium III 1000

3280

Intel currently rates the Pentium 4 using the commercially available BAPCo SYSmark 2002 benchmark suite. The ratings for the various versions of the chip are shown in Table 3.6.

Table 3.6. Intel Pentium 4 SYSmark 2002 Ratings

Pentium 4

SYSmark 2002

1.50GHz

159

1.60GHz

166

1.70GHz

174

1.80GHz

179

1.90GHz

186

2.00GHz

193

2.00AGHz[1]

212

2.20GHz[1]

227

2.26GHz[2]

239

2.40GHz[2]

245

2.53GHz[2]

254

2.80GHz[2]

295

3.06GHz[2]

315

[1] 0.13 micron process, 512K L.2 Cache, 400MHz CUP bus

[2] 0.13 micron process, 512K L2 Cache, 533MHz CUP bus

SYSmark 2002 is a commercially available application-based benchmark that reflects the normal usage of business users employing modern Internet content creation and Microsoft Office applications. SYSmark 2002 incorporates the following applications, which it uses for testing:

  • Internet Content Generation. Includes Adobe Photoshop 6.01, Premiere 6.0, Microsoft Windows Media Encoder 7.1, Macromedia Dreamweaver 4, and Flash 5

  • Office Productivity. Includes Microsoft Word 2002, Excel 2002, PowerPoint 2002, Outlook 2002, Access 2002, Netscape Communicator 6.0, Dragon NaturallySpeaking Preferred v.5, WinZip 8.0, and McAfee VirusScan 5.13

SYSmark runs various scripts to do actual work using these applications and is used by many companies for testing and comparing PC systems and components. It is a much more modern and real-world benchmark than the iCOMP benchmark Intel previously used, and because it is available to anybody, the results can be independently verified. SYSmark 2002 can be purchased from BAPCo at www.bapco.com.

Processor Speeds and Markings Versus Motherboard Speed

Another confusing factor when comparing processor performance is that virtually all modern processors since the 486DX2 run at some multiple of the motherboard speed. For example, a Pentium 4 2.53GHz chip runs at a multiple of 19/4 (4.75x) times the motherboard speed of 533MHz, whereas an AMD Athlon XP 2800+ using the latest Barton core (2.083GHz) runs at 75/12 (6.25x) times the motherboard speed of 33MHz. Up until early 1998, most motherboards ran at 66MHz or less. Starting in April 1998, Intel released both processors and motherboard chipsets designed to run at 100MHz.

By late 1999, chipsets and motherboards running at 133MHz became available to support the newer Pentium III processors. At that time, AMD Athlon motherboards and chipsets were introduced running a 100MHz clock but using a double transfer technique for an effective 200MHz data rate between the Athlon processor and the main chipset North Bridge chip.

In 2000 and 2001, processor bus speeds advanced further to 266MHz for the AMD Athlon and Intel Itanium and 400MHz to 533MHz for the Pentium 4. In 2002, the AMD Athlon XP processors began to support a processor bus speed of 333MHz. In 2003, Intel introduced the first Pentium 4 processors that supported a processor bus speed of 800MHz. Typically, the speed of the CPU bus is selected to match whatever memory types Intel and AMD want to support. Most of the modern CPU bus speeds are based on the speeds of the CPU as well as the available SDRAM, DDR SDRAM, and RDRAM memory. Note that the processor bus speed of Pentium 4 processors is not directly equivalent to a particular memory speed.

Note

See Chapter 4, "Motherboards and Buses," for more information on chipsets and bus speeds.

You can set the motherboard speed and multiplier setting via jumpers or another configuration mechanism (such as BIOS setup) on the motherboard. Modern systems use a variable-frequency synthesizer circuit usually found in the main motherboard chipset to control the motherboard and CPU speed. Most Pentium motherboards have three or four speed settings. The processors used today are available in a variety of versions that run at different frequencies based on a given motherboard speed. For example, most of the Pentium chips run at a speed that is some multiple of the true motherboard speed. For example, Pentium-class processors and motherboards run at the speeds shown in Table 3.7.

Note

For information on specific AMD, Cyrix, or VIA processors, see their respective sections later in this chapter.

Table 3.7. Intel Processor and Motherboard Speeds

CPU Type

CPU Speed (MHz)

CPU Clock Multiplier

Motherboard Speed (MHz)

Pentium

75

1.5x

50

Pentium

60

1x

60

Pentium

90

1.5x

60

Pentium

120

2x

60

Pentium

150

2.5x

60

Pentium/Pentium Pro

180

3x

60

Pentium

66

1x

66

Pentium

100

1.5x

66

Pentium

133

2x

66

Pentium/Pentium Pro

166

2.5x

66

Pentium/Pentium Pro

200

3x

66

Pentium/Pentium II

233

3.5x

66

Pentium(Mobile)/Pentium II/Celeron

266

4x

66

Pentium II/Celeron

300

4.5x

66

Pentium II/Celeron

333

5x

66

Pentium II/Celeron

366

5.5x

66

Celeron

400

6x

66

Celeron

433

6.5x

66

Celeron

466

7x

66

Celeron

500

7.5x

66

Celeron

533

8x

66

Celeron

566

8.5x

66

Celeron

600

9x

66

Celeron

633

9.5x

66

Celeron

667

10x

66

Celeron

700

10.5x

66

Celeron

733

11x

66

Celeron

766

11.5x

66

Pentium II

350

3.5x

100

Pentium II

400

4x

100

Pentium II/III

450

4.5x

100

Pentium III

500

5x

100

Pentium III

550

5.5x

100

Pentium III

600

6x

100

Pentium III

650

6.5x

100

Pentium III

700

7x

100

Pentium III

750

7.5x

100

Pentium III/Celeron

800

8x

100

Pentium III/Celeron

850

8.5x

100

Pentium III/Celeron

900

9x

100

Pentium III/Celeron

950

9.5x

100

Pentium III/Celeron

1000

10x

100

Pentium III/Celeron

1100

11x

100

Pentium III/Celeron

1200

12x

100

Pentium III/Celeron

1300

13x

100

Pentium III/Celeron

1400

14x

100

Pentium III

533

4x

133

Pentium III

600

4.5x

133

Pentium III

667

5x

133

Pentium III

733

5.5x

133

Pentium III

800

6x

133

Pentium III

866

6.5x

133

Pentium III

933

7x

133

Pentium III

1000

7.5x

133

Pentium III

1066

8x

133

Pentium III

1133

8.5x

133

Pentium III

1200

9x

133

Pentium III

1266

9.5x

133

Pentium III

1333

10x

133

Pentium III

1400

10.5x

133

Pentium 4

1300

3.25x

400

Pentium 4

1400

3.5x

400

Pentium 4

1500

3.75x

400

Pentium 4

1600

4x

400

Pentium 4/Celeron

1700

4.25x

400

Pentium 4

1800

4.5x

400

Pentium 4

1900

4.75x

400

Pentium 4

2000

5x

400

Pentium 4

2200

5.5x

400

Pentium 4

2400

6x

400

Pentium 4

2266

4.25x

533

Pentium 4

2400

4.5x

533

Pentium 4

2500

6.25X

400

Pentium 4

2533

4.75x

533

Pentium 4

2600

6.5x

400

Pentium 4

2660

5x

533

Pentium 4

2800

5.25x

533

Pentium 4

3060

5.75x

533

Pentium 4

3200

4x

800

Pentium 4

3400

4.25x

800

Itanium

733

2.75x

266

Itanium

800

3x

266

Itanium 2

1000

2.5x

400

If all other variables are equal—including the type of processor, the number of wait states (empty cycles) added to different types of memory accesses, and the width of the data bus—you can compare two systems by their respective clock rates. However, the construction and design of the memory controller (contained in the motherboard chipset) as well as the type and amount of memory installed can have an enormous effect on a system's final execution speed.

In building a processor, a manufacturer tests it at various speeds, temperatures, and pressures. After the processor is tested, it receives a stamp indicating the maximum safe speed at which the unit will operate under the wide variation of temperatures and pressures encountered in normal operation. These ratings are clearly marked on the processor package.

Cyrix Processor Speeds

Cyrix/IBM/VIA 6x86 processors—which were designed to compete with the Intel Pentium, early Pentium II, and AMD K5 and K6 series of processors—used a PR (performance rating) scale that was not equal to the true clock speed in megahertz. For example, the Cyrix 6x86MX/MII-PR366 actually runs at only 250MHz (2.5x100MHz). This is a little misleading—you must set up the motherboard as if a 250MHz processor were being installed, instead of the 366MHz you might suspect. Unfortunately, this led people to believe these systems were faster than they really were.

Table 3.8 shows the relationship between the Cyrix 6x86, 6x86MX, and M-II P-Ratings versus the actual chip speeds in MHz.

Table 3.8. Cyrix P-Ratings Versus Actual Chip Speeds in MHz

CPU Type

P-Rating

Actual CPU Speed (MHz)

Clock Multiplier

Motherboard Speed (MHz)

6x86

PR90

80

2x

40

6x86

PR120

100

2x

50

6x86

PR133

110

2x

55

6x86

PR150

120

2x

60

6x86

PR166

133

2x

66

6x86

PR200

150

2x

75

6x86MX

PR133

100

2x

50

6x86MX

PR133

110

2x

55

6x86MX

PR150

120

2x

60

6x86MX

PR150

125

2.5x

50

6x86MX

PR166

133

2x

66

6x86MX

PR166

137.5

2.5x

55

6x86MX

PR166

150

3x

50

6x86MX

PR166

150

2.5x

60

6x86MX

PR200

150

2x

75

6x86MX

PR200

165

3x

55

6x86MX

PR200

166

2.5x

66

6x86MX

PR200

180

3x

60

6x86MX

PR233

166

2x

83

6x86MX

PR233

187.5

2.5x

75

6x86MX

PR233

200

3x

66

6x86MX

PR266

207.5

2.5x

83

6x86MX

PR266

225

3x

75

6x86MX

PR266

233

3.5x

66

M-II

PR300

225

3x

75

M-II

PR300

233

3.5x

66

M-II

PR333

250

3x

83

M-II

PR366

250

2.5x

100

M-II

PR400

285

3x

95

M-II

PR433

300

3x

100

Cyrix III

PR433

350

3.5x

100

Cyrix III

PR466

366

3x

122

Cyrix III

PR500

400

3x

133

Cyrix III

PR533

433

3.5x

124

Cyrix III

PR533

450

4.5x

100

Note that a given P-Rating can mean several different actual CPU speeds—for example, a Cyrix 6x86MX-PR200 might actually be running at 150MHz, 165MHz, 166MHz, or 180MHz, but not at 200MHz.

This P-Rating was supposed to indicate speed in relation to an Intel Pentium processor, but the processor being compared to in this case is the original non-MMX, small L1 cache version running on an older motherboard platform with an older chipset and slower technology memory. The P-Rating did not compare well against the Celeron, Pentium II, or Pentium III processors. In other words, the MII-PR366 really ran at only 250MHz and compared well against Intel processors running at closer to that speed, making the ratings somewhat misleading.

AMD Processor Speeds

AMD's Athlon XP processors are excellent performers and have several notable features, but they unfortunately bring with them a resurrection of the infamous Cyrix/AMD performance rating. This is a simulated MHz number that does not indicate the actual speed of the chip but instead indicates an estimate of the relative MHz of a first-generation Intel Pentium 4 that would be approximately equal in performance. If this sounds confusing, that's because it is!

Table 3.9 shows the P-Rating and actual speeds of the AMD K5, K6, Athlon, Athlon XP, and Duron processors.

Table 3.9. AMD P-Ratings Versus Actual Chip Speeds in MHz

CPU Type

P-Rating

Actual CPU Speed (MHz)

Clock Multiplier

Motherboard Speed (MHz)

K5

75

75

1.5x

50

K5

90

90

1.5x

60

K5

100

100

1.5x

66

K5

120

90

1.5x

60

K5

133

100

1.5x

66

K5

166

116

1.75x

66

K6

166

166

2.5x

66

K6

200

200

3x

66

K6

233

233

3.5x

66

K6

266

266

4x

66

K6

300

300

4.5x

66

K6-2

233

233

3.5x

66

K6-2

266

266

4x

66

K6-2

300

300

4.5x

66

K6-2

300

300

3x

100

K6-2

333

333

5x

66

K6-2

333

333

3.5x

95

K6-2

350

350

3.5x

100

K6-2

366

366

5.5x

66

K6-2

380

380

4x

95

K6-2

400

400

6x

66

K6-2

400

400

4x

100

K6-2

450

450

4.5x

100

K6-2

475

475

5x

95

K6-2

500

500

5x

100

K6-2

533

533

5.5x

97

K6-2

550

550

5.5x

100

K6-3

400

400

4x

100

K6-3

450

450

4.5x

100

Athlon

500

500

2.5x

200

Athlon

550

550

2.75x

200

Athlon/Duron

600

600

3x

200

Athlon/Duron

650

650

3.25x

200

Athlon/Duron

700

700

3.5x

200

Athlon/Duron

750

750

3.75x

200

Athlon/Duron

800

800

4x

200

Athlon/Duron

850

850

4.25x

200

Athlon/Duron

900

900

4.5x

200

Athlon/Duron

950

950

4.75x

200

Athlon/Duron

1000

1000

5x

200

Athlon/Duron

1100

1100

5.5x

200

Athlon/Duron

1200

1200

6x

200

Athlon/Duron

1300

1300

6.5x

200

Athlon/Duron

1400

1400

7x

200

Athlon

1000

1000

3.75x

266

Athlon

1133

1133

4.25x

266

Athlon

1200

1200

4.5x

266

Athlon

1333

1333

5x

266

Athlon

1400

1400

5.25x

266

Athlon XP

1500+

1333

5x

266