RightMark CPU Clock Utility, version 1.8. README

Copyright (C) 2004-2005 RightMark Gathering, iXBT.com


Contents



Genral Information

RightMark CPU Clock Utility (RMClock) is a small GUI application designed for real-time CPU frequency, throttling and load level monitoring and on-the-fly adjustment of the CPU performance level on supported CPU models via processor's power management model-specific registers (MSRs). In automatic management mode it continuously monitors the CPU usage level and dynamically adjusts the CPU frequency, throttle and/or voltage level as needed.



Disclaimer

PLEASE READ THIS CAREFULLY!

YOUR SYSTEM MAY LOCK UP AS A RESULT OF A CPU FREQUENCY, VOLTAGE OR DUTY CYCLE CHANGE, OVERCLOCKING/OVER-VOLTAGE OF A CPU, AS WELL AS TWEAKING WITH CPU-SPECIFIC REGISTERS! THE DEVELOPERS TEAM, THE RIGHTMARK GATHERING AND/OR IXBT.COM ARE NOT RESPONSIBLE FOR ANY DAMAGE THAT MAY RESULT FROM THE USE OF THIS UTILITY.

YOU HAVE BEEN WARNED!



Features



Supported Environment

Processors

Current release of RMClock utility implements the CPU frequency, CPU load and throttling level determination on the following processor models:

Dynamic P-state transitions are supported on:

Dynamic on-demand clock modulation adjustment is supported on:

RMClock utility will run on unsupported CPU models, however, in this case, most of its functionality will be unavailable.



Motherboards



Operating systems



User Interface

General tab

CPU Info & Status

Main Program Settings



Management tab

Use P-State Transitions (PST)

Enables/disables the management of the CPU performance states transitions. If the CPU does not support P-state transitions feature, this field is grayed out.

The Auto-adjust intermediate P-State VIDs option found in the Add/Modify P-State dialog makes it unnecessary to manually enter VID values for intermediate P-States. When you change VIDs of the minimal or maximal states (either by adding, modifying or deleting) with this option enabled, it automatically adjusts VIDs for all defined intermediate P-States in a linear dependence manner.

Use On-Demand Clock Modulation (ODCM)

Enables/disables the management of the CPU on-demand clock modulation. If the CPU does not support ODCM feature, this field is grayed out.
NOTE: enabling both PST and ODCM management is possible, provided the CPU supports both features, but is not recommended.

Performance/Power Profiles & Management Mode

Miscellaneous Options

Provides additional configuration options to solve specific hardware/software problems described below. You must restart RMClock application for these settings to have an effect.



Advanced tab (AMD K7 processors)

Low Power CPU Modes Settings

P-State Transitions Settings

The utility must be restarted for these settings to have an effect.

Remember these settings - makes the utility apply the low power modes settings every time the utility starts (or when the system is restored from Standby/Hibernate states).



Advanced tab (AMD K8 processors)

Power Management Settings (Per ACPI State)

Clock Power/Timings

P-State Transitions Settings

You must restart the utility for these settings to have an effect.

Remember these settings - makes the utility apply the user-defined ACPI power management and clock power/timing settings every time the utility starts (or when the system is restored from Standby/Hibernate states).



Advanced tab (Intel Centrino platform)

Automatic Thermal Protection

Sets the preferred way of automatic thermal protection (Thermal Monitor 1 or Thermal Monitor 2, if available).
NOTE: the CPU is operating out of spec when both TM1 and TM2 are disabled.

Thermal Monitor 2 Target

Defines the FID and VID values the CPU will transition to on activation of the Thermal Monitor 2 feature, provided the CPU supports TM2 and TM2 target programming.

Enhanced Intel SpeedStep (EIST) Settings

Intel Centrino Mobile Platform Settings

Remember these settings - makes the utility apply the user-defined Automatic Thermal Protection, Enhanced SpeedStep and Centrino chipset settings every time the utility starts (or when the system is restored from Standby/Hibernate states).



Advanced tab (Intel Pentium 4 and Xeon processors)

Automatic Thermal Protection

Sets the preferred way of automatic thermal protection (Thermal Monitor 1 or Thermal Monitor 2, if available).
NOTE: the CPU is operating out of spec when both TM1 and TM2 are disabled.

Thermal Monitor 2 Target

Defines the FID and VID values the CPU will transition to on activation of the Thermal Monitor 2 feature, provided the CPU supports TM2 and TM2 target programming.

Enhanced Intel SpeedStep (DBS) Settings

Misc Settings

Remember these settings - makes the utility apply the user-defined Automatic Thermal Protection, Enhanced SpeedStep and misc settings every time the utility starts (or when the system is restored from Standby/Hibernate states).



Advanced tab (Transmeta processors)

Power Source Select

Displays current power source (upon Refresh button), and allows to select the power source you want to view/modify the settings for.

LongRun Status and Control

LongRun Advanced Thermal Management

ATM Level - selects the processor power reduction target. LongRun will attempt to meet or exceed the power reduction level specified in this field by lowering the processor frequency and voltage. This setting has priority to reduce the processor frequency below that which is selected in the LongRun Bounds. This setting will never have the effect of increasing the processor freqeuency and voltage.

LongRun Table Interface Data

Lists available processor's LongRun levels, with detailed info on each of them.

Remember these settings - makes the utility apply the user-defined LongRun and LongRun ATM settings every time the utility starts, when the system is restored from Standby/Hibernate states and when the power source changes.



Tray icon menu settings



Command-line parameters

Beginning with version 1.6, RMClock can be launched with command-line parameters. Some of these commands work only at the first program startup (diagnostic or debug commands), others require that the utility is already running (the control commands). Currently implemented commands include:



Miscellaneous options



Compatibility

CPU Power Management drivers/software

RMClock is compatible with AMD Cool`n'Quiet(tm) / PowerNow!(tm), Enhanced Intel(R) SpeedStep(tm) and Transmeta LongRun(tm) software, provided it is not currently active. There's no need to uninstall existing processor driver, however, power-saving features of the driver must be disabled before using RMClock in automatic management mode. That is, current power scheme (in Windows control panel) must be set to "Home/Office Desk" or "Always On". Undesireable effects are possible, including system lock-up, if you don't follow these precautions.



Performance analyzing software

Since RMClock relies upon CPU-specific performance monitoring counters (PMC) to determine the CPU usage level, compatibility issues are possible with application performance analyzing applications like Intel VTune or AMD CodeAnalyst, which use the same counters to monitor processor-specific performance events. Therefore, you should quit RMClock utility before using this kind of software.



Benchmarking software

As with any power management software, the automatic management feature of RMClock should be disabled before running any benchmarking software, otherwise you may get incorrect benchmark results.



Frequently Asked Questions

Q: Why can't I run RMClock as a regular user?

A: RMClock is a low-level system utility that requires privileged access to the CPU hardware, which can be done only via a kernel-mode driver (RTCore32/64.sys, which is dynamically extracted and installed at runtime). Administrative rights are required to install and load this driver, therefore, current versions of the utility can be run only by the users with administrative privileges.

Q: CPU voltage indicated by RMClock greatly differs from the voltage reported by my vendor-supplied monitoring software. What's wrong?

A: Nothing. RMClock reports the CPU VID, i.e., just the requested CPU voltage level. It is up to the motherboard logic to decide whether this request should be handled or ignored. Most motherboards designed to properly support processor's power-saving features (e.g., AMD Cool`n'Quiet(tm) technology) should adjust the real CPU voltage so that it's close to the requested VID level. Other models may apply some extra over-voltage (e.g., +0.1 or +0.2V), which is useful for overclocking. Finally, there are many motherboard models that can be set up (via BIOS settings) to supply constant voltage to the CPU, which is far from being good for achieving significant power saving.

Q: Why can't I set CPU voltage above 1.55V (or even 1.45V), or below 1.1V on my Athlon 64? BIOS setup offers the voltages from 0.8V up to 1.7V. Is there a way to unlock these "hidden" voltages?

A: RMClock manipulates with VID and not directly with the CPU voltage. Maximal VID value you can set is dictated by the CPU itself (as indicated in the "Maximal VID" field of the General tab), as well as the Minimal VID. 1.55V is the absolute maximum VID for all Athlon 64 processors family; usually, maximal VID is even lower (e.g., 1.45V). There's no way to set current VID value higher than the maximal, as the CPU will choose maximal value instead (the same is true for FID, the bus clock multiplier). It is also impossible to program a VID being lower than the Minimal VID reported by the CPU. The voltage level you adjust in the BIOS is set in entirely different way, via direct manipulation with the CPU VRM and not involving VID changes. Please also note that the voltages you set manually in the BIOS setup cause the motherboard logic to ignore VID change requests, thus greatly diminishing power saving features of the AMD Cool`n'Quiet(tm) technology.

Q: In the Advanced tab I can adjust the Halt and Stop Grant bus disconnect divisors for my Athlon XP, but they don't seem to have any effect. What's wrong?

A: Nothing. These settings only affect the CPU internal clock divisors. They do not enable bus disconnect for a Halt and/or Stop Grant state, which must be done in a chipset-specific way. No support for this and numerous chipsets series is ever planned.

Q: In the Advanced tab I see various ACPI states for my Athlon 64. What state should I choose?

A: You don't have to choose anything particular. This is just a selector that allows changing the settings of a given ACPI state. It does not enable or even put the CPU into this particular state.

Q: In the Advanced tab of RMClock I see really a lot of settings for my Athlon 64. What are these all settings for? What settings should I choose?

A: These are advanced settings that should not be changed without a good knowledge. In fact, they should be left alone if you don't experience any problems with you system. However, it is safe to load one of the predefined sets of defaults by using the corresponding buttons. If you're interested in these settings in detail, please look through Chapter 9 of the public AMD document "BIOS and Kernel Developer's Guide for AMD Athlon(TM) 64 and AMD Opteron(TM) Processors", order #26094.

Q: My Athlon 64 system locks up when I enable automatic PST management in RMClock, what to do?

A: Before you start, please be sure to disable the power management features of the AMD processor driver by setting your current power scheme (in Windows control panel) to "Home/Office Desk" or "Always On".

First, make sure you have selected relatively safe minimal and maximal FID/VID settings in the Management tab (the ones selected by clicking Defaults button should be completely safe to begin with, provided your CPU is not overclocked).

Second, ensure that your CPU is properly setup to support FID/VID change requests. This should be done by a BIOS during POST, however, if your motherboard is not certified by AMD for Cool`n'Quiet(tm) technology support, it might be necessary to do this manually. Most efficiently, this can be done in the Advanced tab by loading the Power Management Settings defaults for a Desktop or Mobile processor (depending on the model you have). To automatically use these settings every time you launch RMClock, please check "Remember these settings" option.

Third, even if your motherboard is properly set up for AMD Cool`n'Quiet(tm) operation, you may experience problems with PST management if you have two or more memory modules installed, even with official AMD processor driver's management. In most cases, it is possible to solve this problem by applying the defaults for Registered DIMMs in the Clock Power/Timing Settings of the Advanced tab. Once again, to automatically use these settings whenever you launch RMClock, please enable "Remember these settings" option.

If none of the above help, try updating your motherboard BIOS to the latest version. If this still doesn't help, we're sorry to inform you that you have a motherboard which is incompatible with AMD Cool`n'Quiet(tm) technology. RMClock does support a greater number of motherboards than the official AMD driver does, but it's not possible to support all of them in software, the compatibility must also exist on a hardware/motherboard design level.

Q: I have an overclocked system that locks up when I exit the utility (or disable PST management), what to do?

A: The problem is related to the "Restore CPU Defaults on Exit" setting, which is enabled by default. This setting causes the hard-coded CPU defaults (FID and VID) to be applied when you exit the utility or completely disable PST management. If your FSB clock is too high, the resulting CPU frequency is very likely to go beyond the safety margin. You can either totally disable this feature or alter its functionality so that it applies the FID/VID settings it found at the program startup instead of the CPU defaults (see RMClock_Tweaks.reg file).

Q: My processor is detected as an "Unknown CPU". What's wrong? Will RMClock work properly with my CPU?

A: It means that you have a new CPU core/revision, which RMClock isn't yet aware of. The CPU detection is implemented according to the official docs from the vendors, which are not updated as frequently as the new processors get launched. There's nothing to worry about, RMClock will work properly with your processor, provided that it supports the necessary power-saving features (as indicated in the "PM Features" box in the General tab).

Q: The core frequency/throttle of my Athlon 64 CPU reported by RMClock stays the same, despite the FID changes. What's wrong?

A: This is the OS implementation bug. It is usually observed on a multiprocessor systems (including AMD multi-core processors), when ACPI Multiprocessor PC kernel is used, as well as on a current Windows XP x64 Edition release, regardless of the kernel type. The problem is related to the High-Performance Counter (HPC) featured by the OS. Normally, the ACPI timer is used as a clock source for this counter, when the processor's Time Stamp Counter (TSC) frequency is known to get changed over time (as it does on a Cool`n'Quiet(tm)-enabled system). However, some OS implementations/kernels, like those mentioned above, erroneously choose TSC as a source of HPC clock, thus violating the main requirement for this counter (the frequency of HPC is guaranteed not to change over time). Since HPC frequency is no longer constant and changes in line with TSC frequency, we are getting incorrect TSC/HPC ratio and, therefore, incorrect CPU frequency indication.

Fortunately, a solution exists for this bug, and it requires editing the boot.ini file found at the root directory of your system disk drive (e.g., C:\boot.ini). To force the OS use the ACPI timer as HPC clock source, you need to add /USEPMTIMER option to your current system settings, e.g.,

"multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect"

should become:

"multi(0)disk(0)rdisk(0)partition(1)\WINDOWS="Microsoft Windows XP Professional" /noexecute=optin /fastdetect /usepmtimer"

Q: I want to see feature "X" in future versions of RMClock. Would you add it for me?

A: Feature requests are welcome, however, in order for a feature to be possibly incorporated in future versions of RMClock, it must meet the following criteria:



Revision History

RMClock Version 1.8

RMClock Version 1.7

RMClock Version 1.6

RMClock Version 1.5

RMClock Version 1.4

RMClock Version 1.3

RMClock Version 1.2

AMD64CLK Version 1.1

AMD64CLK Version 1.0



Feedback

Please post your comments and questions regarding RightMark CPU Clock Utility that are not already answered in the FAQ section of this manual at the dedicated CPU RightMark forum. In urgent cases, please contact Dmitri Besedin, main program developer.