本文へスキップ
PS5PCEM
動作グラフィックス

Vulkan レンダラー

Vulkan のバックエンドは実行時にドライバーを読み込み、Vulkan 1.2 を必要とし、スワップチェーンを通じてゲストのフレームを表示します。レンダーターゲット、ストレージイメージ、パイプラインは描画をまたいで常駐します。

2026年10月10日 までのリポジトリノート

デバイスとメモリ

レンダラーはプラットフォームの Vulkan ローダーを自分で読み込むため、ビルドに Vulkan SDK のヘッダーは要りません。初期化では、トランスレーターの SPIR-V 1.5 を受け付けるバージョンである Vulkan 1.2 を要求し、グラフィックスとコンピュートの両方ができるキューファミリーを持つディスクリートのデバイスを優先します。デバッグビルドでは、インストールされていれば検証レイヤーを要求します。

ひとつのディスクリプターのレイアウトが、64 個のストレージバッファ、別々の 64 エントリーの 2D と 3D のサンプルイメージの配列、型付きのストレージイメージを持ちます。512 セットのリング、128 MiB のアップロード領域、永続的なゲストのレンダーターゲットが、フレームのリソースをデバイスに留めます。グラフィックスの変換は 256 MiB、1,024 エントリーのキャッシュを使います。ストリーミングする場面が以前の 64 MiB の予算を超え、同じモジュールを毎フレーム変換し直していたためです。

パイプラインとタイムライン

パイプラインのコンパイルは既定で 2 つのワーカーを使います。PS5_GPU_COMPILER_WORKERS で 1~4 に設定できます。PS5_GPU_ASYNC_PIPELINES=0 で同期コンパイルに戻り、コンピュートのウォームアップも無効になります。ウォームアップは、以前にコンパイルしたコンピュートモジュールを次回の起動時にドライバーのキャッシュへ再生します。それらをディスパッチすることはなく、一時的なパイプラインは破棄します。ドライバーのキャッシュは vulkan_pipeline_cache.bin にも最大 4 GiB まで保存されます。壊れたファイルは破棄され、影響するのは起動時間だけです。

既定の互換性プロファイルは、送信したバッチごとに待機します。PS5_GPU_TIMELINE_SCHEDULER=1 で選ぶタイムラインのスケジューラーは、複数のバッチを処理中のまま保ち、本物のリードバック、ゲストの同期点、使い切ったリソースのリングで待機します。PPSA25872 というひとつのタイトルでは、計測した比較の結果、このスケジューラーと遅延させた小さなストレージの書き戻しを自動的に有効にします。イメージのレイアウトはアスペクト、ミップ、配列レイヤーごとに追跡し、バリアはそのサブリソースの前回の使い方から決まります。

形式と常駐

BC1~BC7、整数と正規化のチャンネル、R16 と RG16、半精度浮動小数点、RGBA32_FLOAT を含む 56 個のホストの形式を扱えます。ゲストのイメージの割り当ては、カラー、深度、ストレージ、サンプルの用途にまたがってひとつのエイリアス登録を共有します。シグネチャが一致すれば、前のパスが書いた深度ターゲットを、ゲストのメモリを往復せずに後のパスがサンプルできます。再解釈や部分的な重なりは、ゲストのメモリを経由して戻ります。

GPU でのコンピュートによるデタイルは、4、8、16 バイトの 2D と 3D の標準および PRT のサーフェスをカバーします。RB+ と MSAA のデタイルはまだ CPU で動きます。シングルサンプルのパックされた 11/11/10 の UNORM のターゲットは、ストレージバッファへのコピーと、フラグメントでの展開・ブレンド・再パックでブレンドします。VideoOut はこれらのイメージの上にあるスワップチェーンです。

実装済みのこと

  • 実行時の Vulkan 1.2 のデバイス選択、スワップチェーン、常駐するレンダーターゲット。
  • 56 個のホストの形式、サブリソースごとのレイアウト追跡、イメージのエイリアス登録。
  • 2 つのコンパイラーワーカー、永続的なドライバーのキャッシュ、オプションのコンピュートのウォームアップ。
  • オプトインのタイムラインのスケジューラー。ひとつのタイトルでは既定で有効です。

まだ足りないこと

  • 既定のプロファイルはまだバッチごとに待機します。タイムラインでの送信はオプトインです。
  • RB+ と MSAA のデタイルは CPU を使います。
  • 形式の一覧は、ゲームの照明やすべての圧縮メタデータの経路が動くことを意味しません。

関連するしくみ

これらのページについて

本文は PS5PCEM リポジトリのアーキテクチャノートと 2026 年 10 月のレポートに基づいています。個別のテストに合格したことは、新しいフレームレートや新しいクリアを意味しません。

すべての技術