Sodium Async AMD GPU Crash
Installing Distant Horizons 1.6.3 (or newer) and Sodium with the `Chunk Arena Allocator: ASYNC` setting enabled on AMD GPUs causes the game to hard crash without an error log. ### Reproduction Setup: - GPU: AMD RX 6900XT - GPU Drivers (Crash): 22.Q3, 22.Q4, 22.10.2, 22.11.1 - GPU Drivers (No Crash): 22.Q2 - Minecraft Versions: 1.18.2, 1.19, 1.19.2 - DH Versions: 1.6.3a, 1.6.5a, 1.6.9a, 1.7.0-dev - Sodium Versions: 0.4.1-build.15, 0.4.2-build.16, 0.4.4-build.18 Having Sodium or Distant Horizons installed by themselves does not cause a crash. Since there isn't a crash with Sodium and DH 1.6.2a, it appears the issue is caused by both Sodium and DH uploading buffers asynchronously. (DH didn't start uploading buffers asynchronously until 1.6.3a) ### Crash Expectation: Corrupted chunks appear within the vanilla chunk radius for a single frame and then the game crashes. ![image](/uploads/f4e1fda35dc18ecbeb415f897d2b867e/image.png) ![image](/uploads/ed181a05fc18990807ca8bd6dd35abf3/image.png) ![image](/uploads/ad1519a95aba27cea548580965ba6464/image.png) ### Temporary Fixes: - Setting Sodium's Chunk Arena Allocator option to **SWAP** or **SYNC** instead of **ASYNC**. - Downgrade AMD drivers to 22.Q2 or older (Q2 was before their big OpenGL optimization) ### Long Term Fix: - On DH's side we can add the option to disable our Async uploading (potentially automatically when Sodium is detected on an AMD system). ### Related Sodium issue: https://github.com/CaffeineMC/sodium-fabric/issues/1524 Massive thanks to Razaekel and Cortex for running the tests for this issue.
issue