There are three major factors that affect CPU performance. You may have noticed that in previous sections we have referred to the processor and not the CPU – it is important to be aware that these two things are different.
A CPU, or Central Processing Unit can be made up of one or more processors working together or performing separate tasks. When they are combined into one unit, they are referred to as cores of the CPU.
The speed of a processor is measured in how many Fetch Decode Execute cycles it can perform per second. We refer to this as being measured in Hertz (Hz) – you may have come across Hz being used in physics or electronics to measure other waves, and the term Hertz simply refers to the a number of ‘things’ per second.
Knowing this, we can calculate that a processor of 1Hz will be able to process a single F-D-E cycle per second… which is rubbish! Instead, modern CPUs will be measured in GigaHertz.
1 Hz (Hertz) = 1 cycle per second
1 MHz (MegaHertz) = 1 million cycles per second
1 GHz (GigaHertz) = 1 billion cycles per second
Number of Cores
Now we know how fast each of the processors could be, what is the benefit of having more than one in a CPU? Imagine that you have a task to do and you are limited on how fast you can do it, if you had another person to help with that task you could potentially complete it quicker. The same is true for processors.
Beware of the exam trap! Whilst it is possible for a CPU with 2 cores to be faster than one with a single core, it is unlikely that it will be twice as fast. This is because some tasks are linear, meaning that the instructions must be carried out one after the other.
Size of Cache
Cache has been mentioned before when we looked at main memory and the Fetch Decode Execute Cycle. Remember that this small, but very fast piece of main memory acts like a buffer for the CPU allowing it to access instructions quickly. This means that if the CPU can drain the cache quicker than it can refill, the whole process will slow down.
So the cache must be big enough for the processor to fetch instructions and data at its optimum speed, otherwise time will be lost in refilling the cache ready for the next cycle.