Oct 17, 2012

Why do different examples of the same CPU respond so differently to overclocking?

I like to play around with Android devices, as do some of my friends, one of whom has the exact same HTC phones as I do. We both rooted and flashed the same custom ROM, but when we overclocked our devices, his device was stable at almost 100Mhz faster than mine. Why would there be so much difference in two devices running the same hardware and software?


Parts binning.  There aren't a million different CPU made in different for every clock rate, which is often referred to as clock speed, so I'll just call it that.  There are a few versions made, then after manufacturing they are bench tested.  There are no perfect chips, and the imperfections can cause the chips to be unstable at when clocked at higher speeds.  So say, for example, one  line produces chips that are designed to be clocked at and certified at 1Ghz.  Not all of those produced will actually be stable at that speed, but some can be certified at 800Mhz.  At many of those that aren't stable there will be stable and can be certified at 600Mhz.


Now take that 600Mhz chip that couldn't be clocked at 800Mhz.  Perhaps it could also be clocked at 786Mhz, but the next step down from the manufacturer is 600Mhz, so it will be certified and sold as a 600Mhz chip.  The thing is, a chip that is only stable when clocked at 620Mhz would also be certified at 600Mhz.  There is nothing deceptive about this, Qualcomm (or whoever) is selling a 600Mhz chip and both of these would indeed be stable and meet specs at that speed.  The only time most people would know the difference is when they overclock the cpu and rediscover what the manufacturer determined during bench testing.

Here's a good background article on overclocking that might help answer some of your questions.


"Overclocking is the process of making a computer or component operate faster than the clock frequency specified by the manufacturer by modifying system parameters. One of the most important techniques is running at a higher clock rate (more clock cycles per second; hence the name "overclocking"), but other parameters, such as CPU multiplier and memory timings, can also be changed and would be considered to be overclocking. Operating voltages may also be changed (increased), which can increase the speed at which operation remains stable. Most overclocking techniques increase power consumption, generating more heat, which must be dispersed if the chip is to remain operational.

The purpose of overclocking is to increase the operating speed of given hardware. The trade-offs are an increase in power consumption and fan noise, the system can become unstable if the equipment is overclocked too much, and the risk of damage due to excessive overvoltage or heat generation. In extreme cases costly and complex cooling (e.g., water-cooling) is required.

Conversely, underclocking trades off slower operation to reduce power consumption and temperature, cooling requirements (and therefore the number and speed of fans, allowing quiet operation) and, where relevant, increase battery life per charge. Some manufacturers underclock components of battery-powered equipment to improve battery life or implement systems that reduce the frequency when operating under battery.

The speed gained by overclocking depends largely upon the application; benchmarks for different purposes are published. In some cases there is a simple speed gain and saving of time; in others a certain speed may be required for correct operation, as in displaying high-resolution video and playing games with fast action. The numerical gain varies, but is often of the order of 20%."
Answer this