オープンソースのグラフィックスライブラリであるMESAは、最新のRADVドライバにより、古いAMD Radeon GPUでのレイトレーシングサポートを追加しました。
古いAMD GPUがMESA RADVドライバでレイトレーシングをサポート – RDNA 1、Vega、PolarisでRTXおよびレイトレーシングされたゲームの動作を確認(古いAMD GPUはMESA RADVドライバーでレイトレーシングをサポートする)
最新のマージリクエストによると、AMD RDNA 2に続いて、RDNA 1、Vega、Polarisシリーズを含む古いAMD GPUも、RADV「Radeon Vulkan」ドライバでVulkanレイトレーシングのサポートを受けるようです。
このリクエストを行ったのは、Valve社でDSVKをはじめとする様々なDirect3D-on-Vulkanの開発に携わったことで知られるJoshua Ashton氏だとPhoronixは報じています。
Joshua氏は、6月にVulkan Raytracingを古いAMD GPUに移植する計画を発表していましたが、それが現実のものとなりつつあるようです。以下はFreeDesktopに掲載されている具体的な依頼内容です。
radv: 旧世代向けのレイトレーシングの実装
この PR は、旧世代(Navi、Vega、Polaris など)のレイトレーシングを実装します。
これは、AMD bvh intersection 命令をソフトウェアでエミュレートすることで実現しています。
今のところ、これは RDNA 2 カードと同じように CTS を通過させます。
フリーデスクトップより
RDNA 1、Vega、Polarisなどの古いAMD GPUは、RDNA 2のようなレイトレーシング・ハードウェアを内蔵していませんが、ソフトウェアの方法でレイトレーシング(BVH交差命令)をエミュレートすることができます。
ジョシュア氏によると、古いAMD GPUはRDNA 2 GPUと同様にCTS(Conformance Test Suite)に合格しているそうですが、RDNA 1や古いGPUはもちろんのこと、Vulkan用のRDNA 2 GPUドライバー(RADV)でさえ十分とは言えないため、この機能が正しく動作することは保証できません。
これが機能するかどうかについては、何人かのユーザーがNavi 10とPolaris 10のGPUでRADV Vulkan Raytracingを動作させることができました。
あるユーザーは、AMD Navi 10 GPUでQuake 2 RTXを実行した際にいくつかのエラーが発生しましたが、新たにコンパイルを構築したところ、古いカードでもレイトレーシングが動作するようになりました。
ただし、ソフトウェアによる手法は、ハードウェアによる統合に比べて、性能や品質の面ではるかに劣ることに留意する必要があります。
そのため、レイトレーシング対応をうたうGPUには、必ずRTハードウェアユニットが内蔵されています。
NVIDIAはRTコア、AMDはRAコア、Intelもレイトレーシング機能を実行するための専用ハードウェアブロックを搭載する。
NVIDIAも同様の方法で、古いPascalやエントリーレベルのTuringでレイトレーシング(ソフトウェアエミュレーション)を可能にした。
これらもレイトレーシング機能をサポートしたゲームやソフトウェアを実行できるが、レイトレーシング専用GPUに比べて性能は非常に低い。
解説:
Vulkanで旧世代のAMD GPUのレイトレーシングをサポート
VulkanはDirectXのようなゲーム用APIです。
そのVulkanでPolarisからのAMD旧世代のドライバーでレイトレーシングをサポートしたようです。
nVidiaもPascalからレイトレーシングをサポートしていますが、あまり性能は芳しくありません。
恐らく、AMDの旧世代GPUも同じようなレベルになると思います。
それでも対応していることには意味があるのではないでしょうか。
FSRもそうですが、過去世代のGPUはPolarisで最新の技術に対応するかしないかが別れるようです。