Advocacy

  Myths
  Press

Dojo (HowTo)

  General
  Hack
  Hardware
  Interface
  Software

Reference

  Standards
  People
  Forensics

Markets

  Web

Museum

  CodeNames
  Easter Eggs
  History
  Innovation
  Sightings

News

  Opinion

Other

  Martial Arts
  ITIL
  Thought


UNDERSTANDING CPU PERFORMANCE
The CPU - one of the most critical parts of performance.

By:David K. Every
©Copyright 1999


This is a pretty quick fly-by on the aspects of a CPU's performance, if you feel you need more basics, then see PowerPC in the MacDojo section, for a more "lay-persons" breakdown. Or you can see (X) for a more detailed description about the parts of a PowerPC.

The CPU is the workhorse of your computer - the equivelent of a motor in a Car. Now the Mac has a much better motor (the PowerPC processor), but that is not all there is to the car (computer). This is probably the most important part (for most things) but certainly not the only part.

There are many ways to measure CPU performance, these are called benchmarks, and in almost all of them the Mac comes out the winner, including the following -

  • Byte - PPC has huge lead
  • SPEC - PPC has slight lead
  • Java timings PPC has huge lead (w/non-JITc)
  • Photoshop PPC has lead
  • Mathematica PPC has lead

Check the Performance page to see the how and why (if you care).However, let me explain what it all means.

Measuring MHz to figure out how fast your CPU is, is like measure RPM's in a car to decide how fast it will go. A 1hp motor running at 5,000 rpm's is not going to make the same car go faster than a 300hp motor at 3,000 rpm's. However, if you look at the same motor, and one is running at 500 rpm's and another is running at 3,000 - then it is likely that the latter will be faster.

So MHz is a silly rating. It rates how fast a particular chip is going - which is an OK indicator relative to other versions of that exact same chip, but the ratings are almost worthless when comparing across processors. (Most application tests done cross platform rate the Macs as anywhere from 40%-400% faster than PC's at the same clock rate or MHz).

Here are some of the contributing parts of processing speed in a computer (CPU)-

  • MHz - how fast the processor is clocked - or how many millions of times per second the computer tries to excecute instruction(s). (M = mega / million, Hz = per second). However, if MHz is what you care about, the PPC's are usually faster than the pentiums - however the PPC's are much faster because of the following reasons.
     
  • Superscalar - this just means that some computers (PPC's) can excecute more than one instruction at one time. In fact the PowerPC's can complete 3 or 5 instructions at the same time, and be working on more than that. Since the PPC's are better at this than pentiums, the real world results are often superior as well.
     
  • Cache / Prefetch - since memory is much slower than the computer is, processor often put special high-speed Memory on themselves. One part of the processor tries to read ahead and keep this high-speed memory filled for the processor. When the processor does not have to go to main memory (called a cache stall) it is much faster. So how fast and good the cache and prefetch system is, will make a big difference on processors speed. There is often multiple layers of cache - labeled - L1, L2, L3 - (Primary, secondary and tertiary) - they all contribute to performance. PowerPC's (Macs) generally have larger caches.
     
  • Bus speed - since processors (and cache systems) do have to go to memory, the speed of the System bus is important for these conditions.
     
  • Pipelining - this is subtle aspect that designers use to help with the prefetch system. Think of it as how many stages in manufacturing process it takes to make something (an assembly line). Once you get lots of things coming through all these stages (pipes) then the work goes fine, but to change everything, you must wait for all the stuff to clear out, change processes, and then start up again. So depth of pipe is not as important as efficiency of its design. But a deep pipe allows for many people to each do one thing, and can help with a design.
     
  • Instruction size - some processors deal with larger amounts of data in the same time. For example, dealing with 64 bits at a time is faster than 32 bits if you want to move the same amount of data from one place to another.
     
    • PC's have more legacy 16 bit code - these instructions only work with 16 bits at a time (often) while the PPC's (Macs) often deal with floating point and 64 bits at a time. This is a reason that newly written apps can be faster than older apps on the same processor.
       
  • Instruction set efficiency. Each processor has its own set of instructions (ways of asking it to do things). Some descriptions are more efficient in the real world than others. Primarily the newer the design, the more efficient the processor is. PowerPC's are based on designs from 3-5 years ago, while most of the Pentiums instruction set design comes from the 1970's (that 187 in dog years). See RISC vs CISC for more on this.

Conclusion

Processor speed is a pretty complex issue - it is not just MHz. Overall the Macs are much faster in processor design - but users often care more about System design and overall performance (not just the processor speed). So don't be trapped into thinking that CPU is everything - it isn't, it is one part of a larger picture. But if you care about CPU speed, then PPC's and PowerMacs blow the competition away.


Created: 02/06/97
Updated: 11/09/02


Top of page

Top of Section

Home