• Competitor rules

    Please remember that any mention of competitors, hinting at competitors or offering to provide details of competitors will result in an account suspension. The full rules can be found under the 'Terms and Rules' link in the bottom right corner of your screen. Just don't mention competitors in any way, shape or form and you'll be OK.

Turbo with 4 cores confusion :S

Soldato
Joined
26 May 2009
Posts
22,175
Ill try and keep this simple, according to the info on my CPU (2550K) I found on-line it does the following speeds:

Speedstep: 1.6ghz
Normal: 3.4ghz
Turbo 1: 3.5ghz
Turbo 2: 3.6ghz
Turbo 3: 3.7ghz
Turbo 4: 3.8ghz

Now I understand how the turbo works and everything (or I thought I did) but if im reading this right, it will turbo up to 3.5ghz when only using 4 cores, but it only has 4 cores :S
 
Depends on work load on each core, if 1 core is hitting 100% it'll overclock that core to 3.8ghz.

As TDP gets higher, the overall turbo speed decreases to keep TDP in spec.
 
Last edited:
What I mean is, what's the deal with Normal and Turbo1? in both cases its using 4 cores, but Turbo1 has an extra 100mhz.

Edit:

I think I get it now, the 1.6ghz is just for idle or low use, the 3.4ghz is normal use, and the Turbos activate when a process calls for the highest processor performance state (turbo level depending on the amount of cores at that state).

Right?
 
Last edited:
sometimes it uses three cores/two cores or a single core,those show the speeds turbo uses depending on how many cores it utilizes for the loads ect

or howmany cores you choose to use in the bios
 
Last edited:
This confuses a lot of people.

Turbo4 can be used when only a single CPU is operational, Turbo3 when 2 cpus are operational etc.. Intel define "operational" as not in one of the low power states (can't remember what it is) but the problem with Windows is that it will distribute a single threaded application across all 4 cores (just run an audio encode and see what the cores are doing). The consequence is that as far as the chip is concerned, all 4 cores are always active, so it never gets out of Turbo1 state.

Try it and see. For all single threaded apps, you only ever get a single turbo step.
 
I've seen single thread apps clocking a single core up (beyond the first step) I'm sure, the other cores don't need to be idle, just below maximum TDP.
 
I've seen single thread apps clocking a single core up (beyond the first step) I'm sure, the other cores don't need to be idle, just below maximum TDP.
Unless you assign the app to the core, it's Windows that does the loadbalancing across cores which causes the problem.

From: http://www.intel.com/support/processors/sb/CS-029908.htm

Intel said:
What factors influence Intel® Turbo Boost Technology operation?

While Intel® Turbo Boost Technology availability is independent of the number of active cores, the operation is dependent on having headroom (cores operating under TDP) available in one or more cores. The amount of time the system spends in turbo boost will ultimately depend on workload, operating environment, and platform design.

and on the same page:

Intel said:
Is turbo frequency the same for all active cores in the processor?

Yes.

i.e. Turbo Boost becomes active assuming the headroom is there, but the max frequency is dependent on the number of active cores.

Certainly, I've never seen my laptop go above the 1st step of turbo boost.
 
Just as an example of how this works, here is a screenshot of a single thread FLAC encode of a large WAV file. You can clearly see that whilst the single thread is taking most of the work (you can check that flac is a single threaded application quite easily) Windows is loading the other processors with other bits of work to do to service the thread on the one processor.

This totally defeats the higher values of Turbo Boost as multiple cores are active whilst the single thread is being run.

flac-enc.png




Yes, you CAN create artificial conditions when you can turbo boost to a single high frequency, but for all practical uses, you are limited to the first step of turbo boost. I'd love it if someone could show me otherwise, but that's my understanding of what's going on.
 
Last edited:
i.e. Turbo Boost becomes active assuming the headroom is there, but the max frequency is dependent on the number of active cores.

Certainly, I've never seen my laptop go above the 1st step of turbo boost.

I have seen my i5 running at 1st/2nd/3rd stages.

Are you sure its based on active cores? from what it says on Intels site it suggested it was based on the number of cores running full out. I.E if only one core is running at max performance it goes to Turbo 4 speed, if three are they run at Turbo 3 speed, if two are they run at Turbo 2 speed and if all four are they run at Turbo 1 speed, if none are they run at normal speed and if not much is going on speedstep clocks them down.

Edit:

Sadly im at work so can't test it with a Core2 but the above can easily be tested I guess by using Prime95 on 1/2/3 cores and seeing what the CPU does with turbo when only 1/2/3 cores are running max out.
 
Last edited:
I have seen my i5 running at 1st/2nd/3rd stages.
I've seen my i7 at all stages too (perhaps I badly worded the "I haven't seen.." bit of the reply you quoted), that wasn't my point ;)

Are you sure its based on active cores? from what it says on Intels site it suggested it was based on the number of cores running full out. I.E if only one core is running at max performance it goes to Turbo 4 speed, if three are they run at Turbo 3 speed, if two are they run at Turbo 2 speed and if all four are they run at Turbo 1 speed, if none are they run at normal speed and if not much is going on speedstep clocks them down.
The quote I posted is from Intels site and says all cores run at the same speed. I also suspect clocking them truly independently whilst they are running (and not in some low power state) would massively complicate their validation testing. Can you post a link where it says the cores are clocked as you suggest?

Sadly im at work so can't test it with a Core2 but the above can easily be tested I guess by using Prime95 on 1/2/3 cores and seeing what the CPU does with turbo when only 1/2/3 cores are running max out.
OK. Here is the result of Prime95 with a single thread running on my laptop (i7-2630QM)

prime-1thread.png


I monitored the clock speed in CPU-Z. The result is it is pretty much constantly in the turbo1 state (2.6GHz) not the turbo4 state (2.9GHz). It does slip into higher turbo modes very occasionally (like when the program starts execution), but the net result is it spends 95+% time in turbo1 mode for compute tasks (using your naming conventions). As far as I can see, for all practical applications, you only ever get a single turbo speed step as Windows gets in the way. Which makes overclocking K series processors even more of a relative performance boost :)
 
It's possible its different in desktop processors though?

TDP on mobile chips is typically half that of their desktop counterparts.
 
It's possible its different in desktop processors though?

TDP on mobile chips is typically half that of their desktop counterparts.
It is possible... but unlikely IMHO as I've just re-run the test on the laptop and monitored TDP with throttlestop and it's giving me a TDP of ~20W (the TDP of the processor is 45W).

If someone would like to repeat the same experiment on a desktop (the FLAC encode I posted yesterday was done on my desktop which is overclocked) and post the results, please feel free ;).

IMHO, it is the way Windows works that stops the max individual turbo boost speed being reached as it distributes even a single thread across multiple cores. I have also seen my understanding posted elsewhere - although I can't find the post to link to at the moment :(
 
It is possible... but unlikely IMHO as I've just re-run the test on the laptop and monitored TDP with throttlestop and it's giving me a TDP of ~20W (the TDP of the processor is 45W).

If someone would like to repeat the same experiment on a desktop (the FLAC encode I posted yesterday was done on my desktop which is overclocked) and post the results, please feel free ;).

IMHO, it is the way Windows works that stops the max individual turbo boost speed being reached as it distributes even a single thread across multiple cores. I have also seen my understanding posted elsewhere - although I can't find the post to link to at the moment :(

The could also be some undocumented relationship between Turbo boost and Hyperthtreading /shrug.

Anyway as im home for lunch I just ran some tests on my CPU (i5 2550K) with prime95 and CPU-Z watching, with a single worker the CPU was doing 3.7ghz (its 2 core turbo), with 2 it was averaging 3.6ghz (its 3 core turbo), with three it was averaging 3.6ghz (its 3 core turbo) and with 4 it was doing 3.5ghz (its 4 core turbo).
 
Anyway as im home for lunch I just ran some tests on my CPU (i5 2550K) with prime95 and CPU-Z watching, with a single worker the CPU was doing 3.7ghz (its 2 core turbo), with 2 it was averaging 3.6ghz (its 3 core turbo), with three it was averaging 3.6ghz (its 3 core turbo) and with 4 it was doing 3.5ghz (its 4 core turbo).
Interesting. What was the CPU meter like (was it distributed across all cores when only running 1 thread?)
 
On my i5 760 is to do with the C states that each core can be put in. On my board, you must enable C2/3/4 state function to allow the 1c/2c highest x25 turbo multi. Disabling this feature limits it to the turbo multi of x22 (x21 stock).
I have loaded 2 cores with orthos and my system does use the higher x25 multi even with very (very) low usage on the remaining 2 cores. Interestingly with intel burn test, the 2/1 thread load is spread amongst all cores limiting it to the x22 multi.
I presume it is similar on SB/IB from the sounds of it.
 
Yes, you CAN create artificial conditions when you can turbo boost to a single high frequency, but for all practical uses, you are limited to the first step of turbo boost. I'd love it if someone could show me otherwise, but that's my understanding of what's going on.

The amount of Turbo Boost in a Core i CPU is based on how many cores are in the active state. Intel says that a core is active if it is in either the C0 or C1 state. The C0 state is the normal state for a core that is working. The C1 state is the first sleep state but the core is immediately ready to get back to work in C0 so for Turbo Boost purposes, this core is still in the active state.

If the core is in one of the deeper sleep states like C3 or C6 then that core is considered to be inactive. When a CPU is lightly loaded, threads and cores are constantly and rapidly entering and exiting various C states hundreds of times a second. Core i5 and Core i7 processors continuously adjust the amount of Turbo Boost based on how many cores are active.

Applications like CPU-Z or the Task Manager that update once per second can be completely misleading when trying to see what your CPU is really doing.

Intel included 2 high performance timers for each thread of these CPUs so monitoring software can accurately determine the average multiplier over any period of time. If you want to watch this data then try running ThrottleStop in monitoring mode.

ThrottleStop 5.00
http://www.techinferno.com/downloads/

If you think your CPU is only using +1 bin of Turbo Boost when running a single threaded application then turn on the ThrottleStop Log File option and run a simple single threaded benchmark like

Super Pi Mod 1.5
http://www.techpowerup.com/downloads/366/Super_PI_Mod_v1.5.html

After you are finished testing, exit ThrottleStop and upload the log file somewhere convenient like www.pastebin.com

You can also use the Task Manager to physically lock Super Pi Mod to a single thread of your CPU so it will be easier to see the maximum multiplier. Just right mouse click on any process in the Task Manager and choose the Set Affinity... option to lock Super Pi Mod to whatever thread of the CPU you like. Do your Super Pi 1M scores change any significant amount when the multiplier is maximized by doing this?

The log file will clearly show you what multiplier your CPU was using. It doesn't matter if Windows moves a task around from core to core. This happens so rapidly that it doesn't significantly interfere with the Turbo multiplier that is used.

The biggest problem is that everyone forgets about Windows. When you are running a single threaded benchmark, Windows still needs to do background processing. It constantly needs to wake up various cores on a regular basis. A typical Windows 7 install can have 500 to 1000 threads running at idle that need to be processed. As cores wake up to take care of this, the amount of Turbo Boost decreases. As threads are taken care of and cores go back to sleep, the amount of Turbo Boost will automatically increase.

Another program that can track what your CPU is really doing is called i7 Turbo GT and it can be found in the RealTemp folder.

RealTemp 3.70
http://www.techpowerup.com/downloads/2089/Real_Temp_3.70.html

RealTemp also follows the Intel recommended monitoring methods and can show you a very accurate average multiplier as the amount of Turbo Boost is rapidly cycling depending on how many cores are active.

Core i CPUs will also throttle the amount of Turbo Boost on and off when a CPU is operating near the Turbo TDP limit. If the CPU goes over its Turbo TDP limit, Turbo Boost gets turned off. This immediately causes the CPU power consumption to decrease. If it decreases below the Turbo TDP limit, Turbo Boost gets turned back on. Once again this happens so rapidly that most monitoring programs will miss what your CPU is really doing.
 
Last edited:
Thank you unclewebb (and thanks for ThrottleStop too :)). I will try later today if I can find some time. Personally, I'm not interested in benchmarks (i.e. assigning cores to threads etc) as that isn't real world use.
 
Benchmark testing and assigning a task to a specific core is mostly for testing purposes so you can better understand how a Core i CPU works. It makes it easier to see what Turbo multiplier is really being used.

For most apps, assigning tasks to specific cores will not gain you anything and might decrease performance. That helps to confirm that Windows and the CPU are doing a pretty good job when a task needs to be relocated to a different core. The performance hit is usually minimal and not worth worrying about.

Intel Turbo Boost works a lot better and adjusts a lot more frequently than some monitoring software would lead you to believe.
 
Back
Top Bottom