前回の話
2049751202_In8tz9hO_1488239730773







d2fea170d0cbe

file1_1544983826

d30747df2a0e2

 * 決してAMD広告ではありません!



ゲームはIntel?CPU構造の差
コスパではAMDがIntelを圧殺しましたが、何でゲームではまだIntelがいいと言われるのでしょうか?
詳しくは説明出来ませんが、私自身が理解しているAMDとIntelの差を語ることにします。


前回でも語ったように、Intelは昔からのアーキテクチャを今までずっと応用して新しい製品を出しています。それは何故でしょうか?
Intelは過去、画期的にCPUのクロックスピードを高めるNetburstアーキテクチャを開発し、そのアーキテクチャでCPUを出したことがあります。

そのCPUの名はPentium4。
そうです。
Intelを闇に落としたそのCPUです。
それがトラウマになったIntelは過去の設計を掘り出して、直し、新しい技術を入れ、今のCore iシリーズまで持って来たのです。



CPUの構造
まず円滑な説明のために適当にCPUの構造を描くと
캡처
こんな感じです。



今のCoreの構造はIntelがPentium4のショックから立ち直ったMeromアーキテクチャ時代にほとんど完成されて
캡처   
↑これがMerom


現在のQuad以上の複数のコア構造は2009年のNehalemアーキテクチャ時代に完成されました。
캡처  
↑これがNehalem



Nehalem前のQuadコア達は↓のようにただDualコアを二つくっ付けただけのレベルで
캡처

L2Cacheの効率が糞だったのです。
電気はものすごく使ってる割に仕事はそんなに出来ない糞。
その糞構造を改選して作り上げたアーキテクチャが
캡처

こうやってL3Cacheをシェアーする構造であるNehalem、Intel初の真の4コアアーキテクチャです。

一方、AMDはL3Cacheをシェアーする構造(Phenom X4)をIntelより2年早い2007年に既に開発、
캡처
↑AMD PenomX4


Dualコア構造もAMDの方が早かったです。
캡처

ですが.......

AMDが「発展した技術」を先に開発したことまでは事実ですが、パフォーマンスではIntelに負けました。
もっと進歩した技術を持っていたのに負けた理由は
캡처

캡처
IntelとAMDは基本的に資本力の差(開発費の差)によるCore自体の性能で差があったからです。
そのおかげでIntelは多少不完全な構造でもAMDよりいいパフォーマンスを出すことが出来ました。
IntelにCoreパフォーマンスで勝てないAMDは今までの伝統的Coreを使う最後のCPU
캡처
PhenomⅡx6を出して
今までと違う(Intelと違う)方向で進化することになります。
その方向は即ち、新しいCore構造です。
캡처
そして、その新しいCoreを使って開発されたCPU。
それがAMDの1世代Module Core
캡처
Bulldozerです。





HTとModule
ではModuleって何なのでしょうか。
まず、伝統的コアの構造は既に上で見せた通りです。
캡처
↑これ覚えてますね?

そしてそのコアはこう動きます。
캡처
このコアで、より高いパフォーマンスを出すためにIntelが新しく開発した技術がHT(Hyper Threading)です。
캡처
HTは↑のように仮想のThreadを一個増やし、多重作業性能、処理効率を上げる技術です。

AMDのModuleもこれとある程度似ています。
캡처

さて、果たしてHTとModuleは何が違うのでしょうか?
캡처
整数演算は一般的コンピューティング環境のパフォーマンスを決めます。
そして実数演算はゲーム・マルティメディア等の作業に要ります。
簡単に言ったらCPU内部のグラフィックボードだと考えれば楽です。

ALUでも実数演算は出来ますが、FPUで行う演算がもっと早くて効率的です。

캡처
AMDは小型ALUを二つ配置し、同時多発的な作業を円滑に処理出来るようにして、大型FPUを置くことでゲーム・動画・イメージ・3D等の作業に強力なパフォーマンスを集中させることが出来るように設計しました。


さてIntel(HT)とAMD(Module)の差は何でしょうか?
캡처
IntelのHTの場合、整数であろうが実数であろうが有働的にCPUリソースが共有されて演算されるますが、AMDのModuleはFPUだけ共有します。
そのおかげで負荷が多い状況ではALUを二つ持ってるModuleがHTよりいいパフォーマンスを出してくれますが、単一ThreadのパフォーマンスはHTの方がもっと強いです。


個人的にはModule構造はなかなか面白い構造だと思っています。
何故かというとCPU Coreは整数演算が基本です。
つまり、整数演算を行うALUを二つも持っているModuleはパフォーマンスは1Coreに近い物なのに形式上、Dual Coreと見なすことが出来ます。

では何でAMDはこのような構造を作り上げたのか?
その理由は

캡처
 ↑のように同じCoreとThread数、ほぼ同じパフォーマンスなのに価格は3分の1の安いCPUを作れるからです。
캡처
AMDのModule構造はALU二つを一つのCoreに入れることによってCPU自体の面積を減らせます。
即ちCPUを作る土台であるウェハー1枚で作れるCPUの数が増えて経済的であり、(電力消耗が激しいFPUの数が減って)電力消耗も減らせます。

例えば伝統的に作られたコアで8コアCPUを作るとしたら
캡처
FPUは8つになります。
それぞれのUnitの節電を考えることもややこしい上に、電力消耗による発熱のせいでクロックスピードも減らすしかなくなります。そうなると結局、各コア達のパフォーマンスも落ちることになるのでしょう。
캡처
何より、↑のようにFPU8つを全部使うプログラムが少なすぎて、使え道がないというのが一番の問題点です。つまりプログラムで使うFPU以外のFPU達は仕事せず遊んでいるってことになります。
それを解決しようとAMDが悩んだ結果がこの
캡처
Moduleというわけです。



次はこんなに悩んで設計したAMDのCPUが昔からのアーキテクチャを応用するだけのIntelのCPUに何故負けて来たのかに付いて語ります。








スポンサードリンク