Unless we like to waste money or we are very clueless people who usually leave the lights on, nobody likes to waste energy and the same can be said about other basic elements of daily consumption. In the case of processors, on the other hand, this does not come from the economic and environmental awareness of the designers, but rather a product of the laws of physics and especially in how electricity is transmitted.
We cannot forget that a processor today is nothing more than an electrical circuit miniaturized to the maximum. Stated in another way, we are talking today of billions of transistors, where each of these has to be powered autonomously and simultaneously with the rest.
The most complex part when designing a new CPU or GPU today is not to achieve an architecture that achieves a certain power on paper, but that its physical and real implementation is capable of reaching the expected performance in a specific consumption . One of the tricks to achieve this is the partial deactivation of the processor, that is, that parts of it are turned off while the others are kept on and that this capacity can be carried out on the fly and, therefore, with the CPU or GPU fully working.
Power consumption of a processor
The formula for the energy consumption of each of the transistors in a processor is as follows:
Power = Q * C * F * Vtwo
- Q is the percentage of time that the transistor remains active.
- C is the electronic capacitance, and therefore the level of charge that a semiconductor can sustain.
- F is the frequency or clock speed
- V is the voltage
Until 2005 the rules in the design of a processor were the same in terms of energy consumption by area. The idea is that if the area of a processor was reduced by half then the scaling ratio “S” behaved in a similar way, which was calculated with the following formula: S = √2
With this we can already understand the following table:
In the Dennard scaling era the voltage consumed by each transistor decreased with each manufacturing node, but the point was reached where the voltage stopped decreasing. The result was that energy consumption soared and not only this, and this is where the problem comes: the amount of lost energy converted into heat increased. Suddenly it was no longer possible to increase the clock speed of the processors to increase performance, forcing the creation of multi-core systems. As for the graph, it is the consequence of the end of Dennard’s scaling.
What is partial deactivation?
Okay, we already know that processors have the problem that energy consumption after a certain point went through the roof and became impossible to scale. The consequences of this were the so-called dark silicon, which is based on the fact that there are parts of the processor that are turned off when performing certain operations to maintain a constant energy budget. Due to the phenomenon we discussed in the previous section, the area assigned as dark silicon has been increasing over time.
On the other hand, partial deactivation, despite being similar in concept, is different, since it is based on the deactivation of entire blocks and one hundred percent functional of a processor and not of specific parts. For example, when a GPU is not decoding video through its hardware codec it deactivates this, or when a CPU is idle but not completely off, all it does is deactivate all the cores except one of them.
Partial deactivation is therefore the processor equivalent of turning off the lights in a room if no one is using it or leaving the water taps closed. Although it is not only facing the voltage, but also the heat generated by the active parts. If an element next to another receives energy, it consequently produces heat and can thermally suffocate the components next to it. That is why, in the face of overclocking or raising the clock in a CPU, whole cores are often deactivated many times.
How is partial deactivation implemented?
Here we enter the concept of the so-called Power or Voltage Islands, whose implementation is carried out in the design period of any processor. This idea consists of designing the circuitry of different parts of the processor at different frequencies and voltages that are independent of each other.
The idea of having different voltages in each of the parts of a processor makes sense due to the fact that not all of them need the same energy power to function and it ends up causing a higher consumption in areas where this is not necessary. Well, the partial deactivation is based on a very simple concept: make that in each of these Power Islands the voltage can be varied until it is zero. In the same way this allows the CPU to raise and lower its voltage to do the same with the clock speed if necessary.
When we access the BIOS to activate or deactivate parts of the processor, keep in mind that this is partial activation and deactivation of the same, which today we can do in flight and without having to turn off the processor. At the manufacturing level, many processors are partially deactivated compared to models with the same architecture, in that case what is done is deactivating the circuitry that powers that part, which causes it to stop working.
This is easy to see in Ryzen processors with their Ryzen Master software and now with Intel Alder Lake it also happens.