Results 1 to 21 of 21

Thread: AmdMsrTweaker - New Versions

  1. #1
    Registered User
    Join Date
    Mar 2013
    Posts
    10

    AmdMsrTweaker - New Versions

    Hi,

    as announced in the original thread of AmdMsrTweaker, I took over development of the tool. In this thread I will announce new releases and hope to get feedback from the community. I'm open for feature suggestions. However I don't plan to implement a GUI at this point.

    For usage instructions consult the included readme.txt file or the original thread.

    Release Notes:
    v1.1 2013-04-09
    - support for Trinity and Richland APUs
    - preliminary support for Kaveri APUs

    Download:
    AmdMsrTweaker v1.1

    Source code:
    AmdMsrTweaker @ GitHub

    As an author at Bright Side of News I will also promote the tool there:
    http://www.brightsideofnews.com/news...rt-inside.aspx

    Original thread: New tool: AmdMsrTweaker

    Note to the original author:
    I have tried to contact you via forums (such as this) where you promoted the original release of the tool since I didn't find an e-mail address of yours. Until today I didn't receive a reply. If you want to comment on the situation, please drop me a line.
    Last edited by MarcusBSN; 04-12-2013 at 02:36 AM. Reason: added GitHub link

  2. #2
    Xtreme Enthusiast Punisher!'s Avatar
    Join Date
    Jan 2005
    Location
    Italy
    Posts
    960
    Great tool! Thanks!
    Puni's rig _.->*new?D*<-._ PRIME STABLE OC - CLICK HERE: Cooler Master HAF X NVIDIA EDITION Asus M4A89TD PRO/USB3 + AMD FX-8350 @210x21=4,42Ghz blue voltages (NB/HT @2320Mhz/2730Mhz) + Asus/Zotac GTX580 SLI @851-1702/4204Mhz 1,063V + 8GB of Samsung 30nm DDR3 @1966Mhz 9-9-9-27 1,5V | Caviar Black 3TB SATA III RAID0 | BenQ XL2420TX NVIDIA 3D Vision 2 Lightboost ready | Win7x64 | 3DMark11 - CLICK HERE | 3DMark Vantage - CLICK HERE

  3. #3
    Xtreme Member Formula350's Avatar
    Join Date
    Sep 2008
    Posts
    160
    Rather annoying that Mega requires you to upgrade your browser to use their service :| *sigh* And when I get around that issue by using my Desktop, now I'm told I need to have the latest version of Flash Player... Didn't complain about my rather out of date Java when it was downloading 800TB worth of java-scripts in order to load the site!

    Oh well, I'll check it out sooner or later. You still get a Thanks for providing awesome software for AMD hardware!

  4. #4
    Xtreme Addict
    Join Date
    Jan 2009
    Location
    SF Bay Area, CA (Vallejo)
    Posts
    1,067
    If I get a laptop with the A10-4600M I'd like to try this tool out.
    His 3570K 4.2GHz 1.18v / Corsair H50 / ASRock Z68 Pro3-M / G. Skill 16GB DDR3 1600 / MSI Twin Frozr II 6950 2GB / NZXT Hale90 650w
    Hers G850 2.81GHz / Stock HSF / ASUS P8H61-I / SuperTalent 2x4GB 1333 CL8 / Antec Neo 520c
    Kid's G530 2.4GHz / A70 / ECS H61H2-M2 / OCZ 4GB DDR3 1066 / Antec Neo 620c
    HTPC A6-3650 2.9GHz 1.248v / Stock Copper HSF / MSI A75MA-G55 / G. Skill ECO 4GB DDR3 1866 MHz 9-10-9-28-42 / Coolermaster GX450 Bronze

  5. #5
    Registered User
    Join Date
    May 2006
    Posts
    99
    How to use MSRs to change CPU voltage on trinity (and maybe others). I'm not sure how this tool works exactly, but just stating what I found to be useful when editing MSRs myself.

    MSR 0xC0010064 is top boost bin. Used for single/dual core mode only. Hardly ever used. I suggest not really messing with it since you can make things unstable, but not realize it since the bin is hardly used.
    MSR 0xC0010065 is 2nd boost bin. This is max turbo for quad core mode. You can edit the PCI config space with other programs to make the CPU never drop below this bin. CPU spends the majority of its time at this speed when loaded.
    lower bins not worth editing since they are only used when your system is throttling, which unfortunately trinity loves to do, but you can kill it the throttle with BAR-edit. Only worth bothering to edit if your laptop refuses to use turbo when on battery.

    bits 9 - 15 are the voltage bits. Higher values are lower voltages.

    examples:

    My lowest 16 bits for MSR 0xC0010064 are 0x6010. bits 13 and 14 are high, while the rest are low. This corresponds to a voltage of 1.25V. I lowered this a little to 1.2V, which is 0x7010.
    My lowest 16 bits for MSR 0xC0010065 are 0x8410. bits 10 and 15 are high, while the rest are low. This corresponds to a voltage of 1.1375V. The lowest I can run stable is 1.0425V, which is 0xA210.

    I have been using crystalCPUID to change MSR values. CPU is an a10-4600.

    I looked a little at example usage on the other thread and it looks like you don't need to enter the actual MSR values. One thing thing I am not sure on though, does P0 refer to hardware P0, or software P0?. Software P0 is top non-turbo bin, while hardware P0 is top turbo bin. If this program does not let you edit the boost bins then that is a big hit to its usefulness. I am away from my trinity system ATM so I cannot test it. If so though it looks like I can write command line scripts to do these edits instead of having to do things manually every startup.
    Last edited by Khenglish; 06-30-2013 at 12:57 PM.
    Clevo P150EM
    2920xm ES @4.35GHz
    680m @954/4620, 1V
    840 Pro 256GB
    8GB 1866mhz CAS10 G.Skill

  6. #6
    Registered User
    Join Date
    Mar 2013
    Posts
    10
    If you run the tool without any commands you get an output of all the P-States including a listing of all Turbo States. So to answer your actual question, it uses hardware P-State numbering. If you look at the output you will pretty soon notice this is the case.

    Also since you write about throttling which I noticed as well, what do you do to disable it?

  7. #7
    Registered User
    Join Date
    May 2006
    Posts
    99
    Quote Originally Posted by MarcusBSN View Post
    If you run the tool without any commands you get an output of all the P-States including a listing of all Turbo States. So to answer your actual question, it uses hardware P-State numbering. If you look at the output you will pretty soon notice this is the case.

    Also since you write about throttling which I noticed as well, what do you do to disable it?
    There is no program that does it properly, so you need to do it directly with PCI config space writes. I use BAR-EDIT. The way the method works is you just limit the number of P-states the processor is allowed to use. PScheck can do this, but it neglects changing what P-state the CPU goes into C6 in, which is set by default to a state that is no longer available, thus breaking the top turbo bin. Unfortunately laptops have a lock bit set in BIOS that prevents constant PB0, but you can force no lower than PB1.

    To floor the CPU speed to 2nd turbo:

    B0D24F3xDC clear bits 9 and 10 (in english: on bus 0, device 24, function 3, offset 0xDC, make bits 9 and 10 equal to 0)

    To then fix top turbo:

    B0D24F3xA8 clear bits 30 and 31

    These changes net a consistent 9-12% raw performance gain in multithreaded programs. In games the difference is actually more noticeable since without this fix the CPU will randomly drop as low as 1.6ghz for me, which is just flat out dumb and causes major stutter.

    cinebench throttle fix vs no fix: http://i.imgur.com/Ov8Wkhk.jpg (this fix alone only gets to 2.27, not 2.29. I also lowered memory timings a little for the 2.29)

    cpu only hits low 70s in P95 with this fix and an undervolt. Really wish I could find the boost lock in the BIOS to force constant 3.2ghz, but this BIOS is an utter disaster with zero coding consistency, and I couldn't find it after searching for 4 hours.
    Last edited by Khenglish; 07-02-2013 at 09:27 PM.
    Clevo P150EM
    2920xm ES @4.35GHz
    680m @954/4620, 1V
    840 Pro 256GB
    8GB 1866mhz CAS10 G.Skill

  8. #8
    Registered User
    Join Date
    Apr 2013
    Posts
    4
    I own an A10-5700 and I experienced throttling with Turbo enabled. When I disabled Turbo in BIOS it disappeared.

    Turns out this BIOS option also disabled APM, which throttles the processor down to keep inside the TDP. You can actually disable APM with amdmsrtweaker, so you might want to give it a try if your notebook's cooling system is up for the job.

    If you don't want to use this tool you can set the 7th bit of D18F4x15C to zero to disable APM. This is also documented in the BKDG.

    Quote Originally Posted by BIOS and Kernel Developer?s Guide (BKDG) for AMD Family 15h Models 10h-1Fh Processors
    Application Power Management (APM) allows the processor to deterministically provide maximum performance while remaining within the specified power delivery and removal envelope.
    Last edited by johannes; 07-03-2013 at 10:47 PM. Reason: I incorrectly claimed Turbo can be active when APM is disabled.

  9. #9
    Registered User
    Join Date
    May 2006
    Posts
    99
    Quote Originally Posted by johannes View Post
    I own an A10-5700 and I experienced throttling with Turbo enabled. When I disabled Turbo in BIOS it disappeared.

    Turns out this BIOS option also disabled APM, which throttles the processor down to keep inside the TDP. You can actually disable APM with amdmsrtweaker, so you might want to give it a try if your notebook's cooling system is up for the job.

    If you don't want to use this tool you can set the 7th bit of D18F4x15C to zero to disable APM while keeping Turbo. This is also documented in the BKDG.
    All my attempts to disable APM also disabled turbo, including bit 7 D18F4x15C.
    Clevo P150EM
    2920xm ES @4.35GHz
    680m @954/4620, 1V
    840 Pro 256GB
    8GB 1866mhz CAS10 G.Skill

  10. #10
    Registered User
    Join Date
    Apr 2013
    Posts
    4
    You are right. I could keep the Turbo enabled in BIOS and then disable APM at run-time, but this would disable Turbo, too. Sorry for the confusion.

    If your processor is unlocked (D18F4x15C bit 31 is 0) you might try to change NodeTdpLimit (bits 11-0 in D18F4x10C, I do not know how the TDP is represented). I can try to give you the value for a 65W APU later today. Edit: The value is 0x45 -> 69 decimal.
    Last edited by johannes; 07-04-2013 at 10:08 AM. Reason: 1 means locked, added TdpLimit value.

  11. #11
    Registered User
    Join Date
    May 2006
    Posts
    99
    Quote Originally Posted by johannes View Post
    You are right. I could keep the Turbo enabled in BIOS and then disable APM at run-time, but this would disable Turbo, too. Sorry for the confusion.

    If your processor is unlocked (D18F4x15C bit 31 is 0) you might try to change NodeTdpLimit (bits 11-0 in D18F4x10C, I do not know how the TDP is represented). I can try to give you the value for a 65W APU later today. Edit: The value is 0x45 -> 69 decimal.
    The BIOS does lock the CPU. The problem with engaging the top boost bin is not TDP, but the silly restriction that 2 cores must be in C6. With the boost lock disengaged though this restriction can at least be reduced to 1 core, and possibly removed if raising the 2nd boost bin up to the 1st boost bin clocks works.
    Clevo P150EM
    2920xm ES @4.35GHz
    680m @954/4620, 1V
    840 Pro 256GB
    8GB 1866mhz CAS10 G.Skill

  12. #12
    Xtreme Legend The Stilt's Avatar
    Join Date
    Nov 2003
    Location
    Helsinki, Finland
    Posts
    1,671
    The bios has no control over "BoostLock", as it is a fused value loaded from the "OTP" registers during CPU init.
    It cannot be disabled without the HDT (and proper information).

    There is a way to disable the actual TDP limitation without turning off Apm and loosing the CPB feature.
    Basically the Pb1 PState will become the new base frequency and the highest boosted PState (Pb0) will be available for single threaded workloads. When the TDP limitation has been disabled the boost activation will rely on PState Deltas and temperatures only.

    Need to check it on Trinity, however on Richland it works just fine.
    Shouldn't be any different.

    And no, you won't find it from any of the datasheets, AGESA source or from anywhere else.
    The ghost protocol

  13. #13
    Registered User
    Join Date
    May 2006
    Posts
    99
    Quote Originally Posted by The Stilt View Post
    The bios has no control over "BoostLock", as it is a fused value loaded from the "OTP" registers during CPU init.
    It cannot be disabled without the HDT (and proper information).

    There is a way to disable the actual TDP limitation without turning off Apm and loosing the CPB feature.
    Basically the Pb1 PState will become the new base frequency and the highest boosted PState (Pb0) will be available for single threaded workloads. When the TDP limitation has been disabled the boost activation will rely on PState Deltas and temperatures only.

    Need to check it on Trinity, however on Richland it works just fine.
    Shouldn't be any different.

    And no, you won't find it from any of the datasheets, AGESA source or from anywhere else.
    The ghost protocol
    Well that explains why I could never find the bit in the BIOS. I was thinking that it was similar to the MSR 0x610 bit 63 lock to prevent TDP changes on sandy bridge systems, which is completely made up by the BIOS.

    So there's no way to force pb0 for all cores at all times though? It sounds like the results of what you describe will be similar to what I currently do, but your method is more proper.

    I wish I had your special documentation
    Clevo P150EM
    2920xm ES @4.35GHz
    680m @954/4620, 1V
    840 Pro 256GB
    8GB 1866mhz CAS10 G.Skill

  14. #14
    Registered User
    Join Date
    Mar 2013
    Posts
    10
    Khenglish I can see what you are doing. When playing around with throttling I sometimes limited Windows to less than 100% maximum CPU frequency which has a similar effect (it never lets the CPU enter a higher P-State if you set the percentage correctly). However you also lose Turbo this way. I am actually in the process of trying to quantize the impact of throttling. Currently I only have desktop versions of Trinity and Richland so it mostly depends on cooling. Usually I only observed throttling when running Prime95 or when overclocking.

    I also wish The Stilt would be a bit more forthcoming with the details he knows

  15. #15
    Registered User
    Join Date
    May 2006
    Posts
    99
    Well I just tried out the tool on my apu laptop. Works great and saves a bunch of time lowering voltages.
    Clevo P150EM
    2920xm ES @4.35GHz
    680m @954/4620, 1V
    840 Pro 256GB
    8GB 1866mhz CAS10 G.Skill

  16. #16
    Xtreme Enthusiast Evantaur's Avatar
    Join Date
    Jul 2011
    Location
    Finland
    Posts
    985
    Yeah, thank you for this

    Made a bat file to apply my tweaks every time i boot

    I like large posteriors and I cannot prevaricate

  17. #17
    Registered User
    Join Date
    May 2006
    Posts
    99
    Quote Originally Posted by Evantaur View Post
    Yeah, thank you for this

    Made a bat file to apply my tweaks every time i boot
    Same here. Much nicer to run a bat than manually enter MSR values each time. (crystalcpuid method)

    My bat:

    c:\tools\msrtweaker\x64\amdmsrtweaker P0=32@1.2 P1=27@1.0425
    Clevo P150EM
    2920xm ES @4.35GHz
    680m @954/4620, 1V
    840 Pro 256GB
    8GB 1866mhz CAS10 G.Skill

  18. #18
    Xtreme Mentor Olivon's Avatar
    Join Date
    Jun 2008
    Location
    France - Bx
    Posts
    2,594
    Thanks Marcus

  19. #19
    Registered User
    Join Date
    Jul 2013
    Posts
    1
    A thousand thanks, OP!

    I've been using the previous version of this tool to disable APM on boot on Windows 8, because my motherboard doesn't give me an option to disable it on my FX-8120.

    I also use it to undervolt at my 4ghz OC, as the motherboard doesn't seem to obey whatever voltage I set it to.

    Just thought I'd let you know that this tool has been a great help!
    Last edited by grantius; 07-28-2013 at 01:43 AM.

  20. #20
    Registered User
    Join Date
    Aug 2013
    Posts
    2
    Hi there. First of: fantastic tool ! Was looking for a good K10stat alternative for my FX-8350.

    Unfortunately, it only works 50% for me. It doesn't apply the voltage settings but keeps the ones set in BIOS. Asus TurboV EVO (that came with the MB) does change voltages so I'm sure it can be done somehow ? If that would work too that would be soo awesome !

  21. #21
    Registered User
    Join Date
    Aug 2013
    Posts
    2
    Quote Originally Posted by AzzKickr View Post
    Hi there. First of: fantastic tool ! Was looking for a good K10stat alternative for my FX-8350.

    Unfortunately, it only works 50% for me. It doesn't apply the voltage settings but keeps the ones set in BIOS. Asus TurboV EVO (that came with the MB) does change voltages so I'm sure it can be done somehow ? If that would work too that would be soo awesome !
    Never mind, got it

Tags for this Thread

Posting Permissions

  • You may not post new threads
  • You may not post replies
  • You may not post attachments
  • You may not edit your posts
  •