検索
サポート & ダウンロード
すべてのサポート
このカテゴリ
この製品

サポート & ダウンロード  > プロセッサー  > インテル® Pentium® 4 プロセッサー  >  ハイパースレッディング・テクノロジー Pentium® 4 プロセッサー搭載システム構築のための技術ノート
Processors
インテル® Pentium® 4 プロセッサー
ハイパースレッディング・テクノロジー Pentium® 4 プロセッサー搭載システム構築のための技術ノート

2003 年 5 月更新

以下の情報は、ハイパースレッディング・テクノロジー Pentium® 4 プロセッサー †† および対応マザーボード、シャーシ (筐体)、周辺機器を使用して PC を組み立てる専門知識のあるシステム・インテグレーターを対象としています。この情報は、ハイパースレッディング・テクノロジー Pentium® 4 プロセッサー搭載システム構築のための技術資料を含んでいます。

注意: Pentium® 4 プロセッサーを搭載したシステムを組み立てる前に、マザーボード、ボックス版プロセッサーのマニュアル、ボックス版 Pentium® 4 プロセッサー (478 ピン・パッケージ) 搭載システムの概要 を参考にしてください。
以下はこれらの資料の追加情報です。

 

内容:

 

インテルはデスクトップ・コンピューティング・プラットフォームに対して、ハイパースレッディング・テクノロジーを提案します。
この新技術は、インテル® NetBurst™ マイクロアーキテクチャーと共に使用することで、特に高い処理能力を要求するアプリケーションやシステム環境に優れたパフォーマンスが出るよう設計されています。
Pentium® 4 プロセッサーのブランド名は、インテルの高品質で革新的な新技術およびパフォーマンスの証です。

ハイパースレッディング・テクノロジーは、物理的に 1 つしかないプロセッサーに 2 つの分割された処理コードの流れ (以下スレッドと呼びます) を同時に実行することを可能にします。
これによりプロセッサーの使用効率と処理能力が大幅に向上し、ソフトウェア処理におけるパフォーマンスが改善されます。
論理構造的には、ハイパースレッディング・テクノロジー Pentium® 4 プロセッサーは、それぞれがアーキテクチャー・ステートを持つ 2 つの論理プロセッサーから構成されます(図1参照))。

論理プロセッサー内の各アーキテクチャー・ステートはデータレジスター、セグメントレジスター、コントロール・レジスター、デバッグレジスター、およびたくさんの MSR (Model Specific Register) から構成されます。
また、それぞれの論理プロセッサーは APIC (Advanced Programmable Interrupt Controller: 高性能プログラマプル割り込みコントローラー) を持っています。
これによって電源投入後、または初期化後にそれぞれの論理プロセッサーは、指定されたスレッドを実行するために同一プロセッサー・コア上にある他の論理プロセッサーから独立した形で、個々に停止、割り込み、命令の実行を行ないます。

ハイパースレッディング・テクノロジー Pentium® 4 プロセッサーと、従来のデュアル・プロセッシング・システムの比較

図 1 : ハイパースレッディング・テクノロジー Pentium® 4 プロセッサーと、従来のデュアル・プロセッシング・システムの比較

従来型の物理的に 2 つのプロセッサーを使用して行なうデュアル・プロセッシングの設定とは異なり、ハイパースレッディング・テクノロジー Pentium® 4 プロセッサーに含まれる論理プロセッサーは、プロセッサー・コア内部の命令実行に使用する実行ユニット、キャッシュ、システムバス、ファームウェアなどの各種リソースを共有します。

ハイパースレッディング・テクノロジーは、インテル® NetBurst™ マイクロアーキテクチャー内の有効な実行リソースを最大限に使用し、オペレーティング・システム内のスレッドを効率良く処理していくことで最大のパフォーマンスを発揮できるように設計されています (ハイパースレッディング・テクノロジー対応オペレーティング・システム参照)。

ハイパースレッディング・テクノロジーによる インテル® NetBurst™ マイクロアーキテクチャー内のリソースの共有

図 2 : ハイパースレッディング・テクノロジーによる インテル® NetBurst™ マイクロアーキテクチャー内のリソースの共有

Microsoft Windows XP や、Linux* のいくつかのバージョン等、最新のオペレーティング・システム (詳細は ハイパースレッディング・テクノロジー対応オペレーティング・システム 参照) は、処理負荷をそれぞれ個別にスケジュールされた複数のプロセスとスレッドに分割し、2 つ以上のプロセッサーでの並行処理を可能にする環境を提供しています。

このような負荷分散の方式は、多くのマルチスレッド対応アプリケーションでも採用されています。

Pentium 4 プロセッサー内では、2 ずつのスレッドが、2 つの論理プロセッサーに次々と同時に割り振られ、アウトオブオーダー命令によって全てのクロックサイクルにおいて常に可能な限り処理を継続させます。

両方のスレッドからの指示は、同時に、各クロック周期間で、実行ユニットを可能な限り作業中の状態にするため、アウトオブオーダー命令のスケジューラーを使用した単一の Pentium® 4 プロセッサーによって実行されます。

また、マルチタスクの環境でもハイパースレッディング・テクノロジーを使用することが有効です。
同時に動作している複数のアプリケーションはそれぞれ命令を実行するにあたって独立したスレッドを発行する点において、マルチスレッド対応アプリケーションと似ています。

ハイパースレッディング・テクノロジーは、複数のアプリケーションを同時実行するマルチタスク環境においても、優れた反応性と高いパフォーマンスを示し、PC ユーザーに高い処理効率を提供します。

ハイパースレッディング・テクノロジーによって、リソースの使用方法をどのように改善するのかを理解するために、例として図 3 に従来型のシングル・プロセッサー (A)、従来型のデュアルプロセッサー (B) とをハイパースレッディング・テクノロジー Pentium® 4 プロセッサー (C) を搭載したシステムにおける処理の比較を示します。

処理の比較

図3: (A) 従来型のシングル・プロセッサーのシステム: 物理プロセッサー 1 つ
(B) 従来型のシングル・プロセッサーのシステム: 物理プロセッサー 2 つ
(C) ハイパースレッディング・テクノロジー
Pentium® 4 プロセッサーのシステム:
物理プロセッサー 1 つ

いずれの場合も 1 つのプロセッサーに 1 つのスーパースケーラ (並列処理実行ユニット) を備えており、1 クロックサイクルで最大で 3 つの命令 (水平方向の 3 マス) を実行することができるものとしています。
図では 9 クロックサイクル (縦方向) において、いくつのスレッド (オレンジのマスと青のマス) が処理できるかを表しています。

(A): シングル・プロセッサーのシステム
各サイクルごとに、最大で 3 つの命令を実行することができますが、処理できるスレッドは 1 つです。(オレンジで示された "Thread1")
(B): デュアルプロセッサーのシステム
2 つのプロセッサーそれぞれにおいて、各サイクルごとに、最大で 3 つの命令を実行することができます。
そしてそれぞれのプロセッサーが 1 つずつスレッドを処理します。(オレンジで示された "Thread1" と青で示された "Thread2")

(A) と (B) を比較した場合、(B) は (A) の約 2 倍のスレッドを処理していますが、(A) (B) 共に白いマスが各所に点在しています。
この白いマスは、実行ユニットが何も処理を行っていないことを表し、例えば、水平方向で 1 マスだけが白い場合には、並行処理能力の 2/3 のみ使用されて 1/3 のリソースは余っていることになります。

白いマスが多いことは、処理を行うためのリソースの使用効率が悪いことを意味します。1 クロックサイクルで全ての実行リソース (3 マス全て) を使用している場合もありますが、キャッシュミスや、分岐予測ミス、あるいは前の命令の処理結果待ち等が原因で、実行ユニットが待ち状態 (白いマス) になっている場合もあります。

(C) : ハイパースレッディング・テクノロジー Pentium® 4 プロセッサーで構成されたシステム
各サイクルごとに最大で 3 つの命令を実行する点は同じです。しかし、2 つの論理プロセッサーが、それぞれ 1 つのスレッド (オレンジで示された "Thread1" と青で示された "Thread2") を同時に処理しますので、シングル・プロセッサーでありながら同時に 2 つのスレッドを処理することができます。

ハイパースレッディング・テクノロジー Pentium® 4 プロセッサーは、実行ユニットをより頻繁に利用しており、プロセッサー上の実行ユニットの待ち状態 (白いマス) を少なくしています。

実行リソースは、ハイパースレッディング・テクノロジーによって著しく使用効率を向上できます。しかし、どの程度効率が向上するかは、各アプリケーションがどのようにスレッドやリソースを利用する設計になっているかに依存します。

例えば、もしアプリケーションがマルチスレッド対応で、異なるスレッドを異なったリソースによって並行処理することができる設計であれば (整数演算処理を 1 つの論理プロセッサー上で行っている最中でも、もう一方の論理プロセッサー上で浮動小数点演算を処理させることをスケジューリングできます)、プロセッサーとアプリケーション間の処理能力は著しく向上します。

ハイパースレッディング・テクノロジー Pentium® 4 プロセッサーは、マルチタスク環境や、マルチスレッド対応の環境で、命令の処理能力が向上し、サポートしていないプロセッサーに比べて実行ユニットのリソースを有効に活用することができます。


先頭へ戻る

 

ハイパースレッディング・テクノロジーを Pentium® 4 プロセッサーで構成されたシステム上で使用するには、以下の条件を全て満たしている必要があります。
  • ハイパースレッディング・テクノロジー対応 インテル® Pentium® 4 プロセッサー
  • ハイパースレッディング・テクノロジーに対応した マザーボード
  • ハイパースレッディング・テクノロジーに最適化されている オペレーティング・システム
上記の必要条件は特にハイパースレッディング・テクノロジー Pentium® 4 プロセッサーで構成されたシステムを組み上げる時に特有の必要条件です。

注意: Pentium® 4 プロセッサーを搭載したシステムを組み立てる前に、マザーボードのマニュアル、ボックス版プロセッサーのマニュアル、ボックス版 Pentium® 4 プロセッサー (478 ピン・パッケージ) 搭載システムの概要 を参考にしてください。
以下の情報はこれらの書類に追加の情報になります。

 

ハイパースレッディング・テクノロジー対応 インテル® Pentium® 4 プロセッサーは、533MHz および 800MHz、 1066MHz のシステム・バスをサポートします。(全ての 533MHz システム・バス・プロセッサーが、ハイパースレッディング・テクノロジーをサポートするとは限りません)
ボックス版プロセッサーの特定については、ボックス版 Pentium® 4 プロセッサー (478 ピン・パッケージ) 搭載システムの概要 や、ボックス版 Pentium® 4 プロセッサー (775 ランド・パッケージ)搭載のシステム概要を参照してください。

 

ハイパースレッディング・テクノロジー対応 インテル® Pentium® 4 プロセッサーを使用する場合、このプロセッサーを搭載できるマザーボードは、インテル® NetBurst™ マイクロアーキテクチャー、および同技術に対応したチップセットをサポートしていなければなりません。
表 1 は、Intel NetBurst マイクロアーキテクチャー、および同技術に対応したチップセットの一覧です。

注: 搭載するプロセッサーのシステムバスをサポートするマザーボードを使用しているかを確認してください。サポートしていないマザーボードを使用した場合には、プロセッサーが仕様通りに動作しなかったり、プロセッサーが破損する場合があります。
マザーボードの製造元に互換性の情報を確認してください。

表 1: ハイパースレッディング・テクノロジーをサポートしているインテル製チップセット
インテル製チップセット名 システムバスのサポート ハイパー・スレッディング
テクノロジーのサポート
955X 1066, 800, 533 MHz 対応
945G 1066, 800, 533 MHz 対応
945P 1066, 800, 533 MHz 対応
925XE 1066 MHz 対応
925X 800 MHz 対応
915P 800, 533 MHz 対応
915G 800, 533 MHz 対応
910GL 533 MHz 対応
875P 800,533,400 MHz 対応
865G 800,533,400 MHz 対応
865PE 800,533,400 MHz 対応
865P 533,400 MHz 対応
850E 533,400 MHz 対応
845E 533,400 MHz 対応
845G (B-step のみ) 533,400 MHz 対応
845GE 533,400 MHz 対応
845PE 533,400 MHz 対応
845GV 533,400 MHz 対応

マザーボードは、Pentium® 4 プロセッサーに電気的にも機械的にも対応する物である必要があります。詳細については Pentium® 4 プロセッサーのデータシートを確認してください。
また、478 ピン・パッケージ版の Pentium® 4 プロセッサーは、478 ピン・マイクロ PGA ソケット (uPGA478B) を搭載したマザーボードにのみ装着が可能です。

特にマザーボードが Pentium® 4 プロセッサーの動作周波数に対応しているか調べるために、マザーボードのリビジョンとモデルを確認することは非常に重要です。
また、最新の Pentium® 4 プロセッサーを正しく認識し動作させるためにはマザーボードの BIOS をアップグレードすることが必要になる場合があります。
さらに BIOS は、ハイパースレッディング・テクノロジーをサポートする Pentium® 4 プロセッサーの設定として、マルチスレッド機能を <Enable (有効)> にする項目が必要です。
BIOS 設定でハイパースレッディング・テクノロジーを <Enable> にする方法に関する情報は、ハイパースレッディング・テクノロジーの設定と組み立て を参照してください。

 

オペレーティング・システムの対応:
Microsoft* Windows* オペレーティング・システム搭載 PC

下記のデスクトップ・オペレーティング・システムは HT テクノロジーに最適化されたコードを含んでおり、現時点で HT テクノロジー対応インテル® Pentium® 4 プロセッサー・ロゴに適合しています。

  • Microsoft* Windows* XP Professional Edition
  • Microsoft* Windows* XP Home Edition

下記のオペレーティング・システムはハイパースレッディング・テクノロジー搭載プロセッサーでの使用は推奨されていません。もし下記のオペレーティング・システムを使用する場合、BIOS でハイパースレッディング・テクノロジーを ‹Disable (無効)› に設定する必要があります。

  • Microsoft Windows 2000 (全バージョン)
  • Microsoft Windows NT* 4.0
  • Microsoft Windows Me
  • Microsoft Windows 98
  • Microsoft Windows 98 SE

Linux* オペレーティング・システム搭載 PC

下記の Linux オペレーティング・システムは HT テクノロジーに最適化されたコードを含んでおり、現時点で HT テクノロジー対応インテル® Pentium® 4 プロセッサー・ロゴに適合しています。

  • Red Hat Linux* 9 (Professional と Personal バージョン)
  • SuSE Linux* 8.2 (Professional と Personal バージョン)
  • Red Flag Linux* Desktop 4.0
  • COSIX* Linux* 4.0
.

注意: 上記以外の Linux オペレーティング・システムにおいても、ハイパースレッディング・ テクノロジーを利用できる可能性はありますが、ハイパースレッディング・テクノロジー対応 インテル® Pentium® 4 プロセッサー搭載システムに最も適しているのは、上記のリストに 記載されたペレーティング・システムです。他の Linux オペレーティング・システムを搭載した PC を購入する場合、その PC がハイパースレッディング・テクノロジーのために必要な システム構成を含み、ハイパースレッディング・テクノロジーを利用することが可能か PC メーカーにお問い合わせください。

先頭へ戻る

 

ハイパースレッディング・テクノロジーをサポートする Pentium® 4 プロセッサーでシステムを組み立てる際に、全てのプラットフォームの必要条件を満たしているかを確認することが非常に重要です。

インテルではハイパースレッディング・テクノロジーを有効にするために、以下の組み立て順序を推奨します。

  1. BIOS 設定でハイパースレッディング・テクノロジーを <Enable (有効)> にする
  2. オペレーティング・システムをインストールする
  3. 最新のサービスパックやパッチなどをインストールする
  4. インテル® チップセット・ソフトウェア・インストール・ユーティリティーをインストールする
  5. 最新のドライバーをインストールする

このインストールの順序は、ハイパースレッディング・テクノロジー Pentium® 4 プロセッサーに最適化された互換性、機能およびパフォーマンスを確実にします。

 

オペレーティング・システムをインストールする前に BIOS のデフォルトの設定を確認してください。

マザーボードの BIOS でハイパースレッディング・テクノロジーを適切に設定するために <Enable (有効)>、<Disable (無効)> の切替の方法を確認してください。
BIOS がハイパースレッディング・テクノロジーに対応していない場合、ハイパースレッディング・テクノロジーをサポートしているプロセッサーが装着されていても BIOS 画面には <Enable>、<Disable> の切替項目は表示されません。

最新の BIOS にアップデートされていること、またハイパースレッディング・テクノロジーに対応していることを確認してください。

必ず BIOS 設定でハイパースレッディング・テクノロジー機能を <Enable> にしてください。

ハイパースレッディング・テクノロジーをサポートしている インテル® デスクトップ・ボードは、BIOS の初期設定でハイパースレッディング・テクノロジーが <Enable> になっています。

インテル® デスクトップ・ボードでハイパースレッディング・テクノロジー機能が <Enable> になっているかを確認するためには、BIOS 設定画面で "Hyper-Threading Technology" の項目を表示させてください。
<Disable> であった場合には、<Enable> を選択します。(図 4 参照)
ハイパースレッディング・テクノロジーをサポートしている BIOS が搭載されたインテル® デスクトップ・ボードに、動作周波数が 2.80GHz 以下のハイパースレッディング・テクノロジーをサポートしていない Pentium® 4 プロセッサーを装着した場合、ハイパースレッディング・テクノロジーの項目は <Disable> になり、灰色での表示がされ変更できません。

インテル® デスクトップ・ボードの BIOS 設定画面上でハイパースレッディング・テクノロジーを有効にした状態

図 4: インテル® デスクトップ・ボードの BIOS 設定画面上でハイパースレッディング・テクノロジーを有効にした状態

 

Windows XP Professional やWindows XP Home Edition オペレーティング・システムはハイパースレッディング・テクノロジーをサポートした Pentium® 4 プロセッサーで構成したシステムに対応しています。より詳細な情報についてはサポートオペレーティング・システムの項目を参照してください。

 

選択したオペレーティング・システムが、ハイパースレッディング・テクノロジーをサポートする Pentium® 4 プロセッサーのより確実な動作環境を得るために最新のサービスパックやパッチをインストールする必要があります。

Windows XP を使用する場合は、サービスパック 1 を Microsoft 社のウェブページ からダウンロードしてください。

最新のサービスパックやパッチに関する情報については、オペレーティング・システムの開発元に問い合わせてください。

 

新しいインテル製チップセットの中には、Windows によって自動的に認識されない幾つかの機能があります。
それらを正しく認識させシステムのパフォーマンスを最適化するには、インテル® チップセット・ソフトウェア・インストール・ユーティリティー (INF ユーティリティー) をインストールすることが非常に重要になります。

そして、他のどのドライバーよりも先にインテル® チップセット・ソフトウェア・インストール・ユーティリティーをインストールしなければなりません。

 

最新ドライバーには、ハイパースレッディング・テクノロジーとの互換性に関する問題の修正や最適化に関する更新が含まれている場合があります。各機器メーカのウェブサイトを確認して、最新ドライバーをダウンロードしてインストールしてください。

先頭へ戻る

 

Windows XP 上でハイパースレッディング・テクノロジーが有効になっているかどうかは、タスクマネージャーの CPU 使用率の履歴のグラフや、デバイス マネージャで確認できます。

 

Windows XP のタスクマネージャーのパフォーマンス・タブで、プロセッサー使用率の履歴のグラフが 2 つある場合には、ハイパースレッディング・テクノロジーが有効に設定されています。

もし、CPU のグラフが 1 つしかない場合には、ハイパースレッディング・テクノロジーが BIOS 設定画面にて <Disable (無効)> に設定されている可能性があります。
BIOS の設定を確認してWindows XP のサービスパック 1 以降を正しくインストールしてください。

以下の手順でハイパースレッディング・テクノロジーが有効になっているかどうか Windows XP のタスクマネージャーで確認ができます。

  1. タスクバーを右クリックします
  2. タスクマネージャーをクリックします
  3. パフォーマンス・タブをクリックします
Windows XP のタスクマネージャーでハイパースレッディング・テクノロジーを確認する
図 5: Windows XP のタスクマネージャーでハイパースレッディング・テクノロジーを確認する

先頭へ戻る

 

Windows XP のデバイス マネージャ上で 2 つのプロセッサーが表示されていれば、ハイパースレッディング・テクノロジーが有効になっています。

ハイパースレッディング・テクノロジーが BIOS 設定画面にて <Disable (無効)> に設定されている場合には、1 つのプロセッサーしか表示されません。

注意: インテル® Pentium® 4 プロセッサーで構成されたWindows XP システムのパフォーマンスを最適化するには最新のインテル® チップセット・ソフトウェア・インストール・ユーティリティーをインストールしなければなりません。

以下の手順で Windows XP のデバイス マネージャでハイパースレッディング・テクノロジーが有効になっているかの確認ができます。

  1. スタートメニューをクリックします
  2. コントロール・パネルをクリックします
  3. パフォーマンスとメンテナンスをクリックします (設定により表示されない場合もあります)
  4. システムをダブルクリックします
  5. ハードウェア・タブをダブルクリックします
  6. デバイス マネージャをクリックします
  7. プロセッサーをダブルクリックします
Windows XP のデバイス マネージャ上のハイパースレッディング・テクノロジーの確認
図 6: Windows XP のデバイス マネージャ上のハイパースレッディング・テクノロジーの確認

 

インテル製プロセッサー向けに開発された既存のソフトウェアであれば、ハイパースレッディング・テクノロジー対応 インテル® Pentium® 4 プロセッサー上でも正常に動作します。
しかし、ソフトウェアによってはハイパースレッディング・テクノロジーから最適のパフォーマンスを得るために簡単なコード修正が必要となります。

システム・インテグレーターは、選択したソフトウェアが最新のバージョンであり、またハイパースレッディング・テクノロジーをサポートする Pentium® 4 プロセッサー向けに最適化されているか確認する必要があります。

マルチスレッド・コードで最適化されたアプリケーションであれば、ハイパースレッディング・テクノロジー Pentium® 4 プロセッサーの性能を最大限に活用することができます。
さらに、ハイパースレッディング・テクノロジー Pentium® 4 プロセッサーは、複数のアプリケーションが起動するマルチタスク環境においても、応答時間を短縮し、複数のプログラムを効率良く同時実行することで、処理性能を改善することができます。

システム・インテグレーターは、ソフトウェアメーカにハイパースレッディング・テクノロジーへの対応と、必要なバージョン情報を知らなければなりません。

ハイパースレッディング・テクノロジー Pentium® 4 プロセッサーに関するより詳細な情報は、パフォーマンス情報とソフトウェア評価ガイド (英語) を参照してください。

 

ハイパースレッディング・テクノロジーの詳細な技術に関する追加情報は、以下の各ウェブサイトを確認してください。

上記以外のインテル® Pentium® 4 プロセッサーに関する情報は、こちら を参照してください。


 


ハイパースレッディング・テクノロジーを利用するには、ハイパースレッディング・テクノロジーに対応したインテル® Pentium® 4 プロセッサーを搭載したコンピューター・システム、および同技術に対応したチップセットと BIOS、OS が必要です。性能は、使用するハードウェアやソフトウェアによって異なります。HT テクノロジーに対応したプロセッサーの情報等、詳細は、http://www.intel.co.jp/jp/products/ht/hyperthreading_more.htm を参照してください。