コンピュータプロセッサの特性
プロセッサの重要な特性は以下の通りです:
プロセッサのメーカーとモデル
プロセッサの基本的な特性は、メーカー(AMDまたはIntel)とモデル名です。両社の競合モデルは機能や性能が似ていますが、AMD用プロセッサをIntel互換マザーボードに取り付けることはできず、その逆も同様です。
ソケットタイプ
プロセッサのもう一つの重要な特性は、そのプロセッサの装着を想定したソケットです。例えば、Socket 478マザーボードのプロセッサを交換する場合、そのソケットに適合する設計の交換用プロセッサを選択する必要があります。表5-1に、プロセッサのソケットごとのアップグレードのしやすさに関する問題を記載します。
表5-1:プロセッサソケットタイプ別のアップグレードのしやすさ
クロック速度
プロセッサのクロック速度(MHzまたはGHzで指定)は性能を左右しますが、プロセッサの系統が異なればクロック速度の比較に意味はありません。例えば、3.2 GHzのPrescottコアPentium 4は、相対的なクロック速度が示す通り、3.0 GHzのPrescottコアPentium 4より約6.7%高速です。しかし、3.0 GHzのCeleronプロセッサは、L2キャッシュが小さくホストバス速度が遅いため、2.8 GHzのPentium 4よりも低速です。同様に、Pentium 4が1.3 GHzで導入された際、その性能は置き換える予定であった1 GHzのPentium IIIプロセッサよりも実際には低速でした。これは、Pentium 4のアーキテクチャがPentium IIIアーキテクチャと比較して、クロック当たりの効率が低いためです。
AMDとIntelのプロセッサを比較する際、クロック速度は役に立ちません。AMDプロセッサはIntelプロセッサよりはるかに低いクロック速度で動作しますが、クロックの刻み(ティック)ごとに約50%多くの処理を実行します。大まかに言うと、2.0 GHzで動作するAMD Athlon 64は、3.0 GHzで動作するIntel Pentium 4とほぼ同等の総合性能を持っています。
'''モデル番号とクロック速度の比較''' AMDは常にIntelに対してクロック速度の面で不利なため、プロセッサを区別するためにクロック速度ではなくモデル番号を使用しています。例えば、2.0 GHzで動作するAMD Athlon 64プロセッサのモデル番号が「3000+」である場合、これは同プロセッサが3.0 GHzのIntelモデルとほぼ同等の性能を持つことを示しています。(AMDはモデル番号をIntelのクロック速度と比較することを強く否定していますが、知識のある観察者はこの否定を意に介しません。) Intelは以前、同じ速度で動作しながらもホストバス速度、コア、その他の特性が異なるプロセッサを区別するために文字表記を使用していました。例えば、2.8 GHzのNorthwoodコアPentium 4プロセッサには、400 MHz FSBを使用する「Pentium 4/2.8」、533 MHz FSBを使用する「Pentium 4/2.8B」、800 MHz FSBを使用する「Pentium 4/2.8C」という3つのバリエーションがありました。Intelが新しいPrescottコアをベースにした2.8 GHz Pentium 4を導入した際、それを「Pentium 4/2.8E」と指定しました。 興味深いことに、Intelもクロック速度を識別子として使うことをやめました。一部の古いモデルを除き、すべてのIntelプロセッサは現在、モデル番号で表記されています。クロック速度の名残が残るAMDのモデル番号とは異なり、Intelのモデル番号はクロック速度とは完全に切り離されています。例えば、Pentium 4 540は、たまたま3.2 GHzで動作する特定のプロセッサモデルを指します。同プロセッサで3.4 GHz、3.6 GHz、3.8 GHzで動作するモデルは、それぞれ550、560、570と指定されています。
ホストバス速度
「ホストバス速度」(「フロントサイドバス速度」「FSB速度」、あるいは単に「FSB」とも呼ばれる)は、プロセッサとチップセット間のデータ転送レートを指定します。ホストバス速度が高速であることは、同じクロック速度で動作するプロセッサであっても、プロセッサ性能の向上に寄与します。AMDとIntelはメモリとキャッシュ間のパスの実装が異なりますが、本質的にFSBとは、1秒間に転送可能なデータブロックの最大転送量を示す数値です。実際のホストバスクロックレートが100 MHzの場合、クロックサイクルごとに4回のデータ転送が可能であれば(これを「クアッドポンプ」と呼びます)、有効なFSB速度は400 MHzとなります。
例えば、Intelは400、533、800、または1066 MHzのホストバス速度を使用するPentium 4プロセッサを製造してきました。ホストバス速度800 MHzの2.8 GHz Pentium 4は、ホストバス速度533 MHzのPentium 4/2.8よりもわずかに高速であり、そのPentium 4/2.8はホストバス速度400 MHzのPentium 4/2.8よりもわずかに高速です。Intelが低価格のCeleronプロセッサを差別化するために使用する尺度の一つに、現在のPentium 4モデルと比較したホストバス速度の引き下げがあります。Celeronモデルは400 MHzと533 MHzのホストバス速度を使用します。
Socket 754およびSocket 939のすべてのAMDプロセッサは、800 MHzのホストバス速度を使用します。(実際にはIntelと同様にホストバスは200 MHzで動作しますが、クアッドポンプにより有効速度が800 MHzになります。)Socket AのSempronプロセッサは166 MHzのホストバスを使用し、ダブルポンプによって有効なホストバス速度は333 MHzとなります。
キャッシュサイズ
プロセッサは、プロセッサと比較的低速なメインメモリ間の転送をバッファリングすることで性能を向上させるため、2種類のキャッシュメモリを使用します。「一次キャッシュ(L1キャッシュ)」のサイズは、プロセッサを再設計しない限り変更できないプロセッサアーキテクチャの特性です。一方、「二次キャッシュ(Level 2キャッシュまたはL2キャッシュ)」はプロセッサコアの外部にあるため、プロセッサメーカーは同じプロセッサであっても異なるL2キャッシュサイズで製造可能です。例えば、Pentium 4プロセッサの様々なモデルは512 KB、1 MB、または2 MBのL2キャッシュを搭載しており、AMD Sempronの様々なモデルは128 KB、256 KB、または512 KBのL2キャッシュを搭載しています。
一部のアプリケーション(特に小さなデータセットで動作するもの)では、L2キャッシュが大きいとプロセッサの性能が顕著に向上します。これは特にIntelモデルで顕著です。(AMDプロセッサにはメモリコントローラーが内蔵されており、L2キャッシュ拡大のメリットはある程度相殺されます。)大きなデータセットで動作するアプリケーションの場合、L2キャッシュを大きくしてもメリットはわずかです。
'''悲しき例外、Prescott''' Pentium 4プロセッサを旧型の130 nm Northwoodコアから新型の90 nm Prescottコアに移行した際、消費電力と発熱が急増したことは、Intelをはじめとするすべての人にとって衝撃でした。これは、PrescottがNorthwoodの単純なダイ縮小版ではなかったためです。IntelはNorthwoodコアを完全に再設計し、SSE3などの機能を追加し、基本アーキテクチャに大幅な変更を加えました。(当時、私たちはこれらの変更はPentium 5と名付けるに値すると考えましたが、Intelはそうしませんでした。)残念なことに、アーキテクチャの劇的な変更は、消費電力と発熱の劇的な増加をもたらし、プロセスサイズの縮小によって期待された恩恵を打ち消してしまいました。
プロセスサイズ
「プロセスサイズ」(「製造サイズ」とも呼ばれる)はナノメートル(nm)で指定され、プロセッサダイ上の最小個々の素子のサイズを定義します。AMDとIntelは、各シリコンウェーハからより多くのプロセッサを取り出し、プロセッサごとの製造コストを削減するために、継続的にプロセスサイズを縮小(「ダイ縮小」)しようと努めています。Pentium IIや初期のAthlonプロセッサは350 nmまたは250 nmプロセスを使用していました。Pentium IIIや一部のAthlonプロセッサは180 nmプロセスを使用していました。近年のAMDおよびIntelプロセッサは130 nmまたは90 nmプロセスを使用しており、将来のプロセッサでは65 nmプロセスが使用される予定です。
プロセスサイズが重要なのは、他の条件が同じであれば、より小さなプロセスサイズを使用するプロセッサの方が高速で、低電圧で動作し、消費電力が少なく、発熱も抑えられるためです。特定の時期に提供されるプロセッサは、異なる製造サイズを使用していることがよくあります。例えば、かつてIntelは180 nm、130 nm、90 nmプロセスサイズを使用したPentium 4プロセッサを販売し、AMDは同時に250 nm、180 nm、130 nmの製造サイズを使用したAthlonプロセッサを販売していました。アップグレード用のプロセッサを選択する際は、より小さな製造サイズのプロセッサを優先してください。
特殊機能
プロセッサモデルによってサポートする機能セットが異なります。それらの中には重要になるものもあれば、全く関係のないものもあります。現在のプロセッサの一部(すべてではありません)で利用可能な、重要となりうる5つの機能を紹介します。これらの機能はすべて、WindowsおよびLinuxの最近のバージョンでサポートされています:
SSE3
Intelによって開発され、現在ではほとんどのIntelプロセッサと一部のAMDプロセッサで利用可能な「SSE3(Streaming Single-Instruction-Multiple-Data (SIMD) Extensions 3)」は、動画処理やその他のマルチメディアアプリケーションで一般的に遭遇する特定のデータ型の処理を迅速化するために設計された拡張命令セットです。SSE3をサポートするアプリケーションは、SSE3をサポートしていないプロセッサよりも、サポートしているプロセッサ上で10%~15%から最大100%高速に実行できます。
64ビットサポート
最近まで、PCプロセッサはすべて32ビットの内部データパスで動作していました。2004年、AMDはAthlon 64プロセッサとともに「64ビットサポート」を導入しました。公式にはAMDはこの機能を「x86-64」と呼んでいますが、多くの人は「AMD64」と呼んでいます。重要な点として、AMD64プロセッサは32ビットソフトウェアと後方互換性があり、64ビットソフトウェアと同様に効率的にそのソフトウェアを実行できます。独自に64ビットアーキテクチャを推進していたIntelは、32ビット互換性が限られていたため、x86-64の独自バージョンである「EM64T(Extended Memory 64-bit Technology)」を導入せざるを得なくなりました。今のところ、ほとんどの人にとって64ビットサポートは重要ではありません。MicrosoftはWindows XPの64ビット版を提供しており、ほとんどのLinuxディストリビューションも64ビットプロセッサをサポートしていますが、64ビットアプリケーションが一般的になるまでは、デスクトップコンピュータで64ビットプロセッサを実行することにほとんど実用的な利点はありません。MicrosoftがWindows Vistaを(ようやく)出荷すれば状況は変わるかもしれません。Windows Vistaは64ビットサポートを活用し、多くの64ビットアプリケーションを生み出す可能性が高いからです。
保護実行
Athlon 64において、AMDは「NX(No eXecute)」技術を導入し、Intelもすぐに「XDB(eXecute Disable Bit)」技術で追随しました。NXとXDBは同じ目的を果たし、プロセッサがメモリのアドレス範囲のうち実行可能な範囲と実行不可能な範囲を判断できるようにします。バッファオーバーラン攻撃などのコードが、実行不可能なメモリ空間で実行されようとすると、プロセッサはオペレーションシステムにエラーを返します。NXとXDBにはウイルス、ワーム、トロイの木馬などの脅威による損害を低減する大きな可能性がありますが、Windows XP Service Pack 2のような、保護実行をサポートするオペレーションシステムが必要です。
省電力技術
AMDとIntelは両社とも、一部のプロセッサモデルで省電力技術を提供しています。どちらの場合も、消費電力と発熱が問題となっていたデスクトッププロセッサに、モバイルプロセッサで使用されていた技術が移行されました。本質的に、これらの技術はプロセッサがアイドル状態や軽負荷時にプロセッサ速度を低下させる(それによって消費電力と発熱を抑える)ことで機能します。Intelは自社の省電力技術を「EIST(Enhanced Intel Speedstep Technology)」と呼んでいます。AMDのバージョンは「Cool'n'Quiet」と呼ばれています。いずれも消費電力、発熱、システムノイズレベルをわずかですが確実に低減できます。
デュアルコアサポート
2005年までに、AMDとIntelは両社とも、単一プロセッサコアで可能な性能限界に達しつつありました。明白な解決策は、1つのプロセッサパッケージに2つのプロセッサコアを搭載することでした。ここでもAMDが「Athlon 64 X2」シリーズプロセッサで先頭に立ちました。同シリーズは、1つのチップ上に2つの密結合されたAthlon 64コアを搭載しています。追い上げを強いられたIntelは、歯を食いしばり、「Pentium D」と呼ぶデュアルコアプロセッサを急造しました。AMDが設計したソリューションには、高い性能とほぼすべての旧型Socket 939マザーボードとの互換性など、いくつかの利点があります。一方、基本的に2つのPentium 4コアを統合せず1つのチップに接着しただけのIntelの粗末なソリューションは、2つの妥協を生みました。第一に、Intelのデュアルコアプロセッサは旧型マザーボードとの後方互換性がないため、新しいチップセットと新しいシリーズのマザーボードが必要です。第二に、既存のコアを2つプロセッサパッケージに貼り付けただけに近い状態であったため、消費電力と発熱が非常に高く、そのためIntelは最速のシングルコアPentium 4モデルと比較してPentium Dプロセッサのクロック速度を低下させる必要がありました。
とは言え、Athlon 64 X2が圧倒的な勝者というわけではありません。Intelが賢明にもPentium Dの価格を魅力的に設定したからです。最も安価なAthlon X2プロセッサは、最も安価なPentium Dプロセッサの2倍以上の価格で販売されています。価格は間違いなく下がるでしょうが、価格差があまり変わるとは予想できません。Intelには製造能力に余裕がある一方、AMDはプロセッサを製造する能力がかなり限られているため、当面の間AMDのデュアルコアプロセッサはプレミアム価格になる可能性が高いです。残念ながら、これはデュアルコアプロセッサがほとんどの人にとって合理的なアップグレードの選択肢ではないことを意味します。Intelのデュアルコアプロセッサは適正価格ですが、マザーボードの交換が必要です。AMDのデュアルコアプロセッサは既存のSocket 939マザーボードを使用できますが、プロセッサ自体が高価すぎるため、アップグレードを検討する大多数の人にとって現実的な選択肢にはなり得ません。
'''ハイパースレッディングとデュアルコアの比較''' 一部のIntelプロセッサは「ハイパースレッディング・テクノロジー(HTT)」をサポートしており、2つのプログラムスレッドを同時に実行できます。HTTを使用するように設計されたプログラムは、HTT非対応の似たモデルよりも、HTT対応プロセッサ上で10%から30%高速に動作する場合があります。(一方で、HTTを有効にするとHTTを無効にした場合よりも遅くなるプログラムがあるのも事実です。)HTTとデュアルコアを混同しないでください。HTTプロセッサは単一のコアが時には複数のスレッドを実行できる状態であり、デュアルコアプロセッサは2つのコアを搭載しているため、常に複数のスレッドを実行できます。
コア名とコアステッピング
「プロセッサコア」は基本的なプロセッサアーキテクチャを定義します。特定の名前で販売されているプロセッサでも、複数のコアのいずれかを使用している場合があります。例えば、最初のIntel Pentium 4プロセッサは「Willametteコア」を使用していました。後のPentium 4のバリエーションでは「Northwoodコア」「Prescottコア」「Gallatinコア」「Prestoniaコア」「Prescott 2Mコア」が使用されています。同様に、様々なAthlon 64モデルが「Clawhammerコア」「Sledgehammerコア」「Newcastleコア」「Winchesterコア」「Veniceコア」「San Diegoコア」「Manchesterコア」「Toledoコア」を使用して製造されてきました。
コア名を使用することは、多くのプロセッサ特性を簡潔に指定するための便利な省略方法です。例えば、Clawhammerコアは130 nmプロセス、1,024 KBのL2キャッシュを使用し、NXおよびX86-64機能をサポートしていますが、SSE3やデュアルコア動作はサポートしていません。対照的に、Manchesterコアは90 nmプロセス、512 KBのL2キャッシュを使用し、SSE3、X86-64、NX、およびデュアルコア機能をサポートしています。
プロセッサのコア名は、ソフトウェアプログラムのメジャーバージョン番号に似ていると考えることができます。ソフトウェア会社がメジャーバージョン番号を変更せずに頻繁にマイナーアップデートをリリースするように、AMDとIntelもコア名を変更せずにコアを頻繁にマイナーアップデートします。これらの小さな変更は「コアステッピング」と呼ばれます。プロセッサが使用するコアによってマザーボードとの後方互換性が決まる可能性があるため、コア名の基本を理解しておくことが重要です。ステッピングは通常それほど重要ではありませんが、注意を払う価値はあります。例えば、特定のコアがB2とC0のステッピングで利用可能な場合があります。後のC0ステッピングは、以前のステッピングと比較してバグ修正が行われていたり、動作温度が低かったり、その他の利点があったりする場合があります。デュアルプロセッサマザーボード(デュアルコアプロセッサを搭載したシングルソケットマザーボードとは異なり、2つのプロセッサソケットを持つマザーボードのこと)に2つ目のプロセッサを取り付ける場合は、コアステッピングも極めて重要になります。デュアルプロセッサマザーボード上でコアやステッピングを決して混ぜないでください。狂気(あるいは破滅)への道です。
5 件のコメント
ahhhhhhhhhhhh helllllo there - shrek
Keanan Mucklow - 返信 共有
DDOONNKKEEYY-Shrek
Connor - 返信 共有
lads gg this is ded
David PUGH - 返信 共有
Thanks for sharing the blog
chitra sureworks - 返信 共有
"12 too short"
Harry Bgg - 返信 共有