The Notebook Review forums were hosted by TechTarget, who shut down them down on January 31, 2022. This static read-only archive was pulled by NBR forum users between January 20 and January 31, 2022, in an effort to make sure that the valuable technical information that had been posted on the forums is preserved. For current discussions, many NBR forum users moved over to NotebookTalk.net after the shutdown.
Problems? See this thread at archive.org.
 Next page →

    [To all newer AMD Turion owners]Strange power handling on hp dv5

    Discussion in 'HP' started by blackshard83, Apr 19, 2009.

  1. blackshard83

    blackshard83 Notebook Consultant

    Reputations:
    43
    Messages:
    204
    Likes Received:
    0
    Trophy Points:
    30
    * If you are interested in TurionPowerControl program, just go at the bottom of the post *

    Hi all to the forum, this is my first message here.
    I posted this message on amd forums too, but got really low feedback about this. Sorry for long message, but I think the problem I found needs some explanation.

    I own a HP DV5-1025el laptop with Turion Ultra ZM-80 processor and Windows Vista 32 bit, running at 2.1 Ghz. The laptop is working wonderfully and I have no stability problem at all.

    Since I love to optimize my machines at maximum, I started to search some informations about Power States and such similar things, mostly to tweak and reduce battery cpu usage. I made by myself an utility to control CPU Voltage for each pstate, like PumaStateCtrl, but more flexible. It's in an early stage, but it seems to work good for ZM processors, and maybe I can post it here if someone asks.

    I studied the official AMD datasheets about Turion and Turion Ultra (mainly ZM and RM series) processors and found that they have 3 active PStates (actually they have 8 pstates, 3 are activated and 5 are not). My ZM-80 has these pstates:

    PState 0 - 2100 Mhz, 1.100 volt - Enabled
    PState 1 - 1050 Mhz, 0.950 volt - Enabled
    PState 2 - 525 Mhz, 0.800 volt -Enabled

    Then there are other pstates from 3 to 7, but are disabled:
    PState 3 - 1050 Mhz, 0.950 volt - Disabled
    PState 4 - 800 Mhz, 1.550 volt - Disabled
    PState 5 - 800 Mhz, 1.550 volt - Disabled
    PState 6 - 1050 Mhz, 1.200 volt -Disabled
    PState 7 - 1050 Mhz, 1.200 volt - Disabled

    The issue is related to the fact I randomly see transitions to pstate 6, that is supposed to be disabled! Actually, as you can see above, pstate 6 overvolt the processor to 1.200 volt and this is a clear violation of the specifications (1.200 volt => overvolting!) , even because PState 6 is set to disabled and should not be used.

    This may cause faster battery depletion, higher heat production, and maybe other serious problems with power regulation modules.

    How to replicate this:
    I found that this behaviour always happens when I set windows vista power profile to "Maximum Performance". Using AMD Power monitor (you can find it here) or even cpu-z I get fast transitions between PState 0 and PState 6, where there should be no transitions at all!

    Who is affected:

    At the moment, all Turion Ultra ZM, Turion RM series and Athlon X2 QL series processors are affected by the problem (all 65nm notebook parts), as many users reported. We have no informations about Sempron SI series at the moment.

    Also it is not a problem of a specific notebook brand, but looks like a generalized problem. Users with HP and Acer notebook actually have reported the problem.

    Please report your experiences, thank you and excuse for my bad english.

    Possible reason:

    I found that disabling OS power management (using High performance profile in Windows, or disabling or fixing cpu scaler in linux) and then forcing the processor in pstate 0 (using TurionPowerControl -fo switch) the processor to go to pstate 6 and stay there while the processor is idling. Maybe it is related to some C halt states.

    Also I discovered there also some rare transitions to pstate 7 too, but these still have no apparent cause and I have no methods to artificially reproduce them.

    Update:

    How to almost completely solve the problem:

    Launch the program with -l command like this:

    TurionPowerControl -l

    It will show something like this:

    Code:
    Turion Power States Optimization and Control - by blackshard - v0.12
    Detected CPU:
    Family: 0xf             Model: 0x3              Stepping: 0x1
    Extended Family: 0x11   Extended Model: 0x3
    Package Type: 0x2       BrandId: 0x1400
    Detected Physical Cores: 2
    Processor has 3 Power Planes
    Detected processor: Athlon X2 QL processor
    Processor has 2 cores
    Processor has 8 p-states
    core 0 pstate 0 - En:1 VID:40 FID:13 DID:0 Freq:2100 VCore: 1.0500
    core 0 pstate 1 - En:1 VID:60 FID:13 DID:1 Freq:1050 VCore: 0.8000
    core 0 pstate 2 - En:0 VID:48 FID:13 DID:1 Freq:1050 VCore: 0.9500
    core 0 pstate 3 - En:0 VID:0 FID:0 DID:0 Freq:800 VCore: 1.5500
    core 0 pstate 4 - En:0 VID:0 FID:0 DID:0 Freq:800 VCore: 1.5500
    core 0 pstate 5 - En:0 VID:0 FID:0 DID:0 Freq:800 VCore: 1.5500
    core 0 pstate 6 - En:0 VID:28 FID:13 DID:1 Freq:1050 VCore: 1.2000
    core 0 pstate 7 - En:0 VID:28 FID:13 DID:1 Freq:1050 VCore: 1.2000
    core 1 pstate 0 - En:1 VID:40 FID:13 DID:0 Freq:2100 VCore: 1.0500
    core 1 pstate 1 - En:1 VID:60 FID:13 DID:1 Freq:1050 VCore: 0.8000
    core 1 pstate 2 - En:0 VID:48 FID:13 DID:1 Freq:1050 VCore: 0.9500
    core 1 pstate 3 - En:0 VID:0 FID:0 DID:0 Freq:800 VCore: 1.5500
    core 1 pstate 4 - En:0 VID:0 FID:0 DID:0 Freq:800 VCore: 1.5500
    core 1 pstate 5 - En:0 VID:0 FID:0 DID:0 Freq:800 VCore: 1.5500
    core 1 pstate 6 - En:0 VID:28 FID:13 DID:1 Freq:1050 VCore: 1.2000
    core 1 pstate 7 - En:0 VID:28 FID:13 DID:1 Freq:1050 VCore: 1.2000
    Processor Maximum PState: 1
    Processor Startup PState: 2
    
    Minimum allowed VID: 52 (0.900v) - Maximum allowed VID 28 (1.200v)
    Processor AltVID: 60 (0.800v)
    Processor Northbridge VID: 52 (0.900v)
    
    SMAF7 is disabled; processor is using LMM Configuration Registers for Power Mana
    gement
    DID to apply when in C1E state: 0
    
    Voltage Regulator Slamming time register: 2
    Voltage Regulator AltVID Slamming time register: 2
    Voltage Regulator Step Up Ramp Time: 0
    Voltage Regulator Step Down Ramp Time: 0
    Done!
    You may see at the top Core 0 PState 0, and some rows below Core1 PState 0.
    Now look that Pstate 0 (both Core 0 and Core 1) has VID=40, DID=0 and FID=13 in this example.
    Also look that Pstate 6 (on both cores again) has VID=28, DID=1 and FID=13

    To prevent any transition to pstate 6 i found that overwriting the pstate 6 parameters with the same values just stops the transitions. Don't know why, just discovered that works! (nb: It works also if you put anything else in there, but just to be safe use the same parameters you got from the table).
    So, following the example pstates table of above, I wrote:

    TurionPowerControl -pallc 6 28 1 13

    and there are no more transitions to pstate 6!

    The same doesn't apply to pstate 7, but actually I managed to mitigate the problem with this other command (always remember to change parameters according to your pstates table):

    TurionPowerControl -pallc 7 40 0 13

    this actually write the values I have in pstate 0 over pstate 7, so transitions from pstate 0 to pstate 7 doesn't require stabilization time, and doesn't overvolt the processor too. Some people reported to have issues when touching pstate 7, so if your computer crashes issuing last command, just forget it: transitions to pstate 7 are much less frequent than transitions to pstate 6.

    UPDATE 2010/05/28 - Some more speculation about Pstates 6/7

    Hi guys, I report some news.

    First, I investigated more about the pstate6/7 behaviour.
    I found and report the fact that I can undervolt my processor much more with pstate 6 anomaly on than with pstate 6 anomaly fixed.

    Without touching pstate 6 (so with anomaly on), I can undervolt my processor pstate 0 to 1.0375v for core 0 and 1.050v for core 1, and it's running pretty stable for some days now.

    Touching pstate 6 (so with anomaly fixed) I can't go below 1.075v (for both cores) because I experience sudden crashes. The most curious thing is that I can undervolt to 1.050v or even 1.0375v: the computer will work fine for some time, but then all of a sudden I get a crash.

    I'm thinking more and more about the fact that pstates 6 and 7 serves as a sort of "trampoline" to pstate0, and they just allows the voltage to ramp up just a moment before frequency goes up too, and so allow better voltage stabilization.

    BTW, it looks like they produce a bit warmer processor, but actually I can't say nothing about battery life.

    UPDATE 2011/07/05:

    TurionPowerControl is a command line program available for Win x86, Win x64 and Linux that can be downloaded from this homepage:

    TurionPowerControl Homepage

    It allows to tweak VID, FID and DID of Turion ZM/RM and Athlon QL processors and now also for Phenom, Phenom II, Athlon II and Turion II processors. Also shows lots of informations about processor internals, like HTC (Hardware Thermal Control) status, HyperTransport link, power states tables and more.

    Executables and source code are included.
    Also for Linux there's a little script to compile the program for your specific distribution and platform (see included documentation)

    I provide the older stable version (0.22) for people who can have problems with newer version. Remember that version 0.22 does not support Family 10h processors (like Phenom, Phenom II, Athlon II and Turion II), but just Family 11h processors (Turion ZM/RM and Athlon QL).
    It is available here:

    TurionPowerControl v0.22


    MSVC Project source code (v0.12):

    I also put here the whole sourcecode (and project files, version 0.12) and binaries compiled for x86 and x86-64 for Windows using Microsoft Visual Studio C++ 2008. You can grab them here:

    TurionPowerControl v0.12 - MSVC Sourcecode and Project Files
     
  2. miner

    miner Notebook Nobel Laureate

    Reputations:
    1,326
    Messages:
    7,137
    Likes Received:
    0
    Trophy Points:
    205
    Yeah, I have noticed the spikes. Why it happens I do not know. Although in my case it happens very infrequently. I have been using Puma State Ctrl on my ZM 86 for a while now and wouldnt mind trying out yours if you have a 64bit version available.
     
  3. Evolution

    Evolution Vox Sola

    Reputations:
    413
    Messages:
    1,293
    Likes Received:
    0
    Trophy Points:
    55
    Same here, I have the same spikes on my ZM-82. I never noticed this before since I rarely use vista's high performance setting. However I would have noticed this in the past because I used RMclock on my previous TL-50; but since RMclock doesn't work with the newer AMD processors I never noticed that this overvolt was occurring.

    This is probably a CPU errata.
     
  4. blackshard83

    blackshard83 Notebook Consultant

    Reputations:
    43
    Messages:
    204
    Likes Received:
    0
    Trophy Points:
    30
    Oh thanks god someone replied :)

    Unfortunately I have no 64bit version available at the moment, but I'm planning to a build a specific version as soon as possible, and maybe post here a copy of both 32 bit and 64 bit versions.
    It would be nice if some people with RM and QL processors show up here, because I would add specific support for those processors too (actually official support is just for ZM processors).

    About the spikes, I got tons of them when power profile is set to maximum performance. Actually I don't like them at all, I really can't get used to the fact that my processor goes overvolted and they caused me some issues with low latency asio-based audio software (like buffer underruns with fruityloops).

    I noticed too that if I touch any of the pstate 6 parameters (VID, DID or FID) with my program, those spikes and transitions to pstate 6 just stops and the processor goes to behave like specifications say.

    Well, they happen even when power profile is set to balanced. It looks like they happen when entering/exiting fastest pstate 0.
     
  5. Evolution

    Evolution Vox Sola

    Reputations:
    413
    Messages:
    1,293
    Likes Received:
    0
    Trophy Points:
    55
    I also notice a slight overclock when the CPU is running at maximum speed and under heavy load. For instance sometimes it goes beyond 2200mhz once it almost reached 2300mhz, could this be the possible reason for the overvolt.

    Anyway I haven't seen this overvolt phenomenon on anything other than the high performance setting so far; for me it hasn't occurred when I am running in the power saver or balanced setting(atleast I haven't seen it during my monitoring so far). I really have a strong feeling this is a cpu errata.
     
  6. 2.0

    2.0 Former NBR Macro-Mod®

    Reputations:
    13,368
    Messages:
    7,741
    Likes Received:
    1,022
    Trophy Points:
    331
    It might just be an error with the AMD power monitor program as CPU-Z doesn't report 1.2v for my ZM-80.

    I have top voltage set @ 1.012V using pumastatectrl. CPU-Z reports at as 1.012V while AMD power monitor reports an flip-flop of 1.013V and 1.200V.

    My High performance Processor state setting is 100% min/100% max for plugged in.
     
  7. blackshard83

    blackshard83 Notebook Consultant

    Reputations:
    43
    Messages:
    204
    Likes Received:
    0
    Trophy Points:
    30
    Well actually I don't think it is a power monitor mistake. CPU-Z has a much slower update rate, but on my machine it still reports 1.200 volt sometimes.

    To be sure about readings I made a monitoring feature in my software that tracks realtime pstate changes asking directly to the processor's Machine State Registers every 50ms and registers transistion to other pstates than 0, 1 and 2. A one minute monitoring reports this:

    Code:
    Turion Power States Optimization and Control - by blackshard
    Detected CPU:
    Family: 0xf             Model: 0x3              Stepping: 0x1
    Extended Family: 0x11   Extended Model: 0x3
    Processor has 3 Power Planes
    Monitoring...
    pstates:6
    Detected pstate 6 on core 0
    pstates:1 6
    Detected pstate 6 on core 1
    pstates:1 6
    Detected pstate 6 on core 1
    pstates:2 6
    Detected pstate 6 on core 1
    pstates:1 6
    Detected pstate 6 on core 1
    pstates:2 6
    Detected pstate 6 on core 1
    pstates:2 6
    Detected pstate 6 on core 1
    pstates:1 6
    Detected pstate 6 on core 1
    pstates:1 6
    Detected pstate 6 on core 1
    pstates:2 2 ^C 
    Attached to this post there's the application for Win32 targets. It requires admin privileges and visual studio 2008 runtimes.
    Trying to launch the app without any flag shows accepted command switches.
    Launching the app with -CM will start monitoring sequence (use CTRL+C to terminate the session), while using -l switch will show pstates table.
     

    Attached Files:

  8. 2.0

    2.0 Former NBR Macro-Mod®

    Reputations:
    13,368
    Messages:
    7,741
    Likes Received:
    1,022
    Trophy Points:
    331
    I can't get CPU-z to report the 1.2V in high performance mode. But the AMD power monitor flip-flops between 1.012v and 1.2v a few times a second.

    Here's something interesting though; loading the CPU to 100% utilization using wprime, the voltage caps @ 1.013V and never peaks into 1.2V as according to AMD power monitor.

    Same if I set wprime to 1 thread.

    Playing an MP3 or video through Win Media 11, the frequency of crossing into 1.2V is reduced.

    Running an anti-virus scan with a sustained CPU utilization rate above 33% also prevented the voltage from crossing into pstate6, 1.2V. Same with doodling in ArtRage which while doodling maintains a CPU utilization rate above 33%.

    So I suppose the conclusion is that it only goes into P-state6 (1.2V) at relative idle and not under any appreciable load. Must be by design.

    I wonder if those who have not undervolted experience this jump to 1.2v, Pstate 6?
     
  9. blackshard83

    blackshard83 Notebook Consultant

    Reputations:
    43
    Messages:
    204
    Likes Received:
    0
    Trophy Points:
    30
    Yes, exactly same to me, with and without undervolting: they are much frequent when idling.
    AMD Power monitor shows also frequency switching from 2100 to 1050 Mhz

    If you can run my program above, fire this command:

    > turionpowercontrol -pallc 6 48 1 13

    In my experience it stops transitions to pstate 6 immediately just by overwriting pstate 6 vid, fid and did.

    Maybe try also

    > turionpowercontrol -CM

    It shows to me some transitions to pstate 7 too :confused:

    edit: since I don't know your processor model
     
  10. 2.0

    2.0 Former NBR Macro-Mod®

    Reputations:
    13,368
    Messages:
    7,741
    Likes Received:
    1,022
    Trophy Points:
    331
    I have ZM-80, but running Vista X64.
     
  11. blackshard83

    blackshard83 Notebook Consultant

    Reputations:
    43
    Messages:
    204
    Likes Received:
    0
    Trophy Points:
    30
    Damn.
    Try the attached archive: i substituted the .sys driver with the x64 version. Some people say that sometimes works.

    I can't access a x64 machine at the moment.
    Just give it a chance.
     

    Attached Files:

  12. 2.0

    2.0 Former NBR Macro-Mod®

    Reputations:
    13,368
    Messages:
    7,741
    Likes Received:
    1,022
    Trophy Points:
    331
    Unfortunately, didn't work. reported back "unable to initialize WinRing0 library".
     
  13. miner

    miner Notebook Nobel Laureate

    Reputations:
    1,326
    Messages:
    7,137
    Likes Received:
    0
    Trophy Points:
    205
    Yeah, I can confirm it as well.
     
  14. blackshard83

    blackshard83 Notebook Consultant

    Reputations:
    43
    Messages:
    204
    Likes Received:
    0
    Trophy Points:
    30
    :(
    I will lose some hours tomorrow to let visual studio express compile a x64 project, so stay tuned :cool:
     
  15. blackshard83

    blackshard83 Notebook Consultant

    Reputations:
    43
    Messages:
    204
    Likes Received:
    0
    Trophy Points:
    30
    Ok it compiles and runs on a windows xp x64 machine.
    Attached there is a small txt with some clarifications.
    Please report -l command output or errors.

    However the pstate6 issue is reported on an athlon x2 QL too.
     

    Attached Files:

  16. miner

    miner Notebook Nobel Laureate

    Reputations:
    1,326
    Messages:
    7,137
    Likes Received:
    0
    Trophy Points:
    205
    At first shot it seems to work fine -l does list all of the pstates. However, it doesnt seem to change the voltages even though it goes through without any errors. Also while trying to change the nbvid, any value input results in a voltage of 1.550V(atleast according to AMD power monitor) from the stock 0.900V.
     
  17. blackshard83

    blackshard83 Notebook Consultant

    Reputations:
    43
    Messages:
    204
    Likes Received:
    0
    Trophy Points:
    30
    What command you fired?

    To set vddnb to 1.550 you had to pass 0 to -nbvid command switch.
    However processor won't allow such high voltage to be passed to the voltage regulators: it will do internal filtering and cut to 1.200 (VID 28 is maximum, if I remeber correctly). Anyway AMD Power monitor will still report wrong value read from registers. Practically VID value cannot go below 28 and over 64, the program will allow to, but values over ranges will be cut by processor itself.

    About changing FID, VID and DID, changes to the pstate table become effective when a transition to a different pstate happens, so after firing commands, try to do something like opening a browser or a folder to induce some load on the processor.
     
  18. miner

    miner Notebook Nobel Laureate

    Reputations:
    1,326
    Messages:
    7,137
    Likes Received:
    0
    Trophy Points:
    205
    Ok this is what I did. Essentially I wanted to set the vcore at 1.065V @ 2.4GHz. This should equate to a pstate 0, DID 0, FID 16 based on what I got from the -l command. The stock vcore was 1.1V with VID of 36. So, I set the -psmax to pstate 0 and both AMD power monitor and CPU-Z reported max clock speeds and it stayed there. Next I tried using the -pallc switch to change the vcore at this pstate. Since 1.065V equates to VID 39. I used this command .exe -pallc (0) (39) (0) (16). This resulted in the cores running at pstate 2(600MHz) @ 1.1V.

    As far as the nb is concerned i ran this command .exe -nbvid (60) which should result in the nb vcore to 0.8V from the default 0.9V but instead the power monitor started showing 1.55V. I tried running wprime but it didnt change the nb vcore at all.
     
  19. blackshard83

    blackshard83 Notebook Consultant

    Reputations:
    43
    Messages:
    204
    Likes Received:
    0
    Trophy Points:
    30
    I think I found your problem: don't use parenthesis!
    I'm sorry, I didn't write it in the txt file.
    Usually parameters inside a couple of round brackets indicates a mandatory parameter and are not part of the parameter itself.
     
  20. blackshard83

    blackshard83 Notebook Consultant

    Reputations:
    43
    Messages:
    204
    Likes Received:
    0
    Trophy Points:
    30
    Hello, I'm raising this thread up because there are new development on this fact.

    I recently completed a port of my program (the same you can download somewhere in this thread) for linux (fedore core 10 x64).
    On my distribution it works exactly as Windows version do.
    I made some checks and found that also Linux has the same issues I report with Windows! Attached screenshot just shows same issues.

    At the moment we know that:

    - Happens on Turion ZM/RM/QL processors (all 65nm parts, in practice)
    - Happens on HP and Acer notebook, so it seems to be not manufacturer specific
    - Happens on both Windows and Linux OSes.

    If someone wants, I can share source code to let you compile on your specific distro.
     

    Attached Files:

  21. blackshard83

    blackshard83 Notebook Consultant

    Reputations:
    43
    Messages:
    204
    Likes Received:
    0
    Trophy Points:
    30
    It's just the same.
    QL Family is the same as RM and ZM family, but they have 2 usable pstates instead of 3. They support as low voltages as RM and ZM do.
    A guy on amd forums reported nice results with QL-60 processor, and he reported pstate 6/7 anomaly too.
     
  22. blackshard83

    blackshard83 Notebook Consultant

    Reputations:
    43
    Messages:
    204
    Likes Received:
    0
    Trophy Points:
    30
    0.95v is default voltage for your processor at 1 Ghz frequency, that is the frequency when the processor is idle.

    With my program, using the appropriate command switches, you can set your idle frequency to 500 Mhz, for example (=> less heat, more battery life), and downvolt to 0.800v or less (again, less heat, more battery life).
    You can also reduce northbridge voltage and highest performance pstate parameters to tweak your processor.
    Using -CM command switch you can also verify if your processor has odd transitions to pstate 6 and 7.
     
  23. blackshard83

    blackshard83 Notebook Consultant

    Reputations:
    43
    Messages:
    204
    Likes Received:
    0
    Trophy Points:
    30
    Normally your processor will use pstate 0 and pstate 1, other pstates are not used.
    PState 0 has vcore around 1.100volt (depending on processor frequency), while pstate 1 has vcore around 0.950volt.
    You have to tweak these two values to obtain some energy saving, just don't take care of other pstates because they are never used (except for pstate 6 and 7 related to the issues I'm talking in the first page of this thread)

    A command you can issue is:

    TurionPowerControl -pallc 1 60 1 12

    This will impose both cores to run at 0.800volts (vid=60) instead of 0.950volts when it is in idle state (pstate 1, for ql processors) at 1 Ghz frequency (did=1 and fid=12 mean 1 ghz frequency, see the readme.txt file for the formula).


    You can also try this:

    TurionPowerControl -pallc 1 64 2 12

    This will let both cores to run at 0.750volts at 500 Mhz when idle, instead of 0.950volts at 1 Ghz.


    You may also try this newer build (linux source code included):

    Link to TurionPowerControl
     
  24. miner

    miner Notebook Nobel Laureate

    Reputations:
    1,326
    Messages:
    7,137
    Likes Received:
    0
    Trophy Points:
    205
    Is there any way to set all three pstates and VID's at once. What I want to do is to create a task to set it to run TPC on boot up and have it set the VID's to all three pstates?
     
  25. blackshard83

    blackshard83 Notebook Consultant

    Reputations:
    43
    Messages:
    204
    Likes Received:
    0
    Trophy Points:
    30
    Sure. Just concatenate more switches.
    For example, I created a task in task shedule with following command:

    TurionPowerControl -pallc 0 37 0 13 -pallc 6 37 0 13 -pallc 7 37 0 13 -pallc 1 62 1 13 -pallc 2 64 2 13

    It will set
    1.0875@2100Mhz for pstate0
    1.0875@2100Mhz for pstate6
    1.0875@2100Mhz for pstate7
    0.775@1050Mhz for pstate1
    0.750@525Mhz for pstate2

    It worths noting that (*for me*) programming pstate6 prevents automatic transitions to that pstate. The same doesn't happen for pstate7.
    Other people isn't able to program pstate7 at all: touching it causes machine crash.
     
  26. blackshard83

    blackshard83 Notebook Consultant

    Reputations:
    43
    Messages:
    204
    Likes Received:
    0
    Trophy Points:
    30
    I'm glad you found my software useful ;)
     
  27. rowboat71

    rowboat71 Newbie

    Reputations:
    0
    Messages:
    3
    Likes Received:
    0
    Trophy Points:
    5
    Hi.
    Anyone has tried to undervolt the northbridge? If so what were the results in terms of heat reduction and battery gains?
    Anyone has made some tests to heat or battery life regarding with and without the p-state fix?
    I'm using the Pumastatecrtl to undervolt the cpu and i also see some peaks (not that much) in the amd monitor (toshiba with a ql-60). I'll try this little program and post the results.
    Thanks to all.
    Thanks to the programmer :)
     
  28. Lord_of_Muspell

    Lord_of_Muspell Newbie

    Reputations:
    0
    Messages:
    8
    Likes Received:
    0
    Trophy Points:
    5
    I too am having the 1.2 V spike, and I downloaded your software hoping it could fix it, and I have no idea how to use it. I click on the .exe, and cmd comes up for a split second and then closes. What am I supposed to do?
     
  29. blackshard83

    blackshard83 Notebook Consultant

    Reputations:
    43
    Messages:
    204
    Likes Received:
    0
    Trophy Points:
    30
    Lord, you have to use the command prompt to run the software, it is a command-line program.

    There's a readme file inside the archive, if not you're not using the latest version you can grab it here:

    http://amdath800.dyndns.org/amd/tpc.rar

    Extract the archive into c:\ (for example),

    then go to accessories -> command prompt and run it as administrator

    then write
    cd \TurionPowerControl

    then do (if you have 32-bit windows)
    cd x86
    or (if you have 64-bit windows)
    cd x64

    then write
    turionpowercontrol

    and so the program starts, showing possible options. Take a look to the readme file for some usage suggestions
     
  30. blackshard83

    blackshard83 Notebook Consultant

    Reputations:
    43
    Messages:
    204
    Likes Received:
    0
    Trophy Points:
    30
    Well, I tried to undervolt the northbridge. apparently I get nearly no gains, BTW I downvolted it from 0.900v to 0.825v with significant stability.
     
  31. Th3_uN1Qu3

    Th3_uN1Qu3 Notebook Deity

    Reputations:
    214
    Messages:
    1,192
    Likes Received:
    0
    Trophy Points:
    55
    I can't get it to run under Ubuntu 9.04 x64, here's the program output:

    Code:
    un1qu3@Anya:~/Desktop/TurionPowerControl/linux src$ sudo ./TurionPowerControl -l
    Turion Power States Optimization and Control v0.11- by blackshard
    cpuid:open: No such file or directory
    Cpuid_Fn0 Instruction failed
    Error: unable to get processor specifications
    un1qu3@Anya:~/Desktop/TurionPowerControl/linux src$
    I have a QL-62. The readme says something about /dev/cpu/0/msr and /dev/cpu/1/msr, i don't have those. What can i do about it?

    Edit: I have loaded the msr kernel module and the files are now available, but it still says the same thing.
     
  32. Strats

    Strats Notebook Consultant

    Reputations:
    0
    Messages:
    152
    Likes Received:
    0
    Trophy Points:
    30
    Turion processors are bad............ Get Intel.
     
  33. Th3_uN1Qu3

    Th3_uN1Qu3 Notebook Deity

    Reputations:
    214
    Messages:
    1,192
    Likes Received:
    0
    Trophy Points:
    55
    Yeah, what a way to make your first post, in a thread were people are actually trying to accomplish something.

    I have an Intel C2D E6550 in my desktop computer, and it is overclocked to 3.67GHz, i also have a voltmodded HD3870 which will get upgraded soon. The C2D runs very fast and i am happy with it, but for my laptop i decided for an AMD/ATI combo. Reasons: Price and availability. I really wanted no lower than the HD3470, and i couldn't find a more balanced configuration for $750. If you don't believe me, well you're free to drop by here and find one for me with an Intel chip, with the same price tag and same level graphics.

    Anyway, i have bought this laptop and i like it (apart from the fact that it is too shiny for its own good, really), and i am trying to make it run cooler. What's your problem? :p
     
  34. highlandsun

    highlandsun Notebook Evangelist

    Reputations:
    66
    Messages:
    615
    Likes Received:
    6
    Trophy Points:
    31
    You need the cpuid kernel module too, and then you need permission to open the device files. I just run it as root...
     
  35. Th3_uN1Qu3

    Th3_uN1Qu3 Notebook Deity

    Reputations:
    214
    Messages:
    1,192
    Likes Received:
    0
    Trophy Points:
    55
    Thanks, it works now. Let's see what it can do. :) Edit: It seems to be working as i can change the speed and listen to the fan rev up or slow down. However my CPU monitor applet isn't indicating the correct speed, neither does cat /proc/cpuinfo. Another reason to go back to Windoze.

    Oh btw, i have noticed that my CPU has a third frequency, 800MHz. The corresponding pstate was disabled and the VID was wrong, however i set that and switched to it, but i have no idea if it worked or not. How can i find out?

    Edit: I managed to crash my DV5 by setting the voltage too low. Now i know it works. :D After reboot i found some values that work for now, 0.9250v at 2GHz and 0.8750 at 1GHz. I now have a QUIET laptop. ;)

    Edit 2: Down to 0.9250/0.7625, verified with CPU Burn-In. ;)
     
  36. red11

    red11 Newbie

    Reputations:
    0
    Messages:
    2
    Likes Received:
    0
    Trophy Points:
    5
    Hello all -- never posted here before but have lurked for awhile. First off, my tech level is fairly high (I build systems) Purchased a new notebook earlier in the month (an HP Pavilion dv4-1220us), and have been having a very irritating problem about processor speed not staying constant... I am essentially trying to do the OPPOSITE of you folks, who want the processor to lower itself most of the time -- I want it to run at MAX speed most of the time since it's a second desktop for me. Nevertheless, it seems like I have bumped into the same issue.

    No one has been able to help me at other forums, HP is fairly clueless, and after hours of Googling, I found this thread (and blackshard's on a few AMD sites)

    The notebook's processor is 2.1GHz dual core Turion x64 -- RM-72, and is throttling itself down by changing the multiplier dynamically from 10.5 to 5.25 (even when set at max performance). It is spec'd to run at 2.1GHz, and by looking at the performance in real-time with CPU-Z, I see that it hits that mark (or slightly exceeds it). The problem is that it randomly changes the multiplier from 10.5 to 5.25 -- meaning that the core speed drops from about 2.1GHz to 1.50GHz. The shift doesn't even seem to correspond based on processor load -- it just won't run at a constant 2.1GHz.

    The laptop shipped with Vista Home Premium 64-bit, so I went to the Power Management Options in Control Panel and set it to High Performance. Additionally, I set "minimum processor state" and "maximum processor state" on both AC and battery power to 100% -- if this was working correctly, the processor would run at 2.1GHz all of the time, and if I changed it to 50%, it would run at 1.1GHz all of the time.

    Windows Power Management is working fine if I set it to throttle lower -- for instance, if I set min/max processor settings to about 50%, it will lock the multiplier at 5.25 and run consistently at about 1.1GHz. If I push it past 50%, it starts shifting the multiplier again randomly (all the way back up to 10.5 for ~2.1GHz. I've noticed that during this, there are also slight fluctuations in the Core VID (voltage) showing on CPU-Z as well, making me wonder if this is the source of the fluctuation.

    I am seeing blackshard and other comments about the "transitional" pstate that shouldn't even exist at this exact CPU speed!

    I wrote HP support and they suggested I flash the BIOS with a recent update geared to Vista SP2 (revision F.49) -- it did nothing except possibly mess with the fan settings and perhaps make the machine run hotter -- ugh.

    They then suggested I look at Vista's power management settings and tweak the minimum processor state, which was already done before emailing them to begin with -- a canned response if I ever saw one...

    Finally, they suggested that I do a system restore through Vista, but I turned this feature off when initially setting up the PC (perhaps an oversight, but I was trying to free up disc space until I had everything "just right"), meaning that I would have to do a complete factory refresh of the machine by using HP's Recovery Manager -- reinstalling every single device driver manually on top of that -- I have a funny feeling it won't help and that this post reveals the source of the problems: some type of design flaw in either the processor family or motherboards that a number of these laptops are shipping with.

    Based on what I've written here, do you think that this is probably the cause of my problem? I am planning on testing the software to see if it helps.
     
  37. Th3_uN1Qu3

    Th3_uN1Qu3 Notebook Deity

    Reputations:
    214
    Messages:
    1,192
    Likes Received:
    0
    Trophy Points:
    55
    Forcing the power state in this program should work. However, when i had Vista, the Maximum Performance scheme did make the CPU work at 2GHz all the time. Dunno what's wrong with yours, but i believe it has to do with HP's craptastic BIOS.

    However, i strongly believe you will see any gains. The reasons why you would want to disable power saving options on a desktop system usually have to do with them inducing instability when overclocking. ;) At stock speeds (don't think this lappy can be oc'ed) everything should be fine.
     
  38. blackshard83

    blackshard83 Notebook Consultant

    Reputations:
    43
    Messages:
    204
    Likes Received:
    0
    Trophy Points:
    30
    To get maximum processor speed all the time you have to set High Performance as Windows energetic profile.

    But it is not enough, since there exist the problem I talked about in the first post and red11 seems to experience too.

    As previously said, this happens because there are transitions to pstate 6 and 7, that are not described anywhere in the documentation.

    To prevent any transition to pstate 6 i found that using this command works:

    TurionPowerControl -pallc 6 48 1 13

    actually I don't know the reason why, but overwriting pstate 6 with same (or different, it doesn't matter) parameters STOPS transitioning to that pstate.

    The same doesn't apply to pstate 7, but actually I managed to mitigate the problem with this other command:

    TurionPowerControl -pallc 7 36 0 13

    this actually write the parameters I have in pstate 0 on pstate 7, so transitions from pstate 0 to pstate 7 doesn't require stabilization time, and doesn't overvolt the processor too.

    About this problem I wrote to both HP and AMD support. AMD support told me to ask HP, HP support told me they don't care about "thirdy-parties" software reporting infos (I used AMD Power Monitor, then my own software) :confused:
     
  39. blackshard83

    blackshard83 Notebook Consultant

    Reputations:
    43
    Messages:
    204
    Likes Received:
    0
    Trophy Points:
    30
    Wait a moment, you managed to get stable 0.9250v at 2 Ghz? This is really incredibile because usually users can't go below 1.025v @ around 2 Ghz! Can you please post here a screenshot of the output of this command:

    TurionPowerControl -l


    BTW, you can set any frequency below 2 Ghz using FID and DID combinations, also it is possibile to use more pstates than default (2 on QL processors, 3 on ZM/RM).
    To gain access to more pstates, first you have to set the psmax parameter, for example:

    TurionPowerControl -psmax 2

    This will set psmax to 2 instead of 1 on your ql processor.
    Then you have to force (using the -fo parameter) a transition to pstate 2, for example:

    TurionPowerControl -fo 0 2 -fo 1 2

    This command will put your processor to pstate 2, BUT this is useless, since your operating system will switch to a "regular" pstate as soon as needed.

    To check your current processor pstate you can launch:

    TurionPowerControl -CM

    this will put the program in Check Mode that continously shows current pstates and reports any transition to pstate 6 or 7.
     
  40. red11

    red11 Newbie

    Reputations:
    0
    Messages:
    2
    Likes Received:
    0
    Trophy Points:
    5
    Hello -- I tried your program and it actually stopped the random transitions to pstate6. This is on my HP dv4-1220us laptop with an RM-72 2.1GHZ Turion x2 processor, so you can add that to the list of "bugged" notebooks.
    I wanted to say THANKS because no one from HP was any help, nor could I find help anywhere else on the web.
    I did have a couple of questions to help me fix the problem.

    First, the following is a list of my pstate tables given to me by your program:

    ---

    ---

    Based on this, I used the following command to alter pstate 6 and pstate 7 on both cores:

    ---

    TurionPowerControl -pallc 6 28 1 13 -pallc 7 34 0 13

    ---

    What this does (I think), is overwrite pstate6 with the default STOCK values (as shown in the table above), but nevertheless stops the random, unecessary transitions to pstate6.

    Further, it overwrites pstate 7 with the default STOCK VALUES of pstate 0, which, as you say, will prevent transitions from pstate 0 to pstate 7 from overvolting the processor and requiring stabilization time.

    Am I correct in understanding what these commands do given the pstate tables I've posted?

    Also, do you feel that this is a sufficient solution for my purposes? (I am not interested in undervolting, just to stop the spikes). I am not sure if I am putting my hardware in danger by effectively getting rid of these transitions.

    Finally, how would I go about getting your program to run for me automatically on boot? I am on Vista Home Premium 64-bit.

    Again, thanks so much for your help!
     
  41. blackshard83

    blackshard83 Notebook Consultant

    Reputations:
    43
    Messages:
    204
    Likes Received:
    0
    Trophy Points:
    30
    Yes, it is ok. Overwrite pstate6 with its own values and pstate7 with pstate0 values.

    Well, about hardware danger, I think there is no particular reason to feel in danger.
    Actually an user on amdzone forum told the overvolting behaviour is probably due to get some more stability. It is credible, since it would allow the processor to ramp up voltage between pstate1 and pstate0 faster.

    ATM I'm using this fix for months and I experienced no apparent danger or instability on my notebook (dv5-1025el), so I think this trick is safe enough.
    BTW, it looks like that ALL 65nm Turion/Athlon processor do the same thing, indipendently from the notebook brand.

    To let the program start automatically on every startup, you can use the Task Scheduler (Control Panel -> Administrative Tools -> Task Scheduler) and create a new activity that start at boot or at user access. Maybe at user access it is better because if you turn your computer in standby/hibernation regular settings will be restored.
     
  42. Th3_uN1Qu3

    Th3_uN1Qu3 Notebook Deity

    Reputations:
    214
    Messages:
    1,192
    Likes Received:
    0
    Trophy Points:
    55
    I deliver. :p I bumped it up a notch to 0.9375 last week as it was CPU Burn-In stable but VirtualBox didn't quite agree with that. With 0.9375 everything is rock stable.

    [​IMG]

    Also, with the settings you see, my battery life has increased from 1:30 to 1:50. I was able to watch an entire movie when i was on the bus on my way here (i'm now at my grandparents, in another town than my home), and still had about 10 minutes of battery left. :D

    That's something i wanted to ask - why is the max pstate detected as pstate 1, as that's 1GHz? Or is it simply taking the pstates in order, in that case it's obviously that 1 is the max because 2 is disabled.

    So i take it there's no real way to keep the CPU at 800MHz? That'd be cool... Hmm. I can use the CPU Frequency applet in the Gnome panel to force 1GHz or 2GHz on each core or set the freq governor if i want the changes to be automatic.

    Wonder what happens if i set the applet for 1GHz and force a transition to pstate 2. Since the frequency won't be reported, benchmark results and fan speed will probably be the only guidelines, but if it'll work it should get slower, and that's not hard to feel. ;)

    Edit: I used the -CM option and got transitions to pstates 6 and 7 detected, so i set those to 0.7625v as well. It's all good for now. But i wonder if those transitions really affect anything, because there was no change in fan speed.

    Edit 2: Whoa, so you mean i can do THIS???
    Code:
    core 0 pstate 2 - En:1 VID:63 FID:0 DID:1 Freq:400 VCore: 0.7625
    World's first 400MHz dual-core. :D

    Yes yes another edit: I didn't believe this thing can go as low as 400MHz so i set that to pstates 0 and 1, and booted up my XP virtual machine. May i say, everything went slooooooooowwwwwwww. So it's for real. FL Studio running in the VM used up 80% CPU just by sitting idle, i don't want to tell you what happened when i actually tried to play something. 400MHz huh? If it's enough for playing movies, i'm all for it.
     
  43. highlandsun

    highlandsun Notebook Evangelist

    Reputations:
    66
    Messages:
    615
    Likes Received:
    6
    Trophy Points:
    31
    Cool, gonna have to try that. Of course my ZM-80 already idles at 525MHz so 400MHz shouldn't be a big deal. How about 2 or 300MHz, hmmm...
     
  44. Th3_uN1Qu3

    Th3_uN1Qu3 Notebook Deity

    Reputations:
    214
    Messages:
    1,192
    Likes Received:
    0
    Trophy Points:
    55
    400MHz is as low as mine goes. And yes it still does play video, tried HD 720p and it's smooth as silk. :D Hooray for GPU accelerated video playback.

    I have noticed something interesting about pstates 6 and 7 - once i dropped the voltage on them my laptop started locking up if running VirtualBox or Opera. It locks up entirely and the caps lock LED starts flashing. However CPU Burn-in does not fail... And it did fail when i set the vcore too low in pstate 0. I have reverted them back to the stock 1.2v setting, it seems the CPU somehow needs these pstates to switch from state 0 to 1 properly? If so, which is the real voltage, the one set to pstates 0 and 1 or the one set to 6 and 7? I'm not likely to find that out however, as i can't seem to get a real-time voltage reading under Linux. All i know is that undervolting with this program does work, and that undervolting the 6 and 7 p-states only made the laptop unstable, heat output and fan speed were exactly the same.
     
  45. blackshard83

    blackshard83 Notebook Consultant

    Reputations:
    43
    Messages:
    204
    Likes Received:
    0
    Trophy Points:
    30
    Well, I was able to run both cores stable at 262 Mhz using divisor 3. Once I remeber also a 131 Mhz with reserved divisor 4 :D but was truly slow and locked up when trying transition to upper pstate.

    pstate maximum is a register in the processor, and tells the processor how high on pstates it can go. Look that lower pstates mean higher performance.
    psmax set to 1 means that the processor isn't allowed to go over pstate 1. On my ZM-80 psmax is set to 2, so I got pstate 0, 1 and 2.

    OS cpu frequency scalers won't simply take care of that parameter, so if you set psmax to 3, 4 or 5, OS scalers won't be affected at all.
    Anyway it affects the possibility to force a transition with turionpowercontrol, as I stated above.
    So, if you want to run your processor at a fixed frequency, disable your cpu scaler (or lock it in any specific frequency), then use turionpowercontrol to force the pstates you like.

    Pstate 6 and 7 are quite delicate. Since it is not really clear what they do and why they are invoked. It's a matter of conjecture playing with them.
    Actually if you overwrite pstate 6 transitions to that pstate stops, so pstate 6 goes out of the scene.

    PState 7 anyway is a real problem, because I found that playing with it often causes lockups with blinking leds.

    I suggest you to overwrite pstate6 with it's own parameters and leave pstate7 alone.

    Consider also that new parameters for a pstate become effective only when a new transition to that pstate happens.
    For example, if you're using cpu burnin, you got probably both cores in pstate 0. If you overwrite pstate 0 while cpu burnin is running, your settings are not immediately applied. You have to stop cpu burning (letting cores go in pstate 1) and then run it again.
    If you're using windows, use coretemp to monitor actual frequency and vcore settings.

    Also I found fruity loops is a killer for my machine: while prime95 runs fine with 1.0500v on pstate0, fruity loops crashes very well! I had to raise to 1.0875v to get full stability, with pstate 6 patch.
     
  46. Th3_uN1Qu3

    Th3_uN1Qu3 Notebook Deity

    Reputations:
    214
    Messages:
    1,192
    Likes Received:
    0
    Trophy Points:
    55
    I think i have said enough times that i am not using Windows. I've always been a Windows guy and only played with Linux a bit every now and then, but on this laptop i had two serious reasons to switch:

    1. Audio was stuttering every 30 seconds or so. I understand software mixing sucks, but this was unacceptable. The DPC latency checker was showing huge red spikes when the stutters occured, so one of the drivers wasn't behaving well. Didn't take the time to figure out which one.

    2. I haven't had a virus for over 3 years (and i don't run a background AV), and 10 minutes after i connected this thing to the 'net all sorts of weird things started happening. It got a nasty trojan that kept replicating itself, and it would crash almost everything even in Safe Mode. One of the trojan's files was called hp.exe... Hmmmmm. I managed to get rid of it with ComboFix, but regardless, it was format time for me. Either HP's software's got tons of security holes, or there's a conspiracy involved to sell that BS Norton. We'll never know i guess.

    I always start CPU Burn-in after any changes in turionpowercontrol, so this can pretty much be ruled out. Thanks for your info on pstate 6, i'll try overwriting only that tomorrow, right now it's doing something i can't afford to crash.

    Oh, so it does go lower than 400MHz eh? I'll play with it a bit more. You use FL Studio as well? Making music or just playing around?
     
  47. highlandsun

    highlandsun Notebook Evangelist

    Reputations:
    66
    Messages:
    615
    Likes Received:
    6
    Trophy Points:
    31
    yep, I changed my pstate2 DID and now it's running at 262MHz instead of 525MHz. I think it's made things a couple degrees cooler, which is a win.
     
  48. Evolution

    Evolution Vox Sola

    Reputations:
    413
    Messages:
    1,293
    Likes Received:
    0
    Trophy Points:
    55
    You don't get any errors running at that clockspeed also does it remain stable? I have never attempted to push my ZM-82 lower than 525mhz. The lowest I have ever run it was 525mhz @ 0.7500v any lower voltage causes instability in my tests.

    Not to hijack the thread or anything but has anyone here tried K10STAT a new GUI based undervolt tool for AMD griffin CPUs? You can read about it here. I have tried it and it seems to do a good job as well.
     
  49. Th3_uN1Qu3

    Th3_uN1Qu3 Notebook Deity

    Reputations:
    214
    Messages:
    1,192
    Likes Received:
    0
    Trophy Points:
    55
    Heh, 262MHz, well... Time for a new low i guess. :D Check this out.

    [​IMG]

    Seems to be stable with switching as well. Only problem - It's TOO slow. Really. :p However, messing with the voltage even on pstate 6 alone results in the laptop hanging with the caps lock led blinking.

    So, a little request maybe? blackshard, any way for additional pstates to be available in the Linux CPU frequency switcher? I can code a bit of C++ and Python, maybe i could help.
     
  50. blackshard83

    blackshard83 Notebook Consultant

    Reputations:
    43
    Messages:
    204
    Likes Received:
    0
    Trophy Points:
    30
    I had no errors testing at lower frequencies.
    I see you have a 2.2 Ghz part, Your idle frequency should be 550 Mhz if I am correct, unless you changed FIDs.
    I had instability while was toying around with FIDs, expecially during transitions. I suspect that this is related to memory frequency, but can't be sure at all.

    BTW, K10STAT is a nice addition to the tools able to tweak turion processor. It has nice automatic c&q support and gui fid/did/vid tweaking, but it unfortunately it doesn't allow toying with other pstates than 0, 1 and 2.
     
 Next page →