10
AMDがVegaアーキテクチャを発表:200以上の新機能を搭載、2017年前半にリリース予定

AMD は昨年末、報道関係者やパートナーを集め、第 1 四半期のデスクトップ向け Ryzen、今年後半にリリースされる FreeSync 2、新しいサーバーおよびラップトップ プラットフォーム、機械学習への大きな取り組み、そしてもちろん、第 3 世代 Graphics Core Next (GCN) 設計の待望の後継である Vega などを含む、忙しい 2017 年のロードマップについて語りました。

早速ですが、AMD のハイエンド Vega GPU アーキテクチャをベースにした製品はまだ準備ができていませんが、今から 6 月末までの間に登場する予定です。

一方、AMDはこの機会を最大限に活用しようと躍起になっている。同社が公開を希望する初期情報に加え、Vegaの発売が近づくにつれて、より低レベルの技術発表会を開催するとの約束もある。それでは(できる限り)詳しく見ていこう。

Radeon Technologies Groupのシニアバイスプレジデント兼チーフアーキテクトであるラジャ・コドゥリ氏は、AMDのテックサミットのステージに立ち、生まれたばかりのVegaベースのGPUを興奮気味に掲げ、Vegaの開発に投入された200以上の変更点を強調しました。これはGCNの改訂版と言えるかもしれませんが、AMDは明らかにこれを斬新な試みとして世に知ってもらいたいと考えています。なぜそう思わないのでしょうか?DirectX 12ベースのゲームが頻繁に登場するようになるにつれ、このアーキテクチャのこれまで十分に活用されていなかった強みがより顕著になってきています。DX11ではNvidiaが有利だった対戦が、DX12では互角、あるいは逆転することが多くなっています。しかし、これだけの変更点があるにもかかわらず、コドゥリ氏はプレゼンテーションをわずか4つの主要ポイントに絞り込みました。

HBM2に基づくスケーラブルなメモリアーキテクチャ

Vegaの最初のアーキテクチャアップグレードの導入として、Koduri氏はデスクトップPCへのゲームインストールサイズの急増、ペタバイトクラスのプロフェッショナル向けグラフィックスワークロード、そして機械学習に適用可能なエクサバイトを超えるトレーニングセットのサイズを示すスライドを発表しました。また、コンピューティング性能とメモリ容量の相関関係も示しました。

AMDとNVIDIAは共に、ホストプロセッサのオーバーヘッドを削減し、GPUへのスループットを最大化し、既存のボトルネック(特に膨大なデータセットを扱う際に発生するボトルネック)を回避する方法に取り組んでいます。Radeon Pro SSGの目的は、比較的コスト効率の高い方法でGPUの近くにより多くの容量を配置することだったようです。そしてVegaは、より柔軟なメモリ階層によって、このミッションをさらに一歩進めているようです。

VegaがHBM 2を採用していることは周知の事実です。この情報は2016年までのロードマップにも記載されていました。しかし、AMDがこのオンパッケージメモリプール(以前はフレームバッファと呼ばれていました)を高帯域幅キャッシュと呼ぶ意向であることが分かりました。お分かりですか?HBM2は今や高帯域幅キャッシュと同じ意味になります。なぜでしょう?AMDがそう言っているからです。

Tom's Hardware の最高のニュースと詳細なレビューをあなたの受信箱に直接お届けします。

ええ、本当にそうでしょうか?なぜでしょうか?コーポレートフェロー兼製品CTOのジョー・マクリ氏によると、HBMのビジョンはGPUに最も近い最高性能のメモリとなることでした。しかし、彼はシステムメモリとストレージもグラフィックスプロセッサで利用できるようにしたいと考えていました。このより広範なメモリ階層構造を考えると、HBM2を低速なテクノロジーに比べて帯域幅が広いキャッシュとして捉えるのは理にかなっています。しかし、曖昧さを避けるために、ここではHBM2をそのままHBM2と呼ぶことにします。

結局のところ、HBM2自体が大きな前進です。第1世代HBMと比較して、垂直スタックあたりの容量が最大8倍に増加したことで、Radeon R9 Fury Xの寿命について愛好家が抱いていた疑問が解消されます。さらに、ピンあたりの帯域幅が倍増したことで、潜在的なスループットが大幅に向上します。AMDが、Nvidiaが昨年Tesla P100アクセラレータで導入したのと同じ4-hi(HBMダイ4個)の700MHz HBM2スタックを採用すれば、16GBカードで最大720GB/秒の速度を実現できます。そこからさらに容量と帯域幅を拡大していく余地があります。

Vegaのメモリサブシステムに関して、ゲーマーに最も大きな影響を与えると予想される変更点はこれです。しかし、AMDは高帯域幅キャッシュコントローラ(もはや単なるメモリコントローラではありません)にも、Raja氏がプレゼンテーションの冒頭で言及した大規模データセット向けに、512TBという巨大な仮想アドレス空間へのアクセスを提供しています。明らかに、この議論とAMDが12月に発表したRadeon Instinctシリーズには一部重複する部分があります。

このプレゼンテーションでは、Vegaアーキテクチャのより広範なメモリ階層がどのように利用されるのかという多くの疑問が残りましたが、AMDのシニアプロダクトマーケティングマネージャーであるスコット・ワッソン氏が、高帯域幅キャッシュコントローラの機能のいくつかを説明して、議論をより明確にしてくれました。ワッソン氏によると、Vegaは複数のプログラム可能な手法を使用して、メモリページをきめ細かく移動できます。データを取り込む要求を受け取り、GPUが別のスレッドに切り替えてストールすることなく作業を続行する間に、DMA転送を介してデータを取得できます。コントローラは要求に応じてデータを取得するだけでなく、予測的にデータを戻すこともできます。HBMの情報は、インクルーシブキャッシュのようにシステムメモリに複製することも、HBCCがスペースを節約するために1つのコピーだけを保持することもできます。これらはすべてハードウェアで管理されるため、高速でオーバーヘッドが低いことが期待されます。

新しいプログラマブルジオメトリパイプライン

Hawaii GPU (Radeon R9 290X) は、Tahiti (Radeon HD 7970) と比べていくつかの注目すべき改良点が盛り込まれており、その一つが、ジオメトリエンジンを2基から4基に増強した、より強力なフロントエンドです。より新しいFiji GPU (Radeon R9 Fury X) も、同じく4ウェイシェーダーエンジン構成を維持しています。しかし、AMDの第3世代GCNアーキテクチャの優れた機能も搭載しているため、テッセレーションのスループットも向上しています。さらに最近では、Ellesmere GPU (Radeon RX 480) が、フィルタリングアルゴリズム/プリミティブ破棄アクセラレータなど、4エンジン構成の性能をさらに引き出すためのいくつかの技術を実装しました。

AMDのバックアップスライドによると、Vegaのピークジオメトリスループットはクロックあたり11ポリゴンで、前世代の4ポリゴンから向上し、最大2.75倍の高速化を実現しています。この仕様は、ジオメトリパイプラインに追加された新しいプリミティブシェーダステージによって実現されています。このプリミティブシェーダは、固定機能ハードウェアではなく、シェーダアレイを使用して処理を行います。

AMDコーポレートフェローのマイク・マンター氏は、プリミティブシェーダーは軽量でプログラム可能であり、プリミティブを高速に破棄できるという点で、ジオメトリ処理におけるコンピュートシェーダーと同様のアクセス性を持つと説明しました。AMDのワッソン氏はさらに、プリミティブシェーダーの機能には、DirectXの頂点シェーダー、ハルシェーダー、ドメインシェーダー、ジオメトリシェーダーの各ステージで実行できる機能の多くが含まれており、そのコンテキストと処理の完了順序に関してはより柔軟性が高いと説明しました。

フロントエンドは、プログラマブルハードウェア間の負荷分散を担う、改良されたワークグループディストリビュータの恩恵も受けています。AMDによると、これは効率性を重視するコンソール開発者との協力から生まれたもので、その取り組みは今後PCゲーマーにも恩恵をもたらすとのことです。

Vega NCU(次世代コンピューティングユニット)

Nvidiaは、多数のPascalベースGPUを活用することで、セグメンテーションを非常に精密に行っています。最大かつ最も高価なGP100プロセッサは、FP32のピークレートが10.6TFLOPS(ピークGPUブースト周波数使用時)です。FP64コアを1:2の比率で搭載することで倍精度レートは5.3TFLOPSとなり、半精度演算/ストレージのサポートにより最大21.2TFLOPSの性能を実現します。よりコンシューマー向けのGP102およびGP104プロセッサは、当然のことながらFP32のフルパフォーマンスを提供しますが、FP64とFP16のレートは意図的にハンディキャップされているため、科学研究やトレーニングのデータセットには安価なカードを使用することができません。

一方、AMDは、誰に対してもより多くのものを提供しようとしているようだ。64個のIEEE 754-2008準拠シェーダーを備えたCompute Unit構成要素は存続しているが、新しいデータ型のサポートを反映して、NCU(Next-Generation Compute Unit)と呼ばれるようになった。もちろん、64個のシェーダーと1サイクルあたり最大2回の浮動小数点演算で、クロックあたり最大128回の32ビット演算が可能になる。パックFP16演算を使用すると、この数値はクロックあたり256回の16ビット演算となる。AMDは、クロックあたり最大512回の8ビット演算が可能だとさえ主張している。倍精度となると話は別で、AMDはターゲット市場に基づいてFP64のレートを設定していることを認めることに抵抗がないようだ。

この柔軟性の原動力は、コンソール業界から生まれた可能性が高いでしょう。ソニーのPlayStation 4 Proは、半精度演算で最大8.4 TFLOPS(32ビット演算の2倍の性能)を実現できることは周知の事実です。あるいは、AMDが機械学習分野に意欲を燃やし、近日発売予定のRadeon Instinct MI25のような製品でNVIDIAの市場シェアを奪おうとしていることが、この柔軟性の原動力となったのかもしれません。いずれにせよ、コンソール、データセンター、そしてPCゲーマーは皆、恩恵を受けるでしょう。

AMD は、NCU がより高いクロック レートに最適化されていると主張しましたが、これは特に驚くべきことではありません。ただし、計算ユニットをビジー状態に保つために、より大きな命令バッファーも実装しました。

次世代ピクセルエンジン

AMDがVegaの初期情報として公開した4つ目のトピックは、実は2部構成です。まずは、従来のラスタライズハードウェアに接続された描画ストリームのビニングラスタライザです。Koduri氏によると、これによりパフォーマンスが向上し、消費電力も削減されます。高レベルでは、オンチップのビンキャッシュにより、ラスタライザは重複するプリミティブのデータを一度だけフェッチし、最終シーンでは表示されないピクセルをカリングすることで、ピクセルのシェーディングを一度だけ行うことができます。

第二に、AMDはレンダリングバックエンドをL2のクライアントにすることで、キャッシュ階層を根本的に変更しています。Vega以前のアーキテクチャでは、AMDのピクセルおよびテクスチャメモリアクセスは非コヒーレントであり、各パイプラインステージが同期するための共有ポイントがありませんでした。テクスチャベイク処理の例では、シーンを後で再利用するためにテクスチャにレンダリングし、その後シェーダーアレイを介して再度アクセスするため、データはオフダイメモリを経由して引き戻される必要がありました。現在のアーキテクチャではコヒーレントアクセスが可能になり、AMDによると、これは特に遅延シェーディングを使用するアプリケーションのパフォーマンスを向上させるとのことです。

Koduri氏が発表した内容の多くは、ソフトウェア側での開発作業を必要とするものでしたが、それでも彼はプレゼンテーションの最後に、初期のVegaボードでDoomを4K解像度で動作させ、最も負荷の高いディテール設定で70fps以上を稼ぐデモを示しました。Titan Xのレビューで確認した数値に基づくと、これはGTX 1080とTitan Xの中間くらいの性能です。

AMDのドライバーチームがVegaの開発に着手するにつれて、パフォーマンス数値の向上が期待されます。同社がVegaの全容を明かすのに、あと6ヶ月もかからないことを願っています。その頃には、主要な競合製品は発売から1年以上経っているでしょう。

クリス・アンジェリーニは、Tom's Hardware USの名誉編集者です。ハードウェアレビューの編集を担当し、注目度の高いCPUやGPUの発表を取り上げています。