Microsoft KB Archive/327809

From BetaArchive Wiki
Knowledge Base


Cannot Run Certain Programs on Hyper-Threaded or Dual-Processor Computers with a CPU Speed of Greater Than 2 GHz

Article ID: 327809

Article Last Modified on 8/24/2007



APPLIES TO

  • Microsoft Windows XP Home Edition
  • Microsoft Windows XP Professional



This article was previously published under Q327809

SYMPTOMS

Certain programs (for example, games) may not run correctly on hyper-threaded computers, dual-processor computers, or single proc computers in which the CPU speed is greater than 2 gigahertz (GHz).

CAUSE

This problem may occur if the program that you are running uses the QueryPerformanceCounter and QueryPerformanceFrequency functions to generate timecode but uses only the lower 32 bits of the result and assumes that this is a signed number. On hyper-threaded computers, dual-processor computers, or single proc computers in which the CPU speed is greater than 2 GHz, the output may be incorrectly interpreted by certain programs, and as a result, the program may not run correctly or may stop responding.

RESOLUTION

To resolve this issue, contact the manufacturer of the program that does not run correctly to determine whether there is an update available to address this issue.

STATUS

Microsoft has confirmed that this is a problem in programs that make erroneous assumptions about the QueryPerformanceCounter and QueryPerformanceFrequency output.

MORE INFORMATION

On certain computers, the result returned by QueryPerformanceFrequency will be the clock speed of the CPU. On a computer with a processor running faster than 2.1 GHz, this frequency value requires at least 32 bits of precision. Some programs work with the result of QueryPerformanceFrequency as a signed integer value, which has only 31 bits of precision and a sign flag. These programs behave incorrectly on these faster CPUs. To avoid this problem, programs must use all 64 bits returned from both QueryPerformanceFrequency and QueryPerformanceCounter.

For more information about hyper-threading technology, visit the following Intel Web site:

For information about how to contact the manufacturers of third-party products that cause the problem described in the "Symptoms" section of this article, click the appropriate article number in the following list to view the article in the Microsoft Knowledge Base:

65416 Hardware and Software Third-Party Vendor Contact List, A-K

60781 Hardware and Software Third-Party Vendor Contact List, L-P

60782 Hardware and Software Third-Party Vendor Contact List, Q-Z


Microsoft provides third-party contact information to help you find technical support. This contact information may change without notice. Microsoft does not guarantee the accuracy of this third-party contact information.

The third-party products that are discussed in this article are manufactured by companies that are independent of Microsoft. Microsoft makes no warranty, implied or otherwise, regarding the performance or reliability of these products.



Additional query words: crash hyperthreading hyperthread hyperthreaded

Keywords: kbnofix kbprb KB327809