github Djihads80/Eglantine build-94
AMD Experimental Build 77 (3af11ac)

latest releases: build-183, build-181, build-178...
pre-release2 days ago

Experimental AMD build — not the regular nx2 build. This one comes from the hotfix/amd-sparse-lazy-crash branch at 3af11ac, which branched off before build 92's work. It exists to test AMD driver crash fixes on Switch 2 titles (Mario Kart World in particular). If you are not on an AMD GPU, use build 92 instead — it is the regular build and has everything listed as missing below.

What's new in this build

  • Large sparse images are backed normally on AMD again. Lazy Switch 2 sparse regions made the texture cache create large images with no memory bound and sample them; AMD's driver crashes shortly after the first such draw (builds 49+). Unbacked-image paths are now skipped on AMD drivers, so images get regular backing as in build 47. (c2a3ae1)
  • No more divide by a zero sparse block size. Image::InitSparseLayers divided by the image granularity the driver reports, which AMD reports as 0. It now uses Vulkan's standard 2D block shape when the device reports residencyStandard2DBlockShape, and otherwise does not use sparse layers at all. (eadb9fc)
  • Command lists are executed as submitted. With present waiting on the previous frame's fence, the game refilled command memory it had already submitted while the GPU thread was still running that frame, so some frames rendered into the wrong image. Each entry's words are now copied at submit time and the copy is executed. Resumed entries and ranges the GPU has newer words for still read memory. EDEN_NX2_PB_SNAPSHOT=0 restores executing from memory. (408bb84)
  • Native shader programs are captured and lowered once instead of once per pipeline environment. Capture also reads a 4 KiB page at a time instead of flushing caches per instruction, and cached native programs fold bank 1 reads the same way live ones do. (3af11ac)

What this build does not have

These landed after this branch point and are not in this build — they are in build 92:

  • The AMD Boost post-processing effect (post_shaders/AMDBoost.fx) is absent.
  • Linux ARM64 builds and Linux .tar.gz packages are not produced from this branch.

Corrected: an earlier version of this list said handheld present images were still not cropped to the panel. They are cropped in this build, so only the two items above are actually missing.

Downloads

Only x86_64 is built from this branch:

  • Linux: AppImage, plain and PGO.
  • Windows: x64 zip, plain and PGO.

Windows: extract the zip and run eglantine.exe, or eden-cli.exe from a terminal.
Linux (AppImage): make it executable (chmod +x) and run it; it bundles its libraries and needs glibc 2.39 or newer (Ubuntu 24.04, Fedora 40, Debian 13, Arch).
The -pgo builds are the same programs compiled with profile-guided optimization (clang plus Eden's profile); prefer them when your CPU supports it. The Windows PGO build is a MinGW build, so it carries its own DLLs and needs no Visual C++ redistributable.

Full diff against build 92: build-92...build-94 (12 commits ahead, 18 behind — the branch is a parallel line, not a superset).

Don't miss a new Eglantine release

NewReleases is sending notifications on new releases.