あなたの記憶力は小さすぎます。 DXVKのためのスペースを確保する必要があります。

あなたの記憶力は小さすぎます。 DXVKのためのスペースを確保する必要があります。

あまりにも多くのメモリを消費するゲームをWine(WineHQ)で実行すると、何かを交換する前にRAMメモリがいっぱいになり、次のエラーが発生する可能性があります。
"DxvkMemoryAllocator: メモリ割り当てに失敗しました"

これが起こらないようにする方法はありますか?

dxvkで修正できないという内容を読みました(関連リンクを見つける必要があります)...

答え1

このメッセージに触れた人には、実際には2つの可能性があります。

あなたの記憶力は小さすぎます。 DXVKのためのスペースを確保する必要があります。

これは通常、競合が発生したときにシステムメモリが使用されている+バッファ+キャッシュでいっぱいになっている場合に発生します。

次のコマンドを実行して、DXVKに常に1GBの空き容量があることを確認してください。

echo $(( 1024 * 1024 )) | sudo tee /proc/sys/vm/min_free_kbytes

アプリケーションは32ビットで、wineはデフォルトで2 GBのスペースのみを割り当てます。

これは通常、コンピュータに空きメモリがありますが、アプリケーションがまだクラッシュしている場合に発生します。

ワインが2 GB〜4 GBのスペースを割り当てるように追加または許可するWINE_LARGE_ADDRESS_AWARE=1には、スタートアップオプションを編集する必要があります。PROTON_LARGE_ADDRESS_AWARE=1

答え2

私がこの問題を解決したのは、次のことを実行することでした。
stress-ng --vm-bytes 5000M --timeout 15 --vm-keep --vm 1 --verbose RAMが6GBしかないからです。

しかし、その前に、WineゲームやChromiumなど、メモリを大量に消費する他のアプリケーションにSIGSTOP信号を送信することをお勧めします。

このコマンドは、dxvkエラーが発生しないようにRAMの大部分をスワップに移動させるようにします。

それ以前は、ワインがRAMの100%ではなくても、ほぼ99%を満たしていました。

RAM使用量が高すぎるたびにこれを繰り返す必要があるため、スクリプトを作成することをお勧めします。 :)

関連情報