文書番号: 896256 - 最終更新日: 2007年8月24日 - リビジョン: 5.3

プロセッサ電源管理機能がサポートされているプロセッサを複数搭載したコンピュータで Windows XP Service Pack 2 を実行するとパフォーマンスが低下することがある

重要 : この資料には、レジストリの編集方法が記載されています。万一に備えて、編集の前には必ずレジストリをバックアップし、レジストリの復元方法を理解しておいてください。バックアップ、復元、および編集方法の詳細を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
256986? (http://support.microsoft.com/kb/256986/ ) Microsoft Windows レジストリの説明

目次

すべて展開する | すべて折りたたむ

現象

ACPI (Advanced Configuration and Power Interface) プロセッサ パフォーマンス状態などのプロセッサ電源管理機能をサポートしているプロセッサを複数搭載したコンピュータには、Microsoft Windows XP Service Pack 2 (SP2) が必要です。Windows XP SP2 を実行しているコンピュータのパフォーマンスや動作を最適化するための追加の更新プログラムが用意されています。この更新プログラムを適用していない場合、このような電源管理機能を持つモバイルおよびデュアルコア プロセッサを搭載しているコンピュータで、パフォーマンスの低下や予期しない動作が発生することがあります。

: この問題は、x64 ベースの Microsoft Windows Server 2003 にも該当します。ただし、この資料の内容およびこの資料に関連付けられた非公式な修正プログラムは、AMD デュアルコア コンピュータ上で動作するゲームや他のアプリケーションで発生する、タイミングの問題を解決するためのものではありません。 デュアルコア コンピュータのパフォーマンスに関する問題の関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
909944? (http://support.microsoft.com/kb/909944/ ) デュアルコア プロセッサを使用している Windows XP ベースのコンピュータで、ゲームのパフォーマンスが低い

解決方法

更新プログラムの情報

下記のファイルは、「Microsoft ダウンロード センター」からダウンロードできます。

元に戻す画像を拡大する
ダウンロード
WindowsXP-KB896256-v4-x86-JPN.exe パッケージ (http://www.microsoft.com/downloads/details.aspx?displaylang=ja&FamilyID=C2AB5A48-8240-4934-BBD8-34FB8A0FCE3B)

リリース日 : 2006 年 12 月 19 日

マイクロソフトのサポート ファイルのダウンロード方法を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
119591? (http://support.microsoft.com/kb/119591/ ) オンライン サービスからマイクロソフトのサポート ファイルを入手する方法
マイクロソフトでは、アップロード時点の最新のウイルス検査プログラムを使用して、配布ファイルのウイルス チェックを行っています。配布ファイルはセキュリティで保護されたサーバー上に置かれており、権限のない第三者が無断でファイルを変更できないようになっています。

必要条件

必要条件はありません。

再起動の必要性

この更新プログラムの適用後に、コンピュータを再起動する必要があります。

更新プログラムの置き換えに関する情報

この更新プログラムを適用しても、他の更新プログラムが置き換えられることはありません。

ファイル情報

元に戻す全体を表示する
ファイル名バージョン日付時刻サイズプラットフォームSP の必要性
halmacpi.dll5.1.2600.30232006/10/3020:27134,400x86SP2
ntkrnlmp.exe5.1.2600.30232006/10/3023:012,137,600x86SP2
ntkrnlpa.exe5.1.2600.30232006/10/3006:012,059,264x86SP2
ntkrpamp.exe5.1.2600.30232006/10/3023:012,017,280x86SP2
ntoskrnl.exe5.1.2600.30232006/10/3023:012,182,016x86SP2

状況

マイクロソフトでは、この問題をこの資料の対象製品として記載されているマイクロソフト製品の問題として認識しています。

詳細

ACPI プロセッサ パフォーマンス状態をサポートしている CPU を複数搭載したコンピュータには、Windows XP SP2 が必要です。この要件の対象には、以下の項目をサポートしているコンピュータが含まれます。
  • 複数の物理ソケット
  • マルチコア設計
  • Intel のハイパースレッディング テクノロジなどの複数の論理スレッド
Windows XP は、当初、マルチプロセッサ構成でパフォーマンス状態をサポートするようには設計されていませんでした。このため、マルチプロセッサ システムでこのサポートを適切に実現するには変更が必要でした。Windows XP SP2 では、カーネル パワー マネージャに必要な変更が加えられています。これらの変更により、プロセッサ パフォーマンス状態をサポートするマルチプロセッサ システムで Windows XP が正常に動作します。

また、この修正プログラムにより、プロセッサ パフォーマンス状態をサポートするプロセッサを複数搭載したコンピュータで発生する以下の問題も修正されます。
  • プロセッサ パフォーマンス状態で DBS (Demand-Based Switching) が使用されている場合に、シングル スレッドのワークロードでパフォーマンスが低下することがある問題
  • マルチプロセッサ システムで ACPI 電源管理のタイマを使用する場合の、全プロセッサのプロセッサ TSC (Time Stamp Counter) レジスタの同期の問題
  • カーネル パワー マネージャにおける、ACPI の C 状態の遷移に関する問題

更新プログラムの詳細

DBS の使用時に、パフォーマンスが低下することがある

DBS (Demand-Based Switching) は、 システムのワークロードに応じて ACPI プロセッサ パフォーマンス状態を制御する方式です (電圧と周波数を動的に変化させます)。Windows XP のプロセッサ電源管理では、adaptive のプロセッサ調整ポリシーを使用して、DBS を実装しています。このポリシーを使用することにより、ユーザーの操作を必要とせずに、システムの CPU 使用状況に応じて動的かつ自動的にプロセッサのパフォーマンス状態が調整されます。

デュアルコア構成を含むマルチプロセッサ システムでシングルスレッドのワークロードを実行すると、利用可能な複数の CPU コア間でワークロードが実行されることがあります。この動作は、利用可能な複数の CPU リソースに対して処理をスケジュールするために Windows で採用されている方式によるものです。しかし、adaptive のプロセッサ調整ポリシーを使用して実行されるプロセッサ パフォーマンス状態を持つシステムでは、Windows のカーネル パワー マネージャでプロセッサの最適なパフォーマンス状態が誤って計算されることがあります。この現象は、それぞれの (論理的または物理的な) プロセッサ コアの使用率が、プロセッサ パッケージ全体の実際の使用率よりも低く見えることがあるために発生します。シングルスレッドのワークロードを使用するパフォーマンス ベンチマークを実施すると、パフォーマンスの低下や、同じベンチマーク テストを繰り返し実行した場合の実行結果の大幅な変動から、この動作の影響を確認することができます。

この修正プログラムには、カーネル パワー マネージャに対する変更が含まれており、プロセッサ パッケージ全体の CPU 使用率が追跡されます。この変更により、複数の CPU コア (CPU complex) の実際の動作レベルが明らかになるため、対象のパフォーマンス状態を正しく算出することができます。

: この解決策では、消費電力の節約よりもパフォーマンスの向上を優先しています。ベンチマーク テストでパフォーマンスの数値が向上する可能性がありますが、バッテリの寿命が短くなる可能性もあります。このため、柔軟性を高めるために、レジストリ キーを使用して、カーネル パワー マネージャに対するこの変更を無効にできるようになっています。

新しいパフォーマンス状態ポリシーの動作を無効にする方法

警告 : レジストリ エディタまたは別の方法を使用してレジストリを誤って変更すると、深刻な問題が発生することがあります。最悪の場合、オペレーティング システムの再インストールが必要になることがあります。マイクロソフトは、レジストリの変更により発生した問題に関しては、一切責任を負わないものとします。レジストリの変更は、自己の責任において行ってください。

この資料に記載されている修正プログラムをインストールした後で、レジストリ設定を使用して新しいパフォーマンス状態ポリシーの動作を無効にすることができます。これを行うには、以下の手順を実行します。
  1. [スタート] ボタンをクリックし、[ファイル名を指定して実行] をクリックし、regedit と入力して [OK] をクリックします。
  2. HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\Session Manager を右クリックし、[新規] をポイントし、[キー] をクリックします。
  3. 新しいキーの名前として、Throttle と入力します。
  4. [Throttle] を右クリックし、[新規] をポイントし、[DWORD 値] をクリックします。
  5. 値の名前として、PerfEnablePackageIdle と入力します。
  6. [PerfEnablePackageIdle] を右クリックし、[修正] をクリックします。
  7. [値のデータ] ボックスに 0 と入力します。[DWORD 値の編集] ダイアログ ボックスで [16 進] がオンになっていることを確認し、[OK] をクリックします。

    : [値のデータ] ボックスに 1 を入力すると、新しいパフォーマンス状態ポリシーの動作が有効になります。
  8. レジストリ エディタを終了します。

TSC の適切な同期

オペレーティング システムの中には、プロセッサ TSC の数値が加算される速度が変動するものがあります。また、特定のプロセッサ電源管理機能が使用されると、TSC の加算が停止する場合があります。通常、複数のプロセッサを搭載したコンピュータでは、TSC はオペレーティング システムのハードウェア タイマであり、カーネルの KeQueryPerformanceCounter 関数の呼び出しがサポートされています。TSC の増加が単調でない場合、カーネルの KeQueryPerformanceCounter 関数を使用するシステム コンポーネントが正常に動作しない可能性があります。この問題を解決するために、マイクロソフトは、ACPI 電源管理タイマを、カーネルの KeQueryPerformanceCounter 関数をサポートするオペレーティング システム タイマとして使用できるようにしています。ただし、プログラムの中には、Windows のタイマ API を使用せずに TSC に直接にアクセスするものがあります。マルチプロセッサ HAL (Hardware Abstraction Layer) により、マルチプロセッサ コンピュータのすべてのプロセッサの TSC レジスタが、高い精度で同期された状態が維持されます。このため、システム ソフトウェアが別のプロセッサに対してアクセスしても、異なる結果が返されることはありません。この変更により、ACPI 電源管理タイマがオペレーティング システムのハードウェア タイマとして使用されても、依然として、マルチプロセッサ HAL によって、コンピュータ上のすべてのプロセッサで TSC が正常に同期されます。

C 状態の適切な遷移

この変更により、カーネル パワー マネージャの問題が修正され、マルチプロセッサ システムでプロセッサ ACPI の C 状態が適切に遷移するようになります。

詳細

関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
835730? (http://support.microsoft.com/kb/835730/ ) Windows XP または Windows 2000 でサウンドの再生速度が遅い場合やサウンドが連続して再生されない場合がある
マイクロソフトのソフトウェア更新プログラムの説明に使用される標準的な用語の関連情報を参照するには、以下の「サポート技術情報」 (Microsoft Knowledge Base) をクリックしてください。
824684? (http://support.microsoft.com/kb/824684/ ) マイクロソフトのソフトウェアの更新で使用される一般的な用語の説明
この資料に記載されているサードパーティ製品は、マイクロソフトと関連のない他社の製品です。明示または黙示にかかわらず、これらの製品のパフォーマンスや信頼性についてマイクロソフトはいかなる責任も負わないものとします。

この資料は以下の製品について記述したものです。
  • Microsoft Windows Server 2003, Standard x64 Edition
  • Microsoft Windows Server 2003, Enterprise x64 Edition
  • Microsoft Windows XP Service Pack 2?を以下の環境でお使いの場合
    • Microsoft Windows XP Home Edition
    • Microsoft Windows XP Professional
  • Microsoft Windows XP Tablet PC Edition 2005
キーワード:?
kbbug kbfix kbqfe kbpubtypekc atdownload kbhotfixserver KB896256
"Microsoft Knowledge Baseに含まれている情報は、いかなる保証もない現状ベースで提供されるものです。Microsoft Corporation及びその関連会社は、市場性および特定の目的への適合性を含めて、明示的にも黙示的にも、一切の保証をいたしません。さらに、Microsoft Corporation及びその関連会社は、本文書に含まれている情報の使用及び使用結果につき、正確性、真実性等、いかなる表明・保証も行ないません。Microsoft Corporation、その関連会社及びこれらの権限ある代理人による口頭または書面による一切の情報提供またはアドバイスは、保証を意味するものではなく、かつ上記免責条項の範囲を狭めるものではありません。Microsoft Corporation、その関連会社 及びこれらの者の供給者は、直接的、間接的、偶発的、結果的損害、逸失利益、懲罰的損害、または特別損害を含む全ての損害に対して、状況のいかんを問わず一切責任を負いません。(Microsoft Corporation、その関連会社 またはこれらの者の供給者がかかる損害の発生可能性を了知している場合を含みます。) 結果的損害または偶発的損害に対する責任の免除または制限を認めていない地域においては、上記制限が適用されない場合があります。なお、本文書においては、文書の体裁上の都合により製品名の表記において商標登録表示、その他の商標表示を省略している場合がありますので、予めご了解ください。"
 

サポート技術情報の翻訳

 

Related Support Centers