キャッシュと帯域を増やすことで
処理の高速化を実現
次がキャッシュシステムである。新たに1次キャッシュが追加されたほか、帯域の強化やレイテンシーの削除などが主な改良点である。
まずキャッシュの説明の前にWGP(Work Group Processor)について定義しておく。先ほどのCUの構成であるが、RDNAでは2つのCUで共有される形でシェーダーの命令キャッシュやScalar Data Cache/Local Data Shareなどが用意される。このCU×2+共有キャッシュの塊がWGPと定義される。
これを念頭に、1次キャッシュの構成を示したのが下の画像である。1次キャッシュには5つのWGP(=10CU)と、RB(Render Backend)が直接接続されることになっている。
実は1次キャッシュの目的は、このRBをフルに生かすための工夫ともいえる。レンダーバックエンドは描画処理の最終段階の作業を担うもので、複数のスレッドをブン回して得られた最終的な描画データを、フレームバッファにピクセル単位で出力する作業を担うことになる。
普通であれば、RBはそのまま2次キャッシュ経由でメモリーに書き出すのが効率が良いわけだが、あえてここに1次キャッシュを挟んだ理由は、Deferred Rendering(遅延レンダリング)の技法が多用されるようになってきたことに起因する。
たとえばLightingを例に取れば、従来型のレンダリング(Forward Rendering)ではオブジェクトに対してLightingの計算を行ない、その結果をラスタライズして出力を得るのに対し、Deferred Renderingでは先にラスタライズを済ませてしまい、その後でラスタライズしたデータに対して必要な箇所だけLightingを施す、という手順になる。
この方式はシェーダーの負荷が軽くなるというメリットがある半面、いったんメモリーに書き出したデータを読み出して処理し、改めて書き戻すことになるので、メモリー帯域に大きな負荷がかかる。
GCNの場合はいったんラスタライズされたデータが2次キャッシュに格納され、RBは2次キャッシュから読み出して処理し、2次キャッシュに書き戻しをし……、という形で煩雑に2次キャッシュアクセスが発生していたが、メモリーより高速とは言え2次キャッシュもそれほど高速ではない。
そこでRDNAではWGP/RBと2次キャッシュの間に1次キャッシュを挟み、RBは1次キャッシュとの間で読み出し/書き戻しを行わせることで処理の高速化を実現した形になる。
それだけでなく、1次キャッシュは0次キャッシュとも広帯域で接続することで、LDS(Local Data Share)の帯域を従来比2倍に増やしたとしており、RB関連以外の処理の高速化にも貢献している。
また、RB⇔1次キャッシュ⇔2次キャッシュ⇔メモリーのデータ転送に関してはデータ圧縮をかけており、これにより効率的に帯域を利用できるとする。
この連載の記事
-
第802回
PC
16年間に渡り不可欠な存在であったISA Bus 消え去ったI/F史 -
第801回
PC
光インターコネクトで信号伝送の高速化を狙うインテル Hot Chips 2024で注目を浴びたオモシロCPU -
第800回
PC
プロセッサーから直接イーサネット信号を出せるBroadcomのCPO Hot Chips 2024で注目を浴びたオモシロCPU -
第799回
PC
世界最速に躍り出たスパコンEl Capitanはどうやって性能を改善したのか? 周波数は変えずにあるものを落とす -
第798回
PC
日本が開発したAIプロセッサーMN-Core 2 Hot Chips 2024で注目を浴びたオモシロCPU -
第797回
PC
わずか2年で完成させた韓国FuriosaAIのAIアクセラレーターRNGD Hot Chips 2024で注目を浴びたオモシロCPU -
第796回
PC
Metaが自社開発したAI推論用アクセラレーターMTIA v2 Hot Chips 2024で注目を浴びたオモシロCPU -
第795回
デジタル
AI性能を引き上げるInstinct MI325XとPensando Salina 400/Pollara 400がサーバーにインパクトをもたらす AMD CPUロードマップ -
第794回
デジタル
第5世代EPYCはMRDIMMをサポートしている? AMD CPUロードマップ -
第793回
PC
5nmの限界に早くもたどり着いてしまったWSE-3 Hot Chips 2024で注目を浴びたオモシロCPU -
第792回
PC
大型言語モデルに全振りしたSambaNovaのAIプロセッサーSC40L Hot Chips 2024で注目を浴びたオモシロCPU - この連載の一覧へ