The Megahertz Myth: A concept that a computer containing a higher clocked processor
is always faster than a slower clocked one. This concept is without merit, as total system performance
is not entirely related to its processor's clock speed
Differently designed processors can take different amounts of time to process the same instructions.
Picture three child
ren. You tell all of them the same command, "Please bring me a package of sugar
." The first goes outside
, runs around the house, walks back inside, ventures into every room, finally arrives in the kitchen
, obtains a package of sugar and returns to you with it. The second assume
s there is no sugar in the house, walks to the store
, buys a package of sugar, walks home and gives it to you. The third walks directly into the kitchen, picks up a package of sugar, walks back over to you and hands you the sugar. While all of the children followed the same instruction, they each did it differently and took different amounts of time.
Performance between different types of processors can vary for the same reason. A processor that takes two clock cycle
) to execute instruction X is going to take twice as long as a processor that can execute the same instruction in a single clock cycle
. In such a situation, the slower executing processor would have to run at TWICE the clock rate as the faster one to match its performance. Differently designed processors may also have varying amounts of cache memory
. If data
requested by the processor does not reside in cache, the processor must make a request to the slower memory subsystem
. In the prior child analogy, this would be tantamount the child who has to walk to the store because he cannot remember if there is any sugar available in the kitchen.
Application specific performance.
Just like the child who ran around aimlessly before completing the commanded instruction, some processors are designed to do more than one task (thread
) at a time. If the child had been told to retrieve an item from outside and every room he had ventured in, he would have accomplished more in the time he had spent than the other single-task oriented children. When an application has been written to take advantage of features of the processor that expedite code execution
, the application is said to be optimize
d for that particular processor. How efficiently an application makes use of the available processing power can have a great impact on how well it performs.
Applications optimized for one type of processor may even run more slowly on others. For example, if the command "Please bring me object X from each room." were given to the hypothetical single-task oriented child, he would go to a room, return with an object, then go to the next room, return with the next object, etc. This instruction would take longer for this child to complete and would be more efficiently stated as separate instructions to explicitly tell the child every step involved, "Go in to room A, gather object X, go in to room B, gather object X, go outside, gather object X, bring all objects to me." While this method would appear to work for the multi-task oriented child as well, keep in mind that EVERY instruction given to him causes him to run around the entire house and into every room, making the process very inefficient
. This is why certain applications can have such massive performance variation
s between similarly clocked processors
The speed of the processor is only one factor in total system performance.
You could purchase a car with an enormous engine
; however, expecting the engine alone to be the single determining factor
to the car's performance would be fool
ish. While the car will have ample horsepower
, without the proper transmission
, quality tire
s and a proportionately weighted frame - the car's performance will be less than optimal
. Computers are no different. Graphics
and disk subsystem
s, as well as RAM
can play a significant part in a system's total performance. Ideally, these components should be properly matched. An underachieving processor
paired up with exuberant amounts of RAM
and high-performance disk
hardware may appear to outperform its faster-processor-bearing siblings
; however, the vast differences will be brought to light when running processor-intensive software
. Conversely, a powerful processor
with poor-performing subsystems will result in delays while the processor is waiting for the rest of the system to "catch up". A system's overall performance is really determined by how well the system's individual parts work together as a whole, not the MHz
rating of the processor.