Quantcast
Channel: パソコンの匠,パソコン自作,PCパーツ,改造,グラボ,液晶モニター,Mac,ノートパソコン,ボカロ,フリーソフト,スマホ,タブレット紹介ブログ
Viewing all articles
Browse latest Browse all 242

CPU業界の闇!Intel HT(ハイパースレッディング)とAMD リアル8コアの意味と効果

$
0
0

CPU業界の闇!Intel HT(ハイパースレッディング)とAMD リアル8コアの意味と効果
CPU業界の闇!Intel HT(ハイパースレッディング)とAMD リアル8コアの意味と効果

自作初心者の方でも聞いたことのある「Intel HT(ハイパースレッディング)」と「AMD リアル8コア」。ハイパースレッディングとは、1コアで2つのスレッドを並列処理するというIntel特有の技術。そしてリアル8コアは、単純にスレッド単位ではなく本当に8コア搭載していますよと、AMDが宣伝しているキャッチコピーです。

4コア8スレッドのハイパースレッディングのCPUの場合は論理8コア、実コアが8つある場合には物理8コアと呼びます。「論理」というのは、WindowsなどのOSから見て論理的に8コアあるように認識されることから。

このくらいは皆さん知っていそうな情報ですが、実はこれにはいくつかの詐欺的なトリックや技術的な限界があったりします。今日はその辺の裏事情をご紹介したいと思います。

●実はIntel HT(ハイパースレッディング)は、1コアで2スレッドを処理出来ていない

「えっ?」と思った方も多いかもしれません。例えばハイパースレッディングが採用されているCore i7 4コア8スレッドのCPU搭載機なら、タスクマネージャーで実際に8コアあるかのように見えます。

しかし、当たり前の話ですがコアが一つしか無いので、完全同時に1コアで2スレッドを処理するなどということは不可能なのです。

「じゃあハイパースレッディングって何なの?」という話になります。

CPUというのは、整数演算や浮動小数点演算などという色々な小型のモジュールが組み合わさって一つのコアになっています。ソフトウェアはそのモジュールを部分的に使用してその処理を行います。これがいわゆるスレッドというものです。

ハイパースレッディングというのは、この時例えば整数演算モジュールを使用している際に余っている浮動小数点演算モジュールを別のスレッドの処理に割り当てて無駄を無くそうという思想で設計されたシステムです。

つまり、CPUコアの内部モジュールを無駄なく使うことで、あたかも2スレッド同時処理しているかのように見せている訳です。

しかしながら、ソフトウェアというものはこのソフトは整数演算、このソフトは浮動小数点演算という風にソフトごとに使用されるモジュールが分かれている訳ではなく、ランダムに様々なモジュールが使用されることになります。

工学を学んだ訳でも設計者でも無いので本当のところまでは分かりませんが、少なくともWindows XPまでのOSではハイパースレッディングをオフにした方が高いベンチマークが出るという事実があります。

さらに、裏側でハイパースレッディングに起因するエラーが出ていたり、特定の処理で性能が低下したり、ソフトウェアによってはコードを並列処理出来ていなかったりするので、実際には2倍のつまりは1コア2スレッドを並列処理した程の効果は出ないと言われています。

ですので、マザーボードのBIOSではハイパースレッディングをオフにすることが可能になっている訳です。

特定の処理では実際に優位な効果があるのも事実で、最新のOSやソフトウェアでは無いよりはあった方が効果的だが宣伝されている程の能力は無く、まあオンにしておいてもいいかなという程度のものだったりします。

僕自身、初めてハイパースレッディングの8スレッドをタスクマネージャーで見た時は感動したものですが、そういった事実を知ると「なるほどその程度のものなのか」と納得した次第です。

●AMDのリアル8コアは実質4スレッドしか処理出来ていない

お次はAMDの方を。こちらも「えっ?」となるお話かも。

上記のハイパースレッディングの解説で、CPUのコアというものが様々なモジュールから出来ていることはお分かり頂けたかと思います。そしてAMD FXシリーズの8コアCPUは当然8つのコアが搭載されています。

しかし実はスレッド(コード)を処理するためのモジュールの一部を2コアで共有していることが発覚しました。ということは、簡単に説明するとそのモジュールを利用する処理に対しては、2コアが稼働していても1スレッドしか同時に処理されない訳です。

物凄く雑に説明するならば、Intelのハイパースレッディングは「8コアに見えるけど実質的には4コア分の処理しか出来ない」、AMDのリアル8コアは「8コアあるけど実質的には4コア分の処理しか出来ない」という話になります。

誤解の無いように補足すると、状況によってはIntelにもAMDにも8スレッドや8コア分の性能を発揮する場面が多々ありますが、「宣伝されている(周知されている)程の性能は無い」ということです。

パソコンやデジタルデバイスの核とも言えるCPUは、この十数年間で劇的に性能を向上させマルチコアやマルチスレッドが当たり前になりましたが、やはり技術的な壁を超え続けるのは難しく、ここ最近はそのイノベーションが頭打ちになりつつあります。

各社は定期的に新しい技術を搭載した新製品を発売しなくてはならないため、多少過剰な宣伝文句や何とかして性能を向上させるための工夫や悪戦苦闘の結果、こういった誤解を生んでしまったのだと思います。

とは言え、Intel・AMD共に魅力的なメーカーであることは変わらず、ハイパースレッディングもリアル8コアも他の製品より優秀なことに変わりはありません。

過剰な期待をせずに新たなイノベーションが起こることを待ちつつ、現行最新のCPUで自作を楽しんで欲しいと願っています。

Intel Core i7
AMD FX CPU


↓ブログランキングにご協力お願い致します。
にほんブログ村 PC家電ブログ 自作PCへ ブログ人気ランキング

Viewing all articles
Browse latest Browse all 242

Trending Articles