Core i7 Load Efficiency using Intel Burn Test

wilds

Platinum Member
Oct 26, 2012
2,059
674
136
I was always wondering which was the most efficient frequency my i7-3720QM in my Macbook Pro 9,1 ran at. I tested this using Intel Burn Test 2.54 on 8 threads. I ran the test 5 times every 100MHz bump.

Keep in mind this is a 45W CPU and my laptop can only utilize 85W for the entire system.

I ran it 5 times each to get a max temperature since I had a constant 6K fan speed for the entire duration of the test.
My GPU was underclocked to 419MHz memory, and 139MHz core to allow the CPU as much headroom as possible.
This is not a perfect test and I will explain each possible fault. I strongly recommend clicking on the links to have an interactive version.



Interactive Graph: Here

Wgpt9sQ.png


After 3.2GHz, I ran the burn test once just to get a reading. The temperatures are not accurate since Throttling occurs at 105C. The Power Consumption cannot be 100% accurate as well.

I'm also rather peeved at the voltage changes. I can easily see that my CPU has plenty of voltage headroom at lower frequencies; meaning that if I could undervolt the CPU, I would get lower temperatures. Gaming wise, I can easily maintain around ~3.1 Ghz with a nice overclock on the GPU without high temperatures. However, 3.4Ghz is too much for certain games on hot days.

Notice the lack of voltage changes for low frequencies in this Interactive Graph

Dhgz0E0.png


After gathering the data, I also made a graph depicting GFLOPS per Watt:

Interactive Graph: Here

WTauJAs.png


There is a slight error, the Y axis should be GFlops per Watt, but it should be obvious enough...

Surprisingly, the most efficient frequency for full load is 2.00 GHz. I am wondering how single-threaded workloads would compare. If I did the test single-threaded, I would also be able to stretch out the CPU's frequency to 3.6 GHz without throttling.

I also am wondering what the most efficient frequency is for Desktop i7's and AMD CPU's!

Data Collected:
OPJuMbW.png


Edit: Idontcare was kind enough for pointing out that IBT is not optimized for HT. Setting the affinity to 4 cores, I did get a performance boost with lower temperatures. My goal was not to optimize IBT, but to get an idea of efficiency. When I get the time, I will most likely fix the results.
 
Last edited:

mavere

Member
Mar 2, 2005
190
4
81
Thanks for this! Very interesting results.

Surprisingly, the most efficient frequency for full load is 2.00 GHz. I am wondering how single-threaded workloads would compare. If I did the test single-threaded, I would also be able to stretch out the CPU's frequency to 3.6 GHz without throttling.

This depends on how one would define "efficient", as it can get quite convoluted, depending on use cases. If we assume that a user's workload is non greedy, and idle time is spent staring at a PDF or something (edit: 8.3W minimum idle), the results will favor high clock speeds.

mrFPCNB.png


(Edit: I meant "peak GFLOPs per avg Watt")
 
Last edited:

wilds

Platinum Member
Oct 26, 2012
2,059
674
136
Correct. I only found my most power efficient clock speed for max load. If I was doing a lighter workload, I bet it would be a higher frequency. If I clamped my frequency at 2.0 GHz, I would probably only hurt my battery life.

I also only listed the max power during the benchmark. During times, it went lower than what I listed; but not by much.

Idle @ 800 MHz uses around 6.5-7.5 W

Idle @ 3.4 GHz (all cores) only uses around 8.0 - 8.5 W

There are so many variables to determine most efficient clock speed so I just decided to figure out one scenario.
 
Last edited:

Idontcare

Elite Member
Oct 10, 1999
21,110
59
91
I tested this using Intel Burn Test 2.54 on 8 threads.

You should have only used 4 threads, not 8, for your tests.

IBT is extremely dense/efficient and hyperthreading actually slows down the performance while lowering peak temps and power consumption.

To get the max power consumption, max operating temperatures, and maximum performance (Gflops) you have to use one thread per physical core and you need to lock the threads to the cores so they don't bounce around (not sure if you can do that on your OS).

edit: you should end up with something like this -
GFlopsperWattversusClockspeed.png
 
Last edited:

SPBHM

Diamond Member
Sep 12, 2012
5,066
418
126
IBT is extremely dense/efficient and hyperthreading actually slows down the performance while lowering peak temps and power consumption.

on my i3 I get higher power usage with HT on, very little but I can verify with a "kill a watt" and the built in sensor...

but gflops is a little lower.
 

Idontcare

Elite Member
Oct 10, 1999
21,110
59
91
on my i3 I get higher power usage with HT on, very little but I can verify with a "kill a watt" and the built in sensor...

but gflops is a little lower.

Leave HT on, never turn it off, but don't have IBT allocate a thread to it. One thread per core. And don't forget to set the affinity. A single thread bouncing between logical and virtual cores will have lower power (and lower performance) than a single thread locked to a physical core.

Averageloadtemperature.png


Peakloadtemperature.png


LinXwithnoaffinitylocking.jpg


LinXwithaffinitylocking.jpg


LinX4threadvs8threads.png
 
Last edited:

wilds

Platinum Member
Oct 26, 2012
2,059
674
136
You should have only used 4 threads, not 8, for your tests.

IBT is extremely dense/efficient and hyperthreading actually slows down the performance while lowering peak temps and power consumption.

To get the max power consumption, max operating temperatures, and maximum performance (Gflops) you have to use one thread per physical core and you need to lock the threads to the cores so they don't bounce around (not sure if you can do that on your OS).

Setting the affinity in Task Manager (in the details section for Windows 8)
and unchecking the HT cores gives me 86 GFlops (10.3 seconds)

I also am using around 40-49.6W during the 3.4GHz run. This means that the bell curve I display may not be around 2.00 GHz, but perhaps slightly higher. Because I am on a laptop, I doubt I will be around what the 2600K is. I will redo the results.

Thanks for the tip!

Edit:

I tested the 4 thread results for several frequencies and I was surprised at the results.

Power consumption was a few watts lower, temperatures were lower, and I got much a healthy boost in GFLOPS. This would mean that my peak efficiency is off in this scenario.

Overall, 4 thread affinity locking boosted my scores by what would have been 100 - 200 MHz.

I will redo the testing soon, but I just wanted to get an idea of efficiency, not to optimize IBT.
 
Last edited:

SPBHM

Diamond Member
Sep 12, 2012
5,066
418
126
Leave HT on, never turn it off, but don't have IBT allocate a thread to it. One thread per core. And don't forget to set the affinity. A single thread bouncing between logical and virtual cores will have lower power (and lower performance) than a single thread locked to a physical core.


I only disable HT for testing,

disabling on the bios or using affinity gave me the same result, lower power usage without HT (with 1t per core), but higher GFLOPS, just like ZGR is reporting