データレイヤーのアンロード時のGPUメモリの解放に関して

お世話になっております。

データレイヤーをアンロードした際にGPUメモリの解放に関して質問させてください。

ファストトラベル時などにデータレイヤーのアンロードと、別のデータレイヤーのロードを実施しています。

その際にGPUメモリの使用量のピークがかなり高くなっている状態を確認しております。

暫く待つ事で使用量は落ち着く事を確認しておるのですが​、このスパイクを解決する方法をご教示頂く事はできますでしょうか?

何卒よろしくお願いいたします。​

[Attachment Removed]

再現手順

  1. データレイヤーをロードする
  2. ロードしたデータレイヤーをアンロードし、別のデータレイヤーをロードする
    [Attachment Removed]

お世話になっております。

アンロードの後 GarbageCollection が作動するまでは各種オブジェクトが解放されずに残っており GPU メモリも占有された状態になります。

アンロード後に GarbageCollection を作動させることにより、一時的にメモリ使用量が大きくなる症状を改善できる可能性があります。

Blueprint であれば “Collect Garbage” ノード、

C++ であれば

GEngine->ForceGarbageCollection(true);のようにして任意のタイミングで GarbageCollection を動かすことができます。

よろしくお願いいたします。

[Attachment Removed]