If you can get some utility that can write to the CPU MSR AND can control thread affinity then could manually setup dual-IDA on a Mac.
-
User Retired 2 Notebook Nobel Laureate NBR Reviewer
-
Hey guys,
Someone recommended me Throttle Stop because I play League of Legends. During the game, my FPS will drop to 1 for a few minutes. It was suggested that my Dell laptop was over heating and would throttle down. Someone said I should try this program out.
I downloaded it, and read the guide, but I still have no idea what I am supposed to click on...
I have a Dell XPS L401X, Intel Core i7-740QM.
I'd really just like to stop my laptop from throttling down when it heats up a little bit. -
If your laptop has an overheating problem because the heatsink is inadequate or poorly designed or loose then your best bet is to fix the problem. When the newer Dell laptops start to throttle, there is usually a reason.
Step 1 would be to run ThrottleStop and check off the Log File option and then go play a game. After a throttling episode or two, stop the game and exit ThrottleStop so it can write the Log File to the ThrottleStop directory. Too much data is better than not enough so don't be afraid to play for a while.
Upload that somewhere so I can have a look at it.
Pastebin.com - #1 paste tool since 2002!
or
Free File Hosting Made Simple - MediaFire -
I had it running for the past few hours, but I played a game about an hour+ before posting this. I didn't experience any FPS drops, so I assume it's doing the job. It's also cooled down quite a bit outside, so I don't know if that has anything to do with it.
Also, I just started checking stuff on the program. I had all three check boxes marked (clock mod, chipset and modifier)
It was set on game profile as well.
ThrottleStopLog.txt -
I didn't see any signs of throttling in your log file but the CPU and GPU temperatures were getting up towards 90C which is getting warm. With higher ambient temperatures, I wouldn't be surprised if it was throttling before. You might have to pull your laptop apart and redo the thermal paste. With a few improvements like that, you might be able to game on a hot day at full speed too.
-
Alright, thanks uncle webb!
-
...deleted...
-
User Retired 2 Notebook Nobel Laureate NBR Reviewer
Otherwise maybe game using your HD5870 eGPU and turn on powerplay - maximum battery on the HD4570 to get system temps as cool as possible? -
Thanks nando. I'm going to need study the pinmod solution first. I also already set mobility HD4570 PowerPlay to maximum battery saving.
-
Ahoi,
thanks for this great tool! Since Unclewebb doesn't come over to Gearz (GS) too often I made an account here.
I've got several things on my mind, but let's do one after another and begin with the most important (to me):
TS does not save TPL settings?! According to the guide it should even save them per profil, but mine are reset to the stock 45 watts after every reboot.
Even though my CPU is not unlocked (2011 MBP i7 2.3) increasing TPL does have an impact. Under 100% load with all fans flying and temps over 90°C I get a multi of x24 with the stock TPL of 45, but can increase the multi reproducibly to x25 with a TPL of 48 and higher. No more gain above that, but I usually set it to the second stock (disabled) limit of 56.
Obviously the higher TPL allows the i7 to more often spike over 50 watts and thus get the higher multi.
So is there any way to make TS save the entered TPL and thus load it automatically when started next? Or even better save it per profile? -
UncleWebb:
I have been reading this thread and DL'd ThrottleStop. Looks Brilliant by the way.
I have a Lenovo W510 with 16gb RAM and an Intel i7-920XM @ 2ghz. I cannot seem to find the optimum settings for the processor. I searched the thread for i7-920XM but I get no results, so perhaps search is not working for me properly.
Can you or someone give me some optimum settings for my laptop?
Thanks
SWR -
Unfortunately T1mur, I don't have any new Sandy Bridge hardware to develop on. I'll see if I can find out why the TPL settings are not being saved. Does everything else get saved OK and restored OK when you start up ThrottleStop?
Intel has set a maximum of 48W for the Sandy Bridge non-Extreme quads which doesn't give users much room to increase performance. No promises but I'll see what I can figure out.
shokwaverider: Here's a thread full of information about playing around with the 920XM.
http://forum.notebookreview.com/alienware-m15x/520311-multiplier-manipulation-xm-processors.html -
Thanks for looking into this. Good to know that I nailed the 48 watts without having read the specs.
Everything else gets saved and loaded, albeit there is a small problem with saving. TS only saves Options when you exit it via Trayicon (and probably red X if Minimize on close is not active). When TS is exited via Windows shutdown (TS is running permanently here) then no settings are saved. So to change and save options I have to quit TS and restart it manually.
I took a look into the settings txt file, but don't see any TPL related entry there. My guess is that the 45 watts are set by the Macbook's EFI on startup, probably to keep it cooler than with 48 watts. But with my own power-profile plus TS's Power Saver feature and good control over temps I prefer to use the full 48 watts. -
Any chance you could compile TS in some cross-platform environment like QT to make it available on OS X? Since Coolbook only supports Core2Duo there is no application left to either read CPU clocks or change clock-rates.
-
I know ThrottleStop saves and loads the TDP/TDC settings for the older 920XM Extreme CPUs so I'll have a look at what's going on with Sandy Bridge. I'm mostly helping Dell owners and their laptops are locked so that's probably why I haven't heard about this issue until now.
The items in the Options window should be saved immediately after you click on the OK button in that window. According to some Windows style guide I read a long time ago, the X gadget in the top right corner of a Windows app should be the equivalent of clicking on the Cancel button. Not all users realize this because not all apps follow the guide. I just did a quick check and ThrottleStop seems to be doing this correctly and any changes on the main screen should be saved immediately if you click on the Save button.
If you can give me a specific example of when things are not being saved correctly, I'll try to see what's going on.
Intel says 45W is the default long term turbo TDP value and 48W is the maximum long term value. Those engineers must have got in big trouble when management found out that ThrottleStop could adjust the previous Core i7 CPUs to the moon.
I don't have any plans to port ThrottleStop to OS X. -
I checked again. Indeed the "Date modified" of the TS ini file changes the very moment you hit OK in the Options menu. But at least "PSMinimum" is *not* saved then. Only when quitting TS either via Traymenu or via red X (not in Options, but TS main window, and only when Minimize on Close is not used) changes to PSMinimum are saved. Don't know about all the other options.
Too bad I didn't know about TDP when I used the 2010 MBP (first i7 generation), but I somewhat consider the first i7 a lemon. At least on OS X I got tremendously worse performance with certain audio apps compared to my older C2D 2.8 and the new i7 Quad. I suspect Core Parking v1 to have been the culprit.
I really need an application for OS X to at least check CPU clock. Does TS use any Windows specific API calls other than for the GUI? If it's only a GUI thing and the rest works via direct access to the CPU I'd be willing to help port the GUI to QT.
BTW, you stated that both TS and Realtemp use the "correct" method to calculate CPU frequency. But I noticed that only TS keeps doing that when the CPU driver is removed from Windows. So there seems to be some difference between the two programs?! -
ThrottleStop 3.10 beta 4
http://www.mediafire.com/?67vrqxdrwbrqqkz
You're right T1mur. Not everything was being saved in the Options window after pressing on OK. Many items were not being saved until after the program exited. If Windows restarted without ThrottleStop exiting then I can see that would be a problem. Hopefully this has been fixed now in the above beta version of ThrottleStop.
The new HotKey Manager might be useful for users that have multiple profiles setup. It was interesting to be able to change the CPU speed on the fly with a quick user defined keyboard shortcut while gaming or doing some 3DMark type benchmarks.
I also added some code to save and restore the turbo power limits for Sandy Bridge CPUs. Let me know if this works. When you click on OK in the Turbo Power window, you should see 2 new values in the ThrottleStop.ini config file called POWERLIMITEAX and POWERLIMITEDX. Next time you boot up and run ThrottleStop, it should restore these values as long as that register is not locked by the bios. If this works I'll consider adding this feature for each profile similar to what you can do with the previous Core i generation. It's always fun writing software when you don't have any hardware to test on. It should work in theory.
The problem with trying to port TS to other platforms is that it needs to read and write Model Specific Register (MSR) values directly to and from the CPU. The only legal way to do this so the CPU doesn't throw an exception is by using a signed driver. ThrottleStop uses the WinRing0 driver to do this but this driver is no longer supported and I don't know if anything similar is available for the Apple. Getting a driver signed is too expensive when you are writing freeware software so that is likely what killed further WinRing0 development. I know from personal experience that the cost to sign one driver for one year would use up all my RealTemp and ThrottleStop profits combined.
TS and RealTemp are very similar but there are a few differences. TS is more designed for laptops so it doesn't constantly recalculate the BCLK value. This saves some CPU cycles for more important things. For most users this value does not change if you are not using programs like SetFSB. If you do use SetFSB then you might need to recalculate this value which you can easily do by clicking on the BCLK button.
When a CPU is mostly idle, the average multiplier can be changing so rapidly that depending on the timing, two programs using the same method might report differently. With a constant load, RealTemp and TS should be very similar. Post some pictures and show me some examples and I'll be happy to look into this too. I appreciate your help.
Edit: Beta 4 will save the HotKey selections immediately and I added the ability to use any 2 digit hexadecimal Virtual Key Code:
http://msdn.microsoft.com/en-us/library/dd375731(v=vs.85).aspx
Values between 0x01 and 0xFF can be entered but not all of these values will work when used as HotKeys. -
Something I thought I'd note if you're still working on this.. I can't seem to 'undo' the GPU choice. When I go back to options to untick it, it appears to work but the GUI still shows it and going back to options shows it's got a tick again (nvidia).
-
After you untick a GPU option, it tells you in the title bar that you have to restart ThrottleStop for this change to take effect. The GPU code is sort of separate so I thought this was the safest way to turn this feature off. If you clear the Nvidia GPU box, and click on OK and restart ThrottleStop, it will be disabled. If you immediately go back to the Options box it will show that it is still checked because you haven't restarted yet. I'll see if I can change this to make it clearer to users.
-
Hi unclewebb,
your app is great! tnx!!! But I have one (two) prob
When my laptop (Dell Inspiron 1520 with T8300 and Win7) goes from standby your app runs but without Dual IDA. I must manually set again Dual IDAthis is only for me?
And second Q:
In my laptop your app start at startup and works without prob, but is it possible automatically exit your app after few seconds? I know that manually can exit in taskbar, but I want automatically
tnx for answers
[EDIT]
app exit prob solved self
added ExitTime=5 in ThrottleStop.INI -
In the Options window, to the right of Start Dual IDA, try checking Profile 1. If you are using Profile 1 as your Dual IDA profile then this option should automatically get your CPU back into Dual IDA mode when you resume from Stand By mode. This works OK on my Dell with a similar T8100 so hopefully it will work for you too. When you have checked the Profile 1 option, I don't think you need to check Start Dual IDA. Let me know if this works for you.
If you use the ExitTime option then you will have to manually start ThrottleStop every time you resume from stand by mode. ThrottleStop is very efficient when minimized to the system tray so leaving it running all the time isn't such a bad thing. You will see in the Task Manager that it takes up very little CPU or memory resources when sitting like this for hours. -
-
I appreciate the feedback error-id10t. If a long time ThrottleStop user like yourself didn't notice this then it needs to be changed. I'm going to use a pop-up window that is more in your face and harder not to see.
ATi and Nvidia temperature monitoring code from their drivers is inefficient and bloated so the best thing to do is to disable it and restart ThrottleStop when you don't need it. It's handy for testing purposes but most the time I don't bother using it. Intel has made reading temperature data from their CPUs extremely efficient compared to what ATi and Nvidia are doing. -
tnx
And I use ExitTime option, but for starting again your app, when resume from stand by I found this solution:
1. Open task sheduler [press windows key, type task, click on task scheduler at the top of the menu list]
2. In Actions [menu or right pane] click 'new task'
3. In General tab, give your task a name
4. In Trigger tab, click 'new'
5. Choose 'on an event' in the top drop-down list.
6. Choose 'custom' radio button
7. Click on the 'new event filter' button that now appears.
8. For event level, choose 'information'
9. In 'event logs' drop-down menu, choose windows logs > system. Put a tick next to 'system' only
10. Click on the text 'All event ID's' [the text will clear] and insert 1
11. Click ok
12. In the 'Actions' tab, choose the program you want to start by clicking 'new'
13. In the 'new action' window, use the browse button to navigate to the .exe of the program you want to run. If you have a shortcut on your desktop for the program, you can simply choose that and scheduler will extract the path from the shortcut.
Result:
When start windows and after logon ThrottleStop after few seconds automatically exit and Dual IDA runs. After x minutes laptop goes to stand by. When resuming from stand by ThrottleStop starts again and after few second exits again and Dual IDA runs -
Feedback on 3.1 Beta4:
- Keyboard shortcuts work.
- TDP settings are saved, recalled on restart and make a difference (aka work).
- Options are saved the moment the OK button is used. *But* it also saves the current profile settings (without pressing the SAVE button).
We are holding conversations on two forums now, so check back at GS when you find time. I wrote a rather long (hopefully elaborate) post about C-states, Core Parking and Turbo Boost there. -
One more thing:
TS reports C6 % when the C button is only set to allow C3.
Is there a difference between C7 and MAX? -
ojojoj: That's a great solution you found to that problem so you can be in Dual IDA after stand by without having to have ThrottleStop running 24/7. Thanks for documenting it.
T1mur: Good to hear that the keyboard shortcuts and Sandy Bridge TDP settings are being saved and recalled now.
You're right. Pressing the OK button in the Options window saves the options and anything in the Profiles at the same time. Now that the Options are being saved immediately, I will try and separate that code someday so it is more intuitive.
C7 and MAX should be the same thing. I think Intel included a MAX option for future development.
I've never tested this feature on Sandy Bridge so I wouldn't be surprised if Intel has changed a few things. On previous Core i CPUs, setting this to C3 would prevent the CPU package from entering the C6 state but this may no longer be the case. When the engineers were designing Sandy Bridge, it seems like they had ThrottleStop on their dart board and blocked what TS was doing as much as possible in their new CPUs. -
Maybe you should rename the "Register" column to "Enable", because the "Register" name is rather confusing. I wasn't sure if it's meant to enable the shortcut or meant to do some additional magic until I tried out.
Using the C button at C1 still seems to work, only C3 does not. That being said I wonder if there is any real impact on the CPU when only changing "package" states while "core" (and thread) states are still allowed to use C3/C6/C7?!
Seeing that the reported wattage does not change when changing the "package" c-state via TS it seems that it does not make any difference at all. On the other hand it makes a huge difference when forcing "cores" to C1 via power-profile and then switching C1E on and off (huge as in 100% more wattage with C1E disabled). Maybe you could provide an option to enforce cores into lower c-states instead of the package? -
I have another prob:
I want set ThrottleStop for power save. Everything is ok, but then I exit app my frequancy stops at 600Mhz at all time. I must start again app and then I can use laptop without lag between 600Mhz and max. Any solution? My screenshot:
Uploaded with ImageShack.us -
If you want ThrottleStop to manage your CPU then generally you have to leave it running. After you exit ThrottleStop if you want Windows to take over control of your CPU then try unchecking and clearing this box.
Do Not Reset FID / VID on Exit
Have you done any power consumption testing? That Power Saver option lowers the multiplier but it didn't reduce power consumption on my T8100. That feature is more for the previous 65nm Core 2 mobile CPUs. Check out the graphs in this post.
http://forum.notebookreview.com/6369641-post5060.html
T1mur: I used the word Register because the Windows function is called RegisterHotkey. I agree that the Enable word makes more sense so I'll change that. Unfortunately after you boot up into Windows, there is no control over the C State of individual cores. You can only try and block the CPU package from using the deeper sleep states. I mentioned in the Gears thread why the CPU power consumption number is not necessarily 100% accurate. I'm not sure if what you are seeing between C1 and C1E is 100% accurate. Something like a Kill-a-Watt meter might confirm this or better yet using the Windows battery power consumption data. You can draw a graph of this with the Windows Performance Monitor. -
ok. I understand. I must leave it running.
I have not tested power consumption because with Dual IDA my laptop allways c.a. 5C higherWith Dual IDA I feel performance, but I can't use this mode because about 50% time my laptop allways on my legs and I really feel differnce with heat + in summer this is very actual.
-
When I force all cores to run at C1 (99+%) and switch C1E on/off I roughly get 14 vs. 28w according to TS and 30 vs. 60w according to my watt meter. This makes sense, because without C1E the CPU keeps running at +1 Turbo bin and maximum VID when idle. Curiously C1E only seems to affect the clock multiplier but not the VID, at least not according to what TS reports. Power profiles do affect VID though.
I also compared TS' "Power Saver" with the different Windows power-profiles, including leaving C1E running. Power Saver still has an impact even compared to the Windows "Power Saver" profile (albeit little). With my own profiles that keep unparked idle CPUs running at maximum Turbo frequency it's a useful feature to get rid of Speedstep. -
ojojoj: What do you have your core voltage set to? If you lower this, Dual IDA usually isn't too power hungry. My T8100 is happy with 1.05 volts. If you can minimize the number of background tasks then your CPU will automatically spend more time in the C3 sleep state where the VID will go lower inside the CPU. Much lower than ThrottleStop lets you adjust.
T1mur: That's a huge power difference with C1E. Most users are not going to see a big difference like this because at idle they are using C3/C6. If you use the deeper sleep states then I don't think C1E would make much of a difference because the CPU would be spending most of its idle time in C3/C6.
Reading VID from a CPU is not accurate. A CPU can be spending most of its time at a low VID but when you wake it up to read the VID, it suddenly jumps up just before software reads it so the value returned might not reflect what the CPU has been doing the other 99.99% of the time during that sample period.
Interesting to see that ThrottleStop PowerSaver is of some use to you. Most users don't seem to use this so I haven't got too much feedback from Core i owners. -
lower than 1.1V I can't set, because in games I got crash and sometimes in win too. I dont use any additional background tasks, just browsing in internet. I really want use Dual IDA, but with lower possible heat.
-
I did not have time to test all this against audio performance. In theory it should make a difference with low latency + low CPU load situations when the deeper C states would cause dropouts. Turning off all C states (and maybe Turbo) and thus keeping the CPU from changing its real performance all the time is useful for knowing (and working with) the true limits of a setup. I'll report back once I've done some comparisons of different settings and power-profiles.
The reason why PowerSaver is useful is because it allows me to disable C1E and even C3/C6 but still keep wattage and heat down. Again I need to check how TS's realtime priority CPU load metering and mangling with CPU multipliers gets in the way.
CState does not work yet, it displays 0% on all cores for both C3 and C6. -
T1mur: ThrottleStop is very efficient when minimized to the system tray so hopefully it will solve more problems for you than it creates.
Edit:
CState 1.0
http://www.mediafire.com/?jzes8f984jzkr26
If anyone else wants to know what percentage of time individual cores are spending in C3/C6 then try using the CState program. This program only works on Core i CPUs. The C3% and C6% that ThrottleStop reports refers to the entire CPU package. Depending on how your computer is set up, individual cores can enter the C3 and C6 sleep state even when the entire CPU package is being blocked from doing this. I'll probably combine this new information into ThrottleStop as a separate option for those that are interested in this. It might be useful when trying to improve battery run time by finding ways to increase the time your CPU spends in C3 and especially C6.
-
Not working yet.
Attached Files:
-
-
It works on my Dell with i7-720QM.
Attached Files:
-
-
I'm pretty sure it's working T1mur. What are you using to block C3/C6?
8 threads of Prime95 would do the trick. -
Is Cstate using any ACPI functions maybe that are not properly implemented by Apple's EFI BIOS emulation?
No blocking done, see for yourself in the screenshot. It's showing TS and Cstate using the "Balanced" power-profile.
BTW: According to the Energy Monitor 3k the difference between using TS' Power Saver or not is about 1 watt in this idle state. So for normal power-profiles it doesn't make much of a difference.Attached Files:
-
-
Hm, I forgot to stop Cstate and kept it running and guess what, "accidentally" I just glimpsed some C3 readings.
But with most profiles these only happen for a brief moment right when increased CPU load happens. Like maximizing Firefox or starting a torture test in Prime (or load test in Ableton Live). Then all falls back to 0.0 again.
Performance Monitor on the other hand reports 99.xy% C3 with the idle "Balance" power-profile. Maybe these are all C7?
Interestingly one of my customized profile that Performance Monitor reports nearly 50% C2 (and no C3) at idle makes Cstate report around 10-45% C3 (mostly around 20. Still no C6 reported with any profile.
PS: In this profile TS' Power Saver decreases idle wattage from around 87w to 68-73w. No difference though when C1E is enabled. Anyway this specific profile is meant to keep Core Parking and C1E disabled (see how all cores run at fixed +1 Turbo bin even at idle). So Power Saver can be a very useful option when specifically pushing CPU limits.Attached Files:
-
-
The CState program doesn't use any ACPI functions. Core i CPUs have two C State counters for each core. When a core is in the C3 state, the CORE_C3_RESIDENCY counter at MSR 0x3FC increments upward. When a core is in the C6 state, the CORE_C6_RESIDENCY counter at MSR 0x3FD also counts upward. It's very simple for software to read these counters every second and determine what percentage of time that CPU core was in C3 or C6. Both of these registers are read only so the OS or any other software should not be able to interfere with getting reliable data from these counters.
I know the CState program is reading these correctly so I'm having a hard time trying to explain your first screen shot. If the CPU Package is spending time in C6 than all of the individual cores must also be spending time in C6 so your first screen shot that shows a row of 0.0 doesn't add up.
After digging through the Intel docs I found that it is possible for an operating system to block software access to the time stamp counter (TSC) within a CPU. Windows doesn't do this so I've always ignored this possibility but Apple might be blocking this. There is a method I can use to try and work around this and you can see if it makes any difference to your results. If your results are the same then I guess you can't trust the CState program.
I also found this in the November 2008 Intel Turbo Boost docs.
-
CState 1.1
http://www.mediafire.com/?s93t1akzi94fc23
I'm grasping at straws but maybe CState 1.1 will work correctly on your Apple. If not, I think I'm out of ideas. -
I'm sure you have already answered this, but there isn't much I can do to increase performance on my 2720qm right?
-
Same picture with 1.1, sorry. What confuses me is that Cstate reports Windows C2 as C3, but the percentages are very different for most cores.
Btw, that was the second Intel white paper I (already) read when our discussion became more complex.Notice how it says "is considered an inactive Core" for Turbo Boost. That does not mean it has to be parked Though I am not sure what exactly defines "parking" yet.
-
Jas71: I think the M17x-R3 bios blocks most ThrottleStop adjustments so you can't do anything with a 2720QM.
T1mur: I didn't have very high hopes that CState 1.1 would solve the reporting issue you have on your Apple. As the Intel docs I posted above show, it's impossible to know what Windows will report for ACPI C2 or ACPI C3. For comparison, you could ask another user to do some testing on a PC but the PC bios could decide to report CPU C3/C6 completely differently than what your Apple bios does.
Core parking is still a mystery to me too and I don't know what the official definition of a parked core is either. From the testing I've seen, no thread spends 100% of the time parked in an inactive state. They are always being woken up, multiple times per second, to take care of some background processing.
At idle if you are curious about your C3 and C6 Core CState counters you could try reading these directly with my MSR Tool. It lets you read registers directly from the CPU.
http://www.mediafire.com/?myjkxzkzzmd
When you run it, enter 0x3FC in the MSR Number box at the bottom and then push the Read MSR button multiple times to see if this is increasing. This will let you look at the C3 Residency counter and you can look at MSR 0x3FD to keep an eye on the C6 Residency counter.
You should also be able to read the Time Stamp Counter by looking at MSR 0x10. If you keep clicking on the Read MSR button, you should always see this register increasing. The only time it is supposed to get reset is when you reboot. I'm glad I don't have your computer for a day or I might go nuts trying to figure it out. -
I will give Cstate a try on the i3 of my wife's Acer laptop.
0x3FC keeps counting up when I use the profile hat also makes Windows C2 and Cstate count percentage (though they are still in disagreement over the value).
0x3FD stays at 0 (zero) for all cores EDX + EAX
0x10 keeps counting up fast -
Are the assumptions about Realtemp made in the following Intel white paper still valid? And how do they affect TS?
http://download.intel.com/design/intarch/papers/322683.pdf -
I noticed that MSR 0x3FE keeps counting up depending on CPU load and power-profile and seems to be a core C7 counter according to the following list:
Code:#define MSR_TSC 0x10 #define MSR_NEHALEM_PLATFORM_INFO 0xCE #define MSR_NEHALEM_TURBO_RATIO_LIMIT 0x1AD #define MSR_APERF 0xE8 #define MSR_MPERF 0xE7 #define MSR_PKG_C2_RESIDENCY 0x60D /* SNB only */ #define MSR_PKG_C3_RESIDENCY 0x3F8 #define MSR_PKG_C6_RESIDENCY 0x3F9 #define MSR_PKG_C7_RESIDENCY 0x3FA /* SNB only */ #define MSR_CORE_C3_RESIDENCY 0x3FC #define MSR_CORE_C6_RESIDENCY 0x3FD #define MSR_CORE_C7_RESIDENCY 0x3FE /* SNB only */
"SNB only" should mean Sandy Bridge only. The other MSR return values for me, too (package C7 and C2).
Thanks for pointing me to "MSR", this allowed me to find that "Turbostat" utility. I will try to run/compile Turbostat on OS X. Would finally give me some insight on how OS X CPU kext handles these things (and why some audio applications are so badly affected while others are not). -
The TSC (Time Stamp Counter) counts up at the default frequency of the CPU so it will always be counting up very quickly. To work out most of these ratios, you compare these other counters to the TSC and work out a percentage.
With the newer Core i CPUs, Intel started including a value for TJ Target within a register in the CPU. Before they did this, monitoring software had to guess at this value. This was a big improvement but there is still the problem that actual TJMax can be different than the TJ Target value so 100% accurate temperatures from idle to TJMax are not possible.
During my testing, I found that the DTS data would wrap around like an old speedometer. At DTS 0, the core temperature was 100C. If the CPU got hotter the DTS data would wrap around and start counting down again so DTS 127 = 101C, DTS 126 = 102C, etc. and this would keep right on going up to the thermal shutdown temperature at 125C to 130C. I tested that once or twice.
I don't think Intel was too impressed by my discovery. When the Core i7 was introduced, Intel blocked this so the data coming from these sensors no longer wraps around. As the CPU gets hotter and hotter beyond the thermal throttling point, the Core i DTS sensor just keeps putting out a value of zero.
If you have any specific questions, just ask.
Your table of MSR values is correct according to Volume 3B of the Intel docs and SNB must stand for Sandy Bridge.
I'll consider creating a one off version of ThrottleStop so you can monitor C2 and C7 package state instead of C3 and C6. It might show what your CPU is doing when idle.
The ThrottleStop Guide
Discussion in 'Hardware Components and Aftermarket Upgrades' started by unclewebb, Nov 7, 2010.