0.1.5 shipped one d4r/zluda/nvapi64.dll (the gfx1101 build) for all
targets, and compat_nvapi_path() preferred it over d4r/nvapi/<arch>/.
Nothing on Windows ever set D4R_GPU_ARCH, so on any other GPU NVAPI
failed with "No selected gfx1101 device", NGX CUDA init failed, and
DLSS stayed unavailable (black frames, no OptiScaler upscaler section).
- Select the NVAPI per architecture; never fall back to a shared DLL
in a multi-target folder, and report a missing build by name.
- The loader and runtime publish D4R_GPU_ARCH and D4R_GPU_LUID for the
game's adapter, so NVAPI picks the right device with several GPUs.
- nvapi64.dll exports the target it was built for; the runtime refuses
a mismatch, and the packager and d4r-check read the same marker.
- Release packaging no longer ships d4r/zluda/nvapi64.dll and rejects
NVAPI builds for the wrong target, without a marker, or missing.
- Move target resolution, device matching and loader choice into
gpu_selection.h; regression tests cover all 11 targets, bad or
missing D4R_GPU_ARCH, mixed installs, multi-GPU and missing files.
- d4r-check: accept the FSR keys in the shipped d4r.ini.
Add native K/M/RR inference engines, HIP kernels, replay and validation
harnesses, and Windows DLSS setup and runtime support. Include GPU
profiling tools, build and packaging scripts, platform integration
patches, and implementation documentation.
Add explicit gfx1200/gfx1201 builds, runtime selection and per-target
code objects. Guard staging, packaging and installation against mixed
architectures; retain gfx1201 compatibility and strict K/M arithmetic.
Adapt realdody's target configuration and MSVC binary16/BOOL portability
fixes from ae530b0. Do not import its forced gfx12 layout on RDNA3.
Add exhaustive binary16 and C++/PowerShell target contract regressions.
Validation: 20 CTest gates on RX 9070 XT; four software-only gfx1200 gates;
MSVC portability compile checks; exact 4K K async and M control outputs;
isolated package install/restore and mixed-target rejection tests.
No physical gfx1200 validation is claimed.
Co-authored-by: realdody <[email protected]>