What are we really saying when one processor is faster than another? There are many myths and fallacies when making such a statement so lightly. However, understanding such a basic concept can be confusing, especially given the existence of the MHz myth.
The user without knowledge can find two identical processors in terms of their basic specifications. Same number of cores, same clock speed measured in MHz or GHz. It is at this point that, given the enormous number of models on the market, it is lost due to not understanding the information.
When is a processor faster?
When several factors are given, but especially there are three: architecture, clock speed and number of cores . Although in general the first is usually ignored due to the fact that it is not quantifiable. Which leads to confusion about how fast a processor is.
We tend to think that how fast a processor is is marked by the clock speed, when what is marked is the number of pulses that are made per second. Today, both a CPU and a GPU work in stages to execute a program instruction. Also, depending on the type of instruction, the number of stages varies. Think of it in a factory where each of the elements of the assembly line moves at the speed of a clock tick.
That is, when the first instruction is in the second stage, the second enters the first and so on until the first is resolved. What is sought is to measure the average number of instructions that are completed per clock cycle. The fastest processor will be the one with the highest figure of all. Obviously, having a better clock speed and a higher number of cores helps. Although, in the same way that not all 110 hp cars are equally fast, not all 3 GHz CPUs are equally fast.
However, it must be taken into account that these measurements are not always completely accurate, since we can find the following three problems, which affect how fast the processor will go.
- The units in charge of solving certain instructions are fully or partially occupied.
- The data required by one or more instructions is not found in the nearest registers or caches. So there is an additional delay.
- The program has a specific selection of instructions that harms or benefits that model of processor.
The most problematic bottleneck is that of memory , given that the speed of this has not evolved in the same way, the cache memory patch has had to be pulled at different levels. Initially this was a single tier, but as the latency between CPU and RAM has increased new tiers have been added. A few years ago it was unthinkable that a processor had 3 levels of cache, today it is a general rule, even in graphics chips or GPUs. Not surprisingly, AMD‘s RDNA 2 architecture on PC already uses L3 cache.
Another problem is that of contention, this occurs when two instructions that are operating in parallel have to share the same processor resources. During the design of a processor in order to save space and transistors, it happens that some instructions share resources and combine them, at the same time assuming that they are resolved in more cycles than usual. When designing a CPU, engineers take care that this problem does not occur with the most common combinations of instructions.