Search code examples
cpuflops

Computing theoretical FLOPS of a CPU with boosting capability


I have a Intel i7-4510U with a base frequency of 2.0 GHz and a turbo frequency of 3.1 GHz. Datasheet

When calculating the theoretical FLOPS, should I use the base frequency of the turbo frequency?

GFlops = (CPU speed in GHz) x (number of CPU cores) x (CPU instruction per cycle) x (number of CPUs per node). LINK

GFlops = 2.0Ghz * 2 * 2 * 2 = 16 GFlops

GFlops = 3.1Ghz * 2 * 2 * 2 = 24.1 GFlops


Solution

  • Turbo Mode kicks in when the CPU is cool. The CPU is cool when only one core is running. As soon as multiple CPUs are running, the temperature goes up, and the clock rate goes down.

    Do you want to know how many instructions can be executed in a millisecond on a cold CPU? Take turbo frequency times number of cores. Do you want to know how many instructions can be executed in a second or in a minute? For the second, you'd have to measure exactly how quick the CPU heats up and slows down the clock rate. For a minute, take the sustained rate with all cores running, not the turbo rate.

    Some CPUs tell you sustained clock speeds with one, two or four cores running.

    Also consider that code doing the maximum possible number of operations per cycle will produce more heat and slow down quicker.