Core i9 の予感

 コンシューマ市場に物理10コアを超えるCPUが出るのか疑問ではありますが、故にもし登場するならウルトラハイエンドのCore i9ブランドが登場するのではないか?という気がしてきました。

 筆者はシングルソケットの知識が皆無なのですが、先ほど調べましたところ・・・

 Pentium 2C/2T
 Core i3 2C/4T
 Core i5 4C/4T
 Core i7 4C/8T ~ 6C/12T
 Core i7 Extreme 8C/16T

 概ね、この様なブランディングで、数年前に6C/12T~8C/16TがCore i9ブランドで登場する可能性が語られていた時期が有った様ですが Extreme を設置した事で i9 計画は一旦消滅していると思います。

 しかし2016以降に登場予定のSkylake-EPは、最大24~32物理コア程度になる物です(現時点では28コアとしてアナウンスされている)。

 過去の経緯から、Skylake-EPは恐らく3種類のダイが設計され、最小規模(リングバスが環状線内回り外回りだけ)のダイでさえも12~16コア(恐らく7コアx2列=14コア)で中規模コアが18~24コア(恐らく7コアx3列=21コア)と思われます。

 これを元にECCなどの機能をDisableしたモデルであるSkylake-Eが恐らく出荷されるのではないかと思うのですが、そうすると劣化品でも10C/20T~12C/24Tくらいの製品になってしまい、かつ、メモリが6ch-DDR4です。逆に言えば、これだけのコア数が無ければ6chは無駄になります。
 この規模は過去のコンシューマブランドとは一線を画す物ですから、XEONではないブランドで出荷するのであれば、i7 Extreme では少々違和感がある気がするので Core i9 ブランド計画が復活して更に上位の i9 Extreme が12C/24T~16C/32Tになるのではないか?と思うのです。

 加えて、初期のSkylakeではデコーダやパイプラインを増量強化したまま性能を据え置きにしているのですが、これは歩留まり対策と見られていながら、実はSkylake-EPで機能させる前段階の実験投入ではないか?、かつ、スレッドを3倍~4倍に増やし、つまり16C/48Tや16C/64T等、最大で28C/112Tや30C/120T規模のダイに成るのではないか?という気がするのです。根拠と言える程では無いですが、既にWindows7 Proの最大論理プロセッサ数は256ですし、Windows8 Proの最大論理プロセッサ数は640に拡張されていますので、MS側の予測として2020年頃までには200論理コアくらいに到達する可能性が予測されていた事になり、つまり、そういった種類のアルファテストやベータテスト版のES品がIntelからMSに提供されていた可能性などが推測されるからです。もちろん、これはXEON Phiである可能性も高いのですが、もしくはAMD Zenの登場をひかえて温存している部分もあるかもしれません。

 と言う事で、来年以降に登場する物理10コア/論理20コアを超える製品が、市場にどの様に流れ、活用されてゆくのか注目してゆきたいと思います。
スポンサーサイト

Bulldozerは妥当な性能、Zenで40%向上するIPCは見掛け上のパイプライン本数が増えた事に起因するのでは?


 Y-cruncherは逸早く最新のアーキテクチャに対応したチューニングを施す任意精度演算ベンチマークと言えると思いますが、同時にIA32(x86)の基本命令だけで動作するバイナリが有るのも特徴です。しかし問題点もあり、実行の都度、タイムが結構変わる事です。その為、幾度か計測して最速値を採用する事にしました。メモリの速度にかなり依存しますので、メモリの設定(インターリーブやECCなど)を変更すると速度が結構変わります。

 表を見ると判りますが、Bulldozer(表はBulldozerとPiledriver)は他のアーキテクチャと比較して妥当な性能が出ていると思います(基本的にクロックはTB/TCをOFFにしてIntelは3GHz、AMDは2.8GHzに固定して計測しています)。が、売り方として1コア2スレッドを2コア1モジュールとしてアピールした事がマーケティング上の敗因ではないか?という気がするのです。これがもしIntelであれば2コア1モジュールとしてマーケティングしても50%以上のシェアは取れたのではないか?と思います(それがブランド力という見えない力だと思うのです)。もちろん、それを何年も続けたらさすがにシェアは落ちてゆくとは思いますが・・・

※当初掲載していたものは17号機をIvyBridge-EPとして記載していましたが、SandyBridge-EPにて計測しています(但しコア数、クロック、LLC容量などは同一です。IvyBridgeに交換予定でしたが実際には交換しませんでした)。また20号機をSteamrollerとして記載していましたが誤記ですので改定しました。VIA QuadCoreの物理構成はシングルCPUの4コア品ですが、論理構成はシングルコアCPUのマルチソケット構成(FSB共有型)で、OSインストール初期には1コア4ソケット(又は1コア2ソケット)として認識されます。

y-cruncher-x64-A.png
設定の見直し等で、表の値を若干修正しました@2016/1/20

y-cruncher-x86-C.png

 表中のメモリ速度は Memtest86 4.3 でメモリチェック中に測定された物ですが、正確に測定出来ているか?と言えばSIMDを使った測定はしていないと思いますので、実際の速度と乖離している可能性大です。

 表を見ていると1モジュール2コアで8本あるパイプラインを1コアとして全て使える設定がもしあればZenで言われている40%のIPC向上が可能ではないか?と思いますし、遅すぎる(メインメモリより遅い=クロック耐性を高めた)LLCを通常速度に戻して3~4GHz前後をターゲットにすれば概ねZenコアなんじゃ?とさえ思ってしまいます。なぜなら、1モジュール1コア4パイプラインの結果に対して1モジュール2コア8パイプラインの結果が、まさに40%ほど速いからです。もちろんZen世代ではAVX2やSMT等の差分対応があるとは思いますが、全く新規といいつつも実態は上記の小改良を積重ねた物をシュリンクしたダイ上に詰め込んだのでは?という気がしているのです。(そんな気がするだけですが)

 アーキテクトが替わった場合、基本設計も変わる事がありますが、全て刷新してしまうと物凄い時間が掛りますから開発期間との関係で現実的にはかなりの部分を流用しているのではないか?と思うのです。

 表の数値は、Broadwell-EPの推測値(Haswell-Eの結果を元に推測)を除きBIOS/UEFIにて高精度タイマ( High Precision Event Timer / 旧 Multimedia Timer )をEnableにした状態のWindows7環境下で可能ならNode-Interleaveを有効にして3回実行した時の最速の結果を少数以下四捨五入して記載しています。但し、1GHz以下のCPUに付いては物凄く時間が掛るので1回しか実行していませんし、それらは高精度タイマを搭載していません。空欄は追々追記します。

 視点を変えてパイプライン本数から見ると、K10では1コア6本でしたから、Bulldozerは1モジュールでは6から8に増えたのですが、1スレッドでは6から4に減ったのでシングルスレッド性能が低下したのも当然です。しかしBulldozerと同規模の8本のパイプラインで1コア2スレッドをSMT実装出来ていたらSMT-OFF状態のシングルスレッド性能は向上する訳ですからシェア逆転も有ったのではないか?という気がします。もちろんその場合はコア数ではIntelに負けている訳ですが、AMDという存在に期待される製品はこういった物だと思うのです。

 ここまで書いた内容は、Zenでは2コアで浮動小数ユニットを共有しない事とも整合性がとれています。(しかし2スレッドでは共有する)

 他にZenで何か新しいイノベーションがあるとすれば3D化をどこまでするか?だと思います。HBM又はHBM2をAPUに内蔵する事は概ね確定事項だと思いますがhUMAの事があるので、必然的にHBMはGPU専用メモリではなく、そのままメインメモリの延長線上にあると思うのです。では利用される事が概ね確定している外付けのDDR4とHBMの関係がどうなるのか?ですが。L3の代わりにHBMを使い、L3面積分をGPUその他に割り当てるか、L3ではなく物理メモリのうちGPUが使うアドレスを中心としてHBMが下位アドレスに利用され、上位アドレスに積み上げる様にしてDDR4を追加し主にメモリマップドファイル向けにI/Oキャッシュ的な位置づけかもしれませんね。


16コアの Zen APU は MacPRO 用ではないか?

 登場が噂されている 16コア/32スレッド版の AMD Zen APU の用途を考えてみると、MacPRO用のカスタム品ではないか?という気がしてならないのです。AMDはコンシューマゲーム機の多くにカスタム品のAPUを搭載しているので、そのWS版とも言える対応だと考えるとHPC向けの32コア/64スレッド版ハイエンドAPUを半分に割った様なカスタム品をMacPROで映像や巨大画像の編集に使う前提で考えると非常に納得のいくスペックに思えるのです。

 Appleは数世代前からQuadroの採用を辞めてFireProに切り替えましたが、その延長線上に Zen + GCN の APU を持ってくるのは自然な流れでもあると思うのです。

 他に、この性能を欲する分野が存在しない(ゲームサーバでAPUなら有り得るかもしれないが・・・)事も、そう考える理由でもありますが・・・他にどんな用途が有るでしょうか?Adobe製品や3D-CAD分野に突然Zenを持ってこれるパワーが有るのはAppleだけだと思う事も理由の一つです。

 過去にはIntelがCore2世代の3GHz XEONをMacPRO専用カスタム品として出荷した事がありましたが、それと似た様に、またApple初かもしれないAMD CPUの採用など、新しくて衝撃的なデビューを好む真性新生MacPROファンには待望の製品に成るとも思うのです。それ以外にWS用として考えると衝撃的なハイエンドCPUが無いとも言えますが・・・

CPU と GPU の統合の次にあるもの

たぶん、Haswellで省電力&低発熱を最大コンセプトにしたのは、もちろんモバイル向けというかARMに対抗する意図が大きいだろうと思いますが、それだけではなく、同時にDRAMとCPUの密結合には低発熱が前提条件という側面もあるのだと思います。

2年前のブログに書きましたが、いつかはメインメモリがCPUに統合され、それは2020年頃までには達成されると思います。

理由は単純明快、ノースブリッジに接続されていたデバイス、つまりCPUと近距離かつ高速につなぎたいデバイスはGPUとメモリで、既にノースブリッジとGPUまでは統合されましたから、順番的に次はメインメモリが来て当然です。

当初はDRAMかもしれませんが追々不揮発RAMに置き換える事でストレージまでもCPUに統合し、次のステップでは最後に残ったサウスブリッジと、そこにぶら下がった各種デバイス群もいよいよ統合されるだろうと思います。

統合されずに最後まで残るものはバッテリ、表示デバイス、入力デバイス、通信デバイス、このくらいでしょうかね・・・

通信系もEthernetコントローラはCPUに内蔵されると思いますが、無線系のWiFiや携帯電波などは電波法の関係で統合が難しい面が有りそうです。

バッテリはスーパーキャパシタの様な物にしてCPUパッケージに封入されワイヤレス給電で稼動する可能性は有ると思います。

表示デバイスと、入力デバイスは、どうでしょうね・・・神経に直結出来る様に成るまでは統合出来ないでしょうけど・・・

伸び悩むXEONの演算性能

IvyBridge-EP の12コア最上位品がTB-ALL 3.0GHzでAVXをフル活用した場合のピーク性能は
 単精度:12コア × 16演算機 × 3.0GHz = 576GFLOPS
 倍精度:12コア × 8演算機 × 3.0GHz = 288GFLOPS

IntelのCPUは演算機がLINPACK向けに設計されています。これはLINPACKが大量需要家の性能指標になっているので商業的には正解な面がありますけど、実務的に発生する任意精度演算や順次演算向けに最適化された設計ではないですし、多数の仮想マシンが同時に演算する様にも設計されてはいません。もちろんそれらをソフト的には実現可能だけれどもハードがそうは設計されてないので、実際にはピーク性能からは程遠い性能になってしまいます。簡単に言えばXEONのピーク性能は12×16=192それ以上に細分化して並列化できる演算に限った性能指標だからで、もうすでに超並列ベクトル演算機と言っても良い状態です。

続いてHaswell-EPを見てみましょう。

Haswell-EP の18コア品が定格2.3GHzでAVX2を利用した場合にどうなるか?
 単精度:18コア × 16演算機 × 2.3GHz = 662GFLOPS
 倍精度:18コア × 8演算機 × 2.3GHz = 331GFLOPS

この様に、僅かに1割増し程度の性能向上しか達成していない様にも見えます。
整数演算機が128Bitから倍の256Bitに成ったので整数の“並列演算”に限っては倍速化していますが、その他についてはわずかな性能向上しか達成できていない様に思われますし、次の世代ではもうこの手法も使えないでしょう。

こんな簡単な事はIntelの技術者自身判っている事だと思いますので、それを見越してだと思うのですがいくつかの新機能が盛り込まれています。

1:AVX命令を利用する際の特殊なTB(ターボブースト)モード
2:DC-DCコンバータをCPUに内蔵(その結果TDPが10W程度増えた)
3:コア集団を論理的に分割し、キャッシュコヒーレンシの負荷低減
4:仮想化の補助機能追加

DC-DCコンバータをCPUに内蔵した理由は、CPUコア全体の温度(つまりTDP)を維持しながら必要な回路だけ局所的に電圧を盛る為の様ですが、しかし、こんな小細工をしないと性能が上げられない所まで来ちゃったという見かたも出来そうです。これによりAVX2の演算回路をピンポイントで集中的に利用するLINPACKの様なベンチマークのスコアを2.3GHz定格では出せない様な高スコアへと引き上げているのだと思われます。

色々と驚くような新技術を投入している一方で、しかしながら、SuperPIの様に、もう何年も処理速度がほとんど向上しないものもあります。ソフト側が最適化してないのが悪いという意見が出そうですが、これはひとえにXEONの演算性能は固定精度の整数や浮動小数のベクトル演算機としての性能向上に重点を置いているからでもあり、またそうでなければ技術的にも既に上限に達しているのかもしれません。クロック以外の方法で、かつ並列化しないで速度を向上する手法は本当に無いのでしょうか?

任意精度演算や順次演算の性能向上は長期に渡り置き去りにされ、多数の仮想マシンを動かす様なクラウドインフラではARMグリッドの様なものに置き換わってゆく運命なのかもしれませんね・・・

そういえば、LLCが45MBに増えていますが、これ、SuperPIの419万桁に必要な32MBのメモリ容量がすっぽり収まりますね。リングバスを跨るのは仕方ないとしても少しはみ出しちゃう30MBのIvyBridge-EPと比べてみたいです。というかメインメモリをLLC並みの高速SRAMにする様なアプローチって駄目なんだろうか???恐らく技術的には可能でも商業的に大人の事情で実現しないのでしょうね・・・256MBのLLCがあればSuperPIは全ての桁をCPU内部のみで演算完結出来るのですが、はたしてそこまでの容量が達成出来る日は来るのだろうか?

例えば↓の写真はHaswell-EP 18コア品のものです。
Haswell-EP-18Core.jpg
1コアあたり2.5MBのLLCが付いておりコアとLLCの面積比で概ね1:1.5程度です。
これを乱暴に同一面積のダイ上に2コア残して他のコアをLLCに置き換えてみますと、
(18コア - 2コア) × 1.5倍面積 × 2.5MB + 45MB = 合計105MB
更に2コアに減らした事で不要になるリングバスやバッファスイッチが占める面積もLLCに置き換えれば面積的には同一サイズのダイ上に128MBくらいはLLCを搭載出来そうです。

実用的な最初のWindowsはWindows2000だと筆者は思うのですが、Windows2000はメインメモリ128MBでも普通に動きます。WindowsXPさえも動作要件として128MBのメインメモリとなっています。とは言えメインメモリ128MBだとスワップが必須ですが、スワップにDRAMを使えばよいと思うのです。Haswell-EPの物理メモリ上限は1.5TB768GB(Dual-Socketなら1.5TB)です。メインメモリ128MB(LLC)+ストレージ768GB(Quad-Channel DDR4-NVDIMM w/ECC)こんな構成のPCが有ったら、もの凄く快適なんじゃないか?と思うのは筆者だけでしょうか?
プロフィール

DualSocketTheWorld

Author:DualSocketTheWorld
自作を始めて20台目くらいになりますが、最初からデュアルソケット限定(始めた当時はデュアルスロット)で自作しており、近年になってAMD K6を試したくなりSocket7でK6-2+のシングル構成で組んだのがシングル初です。

シングルマザー(含:シングルソケットマルチコア)や4ソケット以上の自作は基本的にしませんし、メーカー製PCの改造も基本的にはしません(ノートPCのSSD化くらいはしますが・・・)

基本路線はワークステーションと呼ばれる分野での自作で、OSもWindows系であればProfesionalが主な対象に成ります。

ゲーマーの様なOverClockは行わず、WS路線としてハイエンドCPUとハイエンドGPUの組み合わせで定格或いはDownClockで発熱を抑えつつ、その時のアーキテクチャに置いて爆速かつ静音を目指し、30年以上の長期に渡り稼動状態をキープする事を目指します。

※基本的にリンクフリーです。どこでも自由にどうぞ。

※画像は時々変ります。

※お決まりの文章ですが、改造は個人の責任で行ってください。ここに記載された情報は間違いを含んでいる可能性が有り、それを元に製作や改造などをして失敗しても筆者は一切責任持てませんので悪しからず。

筆者略歴:
小学生時代にゴミ捨て場で拾ったジャンクテレビ数台を分解して部品を取り出し真空管アンプを自作、中学生時代にPC8801mkⅡsrでZ80アセンブラを始める。社会人になって初のプログラムは弾道計算、後に医療系・金融系プログラマ~SEを経て100~200人規模プロジェクトのジェネラルマネジャを数年経験、独立して起業。現在は不動産所得で半引退生活。
(人物特定を避ける目的で一部経歴を変更しています)

最新記事
最新コメント
最新トラックバック
月別アーカイブ
カテゴリ
アクセスカウンター
検索フォーム
RSSリンクの表示
リンク
ブロとも申請フォーム

この人とブロともになる

QRコード
QR