【レビュー】「Radeon R9 Fury/Fury X」徹底検証 - HBMを搭載した次世代GPUの"謎"に迫る (21) 中間考察 - なぜFury/Fury Xの性能が伸びないのか?

ニュース
トップ

【レビュー】

「Radeon R9 Fury/Fury X」徹底検証 - HBMを搭載した次世代GPUの"謎"に迫る

21 中間考察 - なぜFury/Fury Xの性能が伸びないのか?

大原雄介  [2015/07/21]

21/22

中間考察 - なぜFury/Fury Xの性能が伸びないのか?

さて、ここまでの結果を基に、筆者なりにR9 Fury/Fury Xの性能が伸びない理由を考えてみたい。理由は大きく分けて2つある。

1つ目は、HBMのLatencyがGDDR5よりだいぶ大きい(20~50cycleほど余分に掛かる)ことだ。ここでいうLatencyは、メモリコントローラがリクエストを出してから、それをメモリチップが受け取って結果を返すまでの時間である。

DDR3などで使われるCL9-9-9-24といった表記に従えば、最初の9にあたる部分がGDDR5よりだいぶ大きい。この結果、煩雑にメモリアクセスの要求が発生する場合には、どんどんLatencyが増えることになる。

2つ目はMemory Granularityの問題である。Granularityは日本語だと「粒度」と訳されるが、要するに1回でアクセスするデータの単位である。例えばDDR3チップの場合、チップそのものは8bit幅でも、Prefetchは8nなので、Granularityは16×8=128bit=8Bytesとなる。DIMMの場合はこれが8個載って64bit幅になっているので、1回メモリアクセスの要求を行うと、連続した64Bytes(8Bytes×8)が出てくる形だ。

さて、GDDDR5の場合、チップのバス幅は32bit、Prefetchは8nなのでGranularityは32Bytesとなる。実際にはR9 290Xの場合、2chのGDDR5が1つのメモリコントローラから出ているから、Granularityは64Bytesとなる。

対してHBMの場合、Prefetchは2nなのだがバス幅が1024bitもあるため、Granularityは256Bytesとなる。つまり1回アクセス要求を出すと、256Bytes分がゴソっと転送されてくることになるのだ。これは小さい量のメモリを細かくアクセスするようなケースでは著しく不利になる。

この2つが主要因であるが、これに関しては回避策がある。それは大容量のキャッシュを挟むことだ。例えば2つ目の要因について、メモリアドレスA・B・Cに連続してアクセスを行うようなケースを想定した場合、それぞれが64Bytesの大きさならGDDR5だと1回ずつアクセスすれば済み、その結果はキャッシュに格納される。

ところがHBMだと、A・B・Cをそれぞれ先頭とする256Bytesの塊がやってくるので、キャッシュには本来必要となる量の4倍のデータがいきなり入る形になる。この転送時間が無駄という話もさることながら、こうした結果として早いタイミングでキャッシュが使われてしまい、無駄にキャッシュミスが多発しやすくなる。

ではどうするか? といえば、その分キャッシュサイズを大きくすれば良い。端的にいえば、L2を4MB(Render Outputあたり256KB)まで増やしていれば、理論上キャッシュミスの比率はGDDR5の場合と同等に収められる。

ところが今回、Fijiコアではこうした対策が一切採用されていない。4MBとはいわないまでも2MBくらいのL3をHBMとの間に挟んでいれば、恐らくもう少しマシな結果になったと思うのだが、これは当然ダイサイズが増えることになるわけで、それを嫌った結果であろう。

もっと根本的なことをいえば、現在のGCNのアーキテクチャがそもそも64Bytes程度のGranularityを前提に設計されているので、HBM世代ではこのGranularityをもっと大きくすれば効率はさらに改善されるはずだ。しかし、これは根本的な設計変更になってしまうので、Fijiの世代では手をつけなかったのだろう。

こう考えると、メモリアクセスの単位が小さくなりがちな1280×720pixelあたりでは性能が低く、よりアクセスの単位が大きくなりそうな4Kの解像度でどんどん効率がよくなるのは理にかなった振る舞いである。あるいは倍精度の浮動小数点演算を行った場合のみ急に性能が落ちるのも、やはりこの延長で考えることができる。

では、この問題がいつ解決されるか? であるが、L2の大容量化、あるいはL3の搭載については、ダイサイズの肥大化を防ぎたいという経済的な要因が解決されればよいので、プロセスを微細化すれば比較的簡単に実装できるだろう。

一方、根本的な解決には、HBMに合わせてGCNの作り直しが必要だが、これは早くても14/16nmプロセスを採用した世代になるのではないかと思われる。

21/22

インデックス

目次
(1) 水冷「Fury X」と空冷「Fury」がそろい踏み
(2) 空冷クーラーを搭載したRadeon R9 Fury
(3) テスト環境の紹介
(4) ベンチマーク結果「3DMark」
(5) ベンチマーク結果「UNiGiNE Valley 1.0」
(6) ベンチマーク結果「Aliens vs Predator DirectX 11 Benchmark」
(7) ベンチマーク結果「Battlefield 4」
(8) ベンチマーク結果「BioShock Infinite」
(9) ベンチマーク結果「DIRT Rally」
(10) ベンチマーク結果「F1 2014」
(11) ベンチマーク結果「ファイナルファンタジーXIV: 蒼天のイシュガルド ベンチマーク」
(12) ベンチマーク結果「Grand Theft Auto V」
(13) ベンチマーク結果「Hitman Absolution」
(14) ベンチマーク結果「Metro redux」
(15) ベンチマーク結果「S.T.A.L.K.E.R Call Of Pripyat(」
(16) ベンチマーク結果「Star Swarm Stress Test」
(17) ベンチマーク結果「Thief」
(18) ベンチマーク結果「Basemark CL v1.1」
(19) ベンチマーク結果「Sandra 2015 SP1b」その1
(20) ベンチマーク結果「Sandra 2015 SP1b」その2
(21) 中間考察 - なぜFury/Fury Xの性能が伸びないのか?
(22) 消費電力測定とまとめ

もっと見る

関連キーワード

特別企画 [PR]

一覧

    人気記事

    一覧

    新着記事

    『ちびまる子ちゃん』ラッピング電車7/27より1年間運行、映画コラボも企画中
    [20:00 7/21] ホビー
    私は必ずもう一度あなたと出会う『SAOII』アスナがALOver.でfigmaに参戦
    [20:00 7/21] ホビー
    洗い物いらず! ビニール袋でサクサクのショートブレッドを作ってみた
    [20:00 7/21] 生活ノウハウ
    『モンスト』アニメでHIKAKIN&マックスむらいの声優デビューが急遽決定!?
    [20:00 7/21] ホビー
    【レポート】今年もレノボが由比ガ浜に海の家「レノボ・ハウス」オープン - ITを使ってひと味違うビーチスタイルを体験
    [19:59 7/21] パソコン

    特別企画 [PR]

    一覧