v0.2.0 - MGPU Bridge, engine depth and motion vectors
Second packaged build. Drop-in: no compilation needed.
Upgrading from 0.1.0 breaks unless you do two things
Move nvngx_dlssnr.dll into a folder called mgpu beside the add-on, and delete the copy next to the game executable. Some titles load anything named nvngx_*.dll sitting next to their own executable, and then the neural stage binds to the wrong GPU. The panel says INSTALL PROBLEM if it finds one there.
Put mgpu_depth_tap.fx in ReShade's Shaders folder, and make sure ReShade was installed WITH the standard effects pack.* The shader is new and required, and it is in this download. It depends on ReShade.fxh, which is not - that file comes with the standard effects pack. If you installed ReShade for 0.1.0 and skipped the effects, run the ReShade installer against the game again and tick the standard packs; 0.1.0 needed no effects, 0.2.0 does. Missing either one and ReShade never binds depth, so the bridge never arms. The add-on enables the technique itself.
What changed
- The game's own depth and motion vectors now reach DLSS 5 on the second card. It derives motion from colour on its own, which is what 0.1.0 ran on. Real depth and velocity give it ground truth instead of an estimate, and the gain is image stability: less jitter and sizzle on faces and fine geometry in motion. A frame that cannot supply them falls back to the derived motion.
- Both cards can have their own DLSS Super Resolution pass, so the second card can run neural at a lower resolution and scale back up - a way for a weaker card to keep up. Ships off; experimental, in the add-on's panel.
- General optimization, and lower latency at higher resolutions. The two cards balance load between them, in either direction, so a speed mismatch no longer builds a backlog. That is what paid for depth and vectors: they still fit inside 0.1.0's one frame window. The latency improvement requires Reflex.
What's in the zip
| file | what it is |
|---|---|
nvngx.dll_mgpu_bridge.addon64
| the add-on |
mgpu.ini
| its settings, read from beside the add-on |
gpu1.ini
| empty ReShade preset for the bridge runtime |
ReShade2.ini
| config for the bridge's own ReShade runtime |
reshade-shaders\Shaders\mgpu_depth_tap.fx
| keeps ReShade's depth bound. Required |
README.txt
| install steps and every known limitation |
LICENSE
| MIT |
Where it goes
Unpack into the folder containing the game's .exe; the zip keeps its own structure. In Steam: right-click the game, Manage, Browse local files, then keep going down until you see the .exe - on Unreal titles usually ...\<Game>\Binaries\Win64\.
<the folder with the game .exe>\
Game.exe the game (already there)
dxgi.dll ReShade, ADD-ON-ENABLED build. Yours.
ReShade.ini yours, ReShade makes it on first run
ReShadePreset.ini yours, ReShade makes it on first run
nvngx.dll_mgpu_bridge.addon64 <- from this download
mgpu.ini <- from this download
gpu1.ini <- from this download
ReShade2.ini <- from this download
mgpu\
nvngx_dlssnr.dll <- NOT from this download. Yours.
NOT beside the .exe.
reshade-shaders\Shaders\
mgpu_depth_tap.fx <- from this download
The mgpu folder is the one step you do by hand. Nothing in this download creates it and the name has to be exactly mgpu.
Do not rename the add-on. The filename must contain the literal substring nvngx.dll - the DLSS-NR snippet checks the file path of whichever module called it. Rename it and the add-on loads, logs normally, and produces nothing.
Nothing from NVIDIA is included in this download, and none of it may be. _nvngx.dll is the driver core and is already resident on a current driver. nvngx_dlssnr.dll is the DLSS-NR snippet, now loaded from the mgpu subfolder - on the development machines it was already in the game folder. This project does not ship it, cannot ship it, and does not document how to obtain it. Do not redistribute NVIDIA binaries.
What you need
- Two RTX 50-series GPUs, with a monitor on each, extended. The neural output is displayed by the card that produced it. Headless works and is meaningfully slower. A single display is not supported: the bridge presents through its own swapchain in its own window. 40-series has been reported working by a contributor on an RTX 4080 SUPER with an RTX 5060 Ti.
Putmgpu_depth_tap.fxin ReShade'sShadersfolder, and make sure ReShade was installed WITH the standard effects pack.* The shader is new and required, and it is in this download. It depends onReShade.fxh, which is not - that file comes with the standard effects pack. If you installed ReShade for 0.1.0 and skipped the effects, run the ReShade installer against the game again and tick the standard packs; 0.1.0 needed no effects. - No other add-on needed.
- A DirectX 12 game. D3D11 and Vulkan do nothing; the add-on stands down and says so in the panel.
- No shader pack and no other add-on.
Before you run it
The bridge can take a while to arm, and that is normal. It waits for a depth buffer and a velocity buffer, and neither exists in a menu. Across the five titles below the wait ran from under two seconds to about forty-five. If it never clears, [R63] and [R78] in ReShade.log say which is missing, and TAP = ABSENT means the shader is not installed.
Do not change resolution, DLSS mode or graphics presets while armed - the stream is armed once against the swapchain as it stands, and rebuilding it can freeze the session. Frame generation is untested. Washed or flat colour? Take tone down in the panel. AutoArm=1 ships; set it to 0 to arm by hand with CTRL+ALT+F10, and before measuring anything.
Titles this build was run on
Each completed a bounded run, arming and exiting cleanly, with engine depth valid on every frame and zero contract mismatches. Logs in docs/0.2.0.
| Title | Resolution |
|---|---|
| Resonance - A Plague Tale Legacy | 2560x1440 |
| CONTROL Ultimate Edition (DX12 executable) | 2560x1440 |
| DragonSword Awakening | 2560x1411 |
| Cyberpunk 2077 | 3840x2160 |
| The Blood of Dawnwalker | 2560x1440 |
A launch and transport check, not a benchmark. The performance figures in the README were measured on 0.1.0 and have not been re-measured.
Status
Research code, not a product. It creates a second D3D12 device and allocates cross-adapter shared heaps on your hardware - the source is all here and reading it first is a reasonable thing to do.
Windows SmartScreen and some antivirus will flag an unsigned DLL, particularly one named after nvngx.dll. It is unsigned because signing certificates cost money, not because there is anything to hide; build it yourself from source if that matters to you.
Provenance
Built by GitHub Actions, not on a desktop. Everything in this zip came out of a public CI run against public source:
run: https://github.com/maohgad-web/Neural-coprocessor/actions/runs/34751346468
SHA-256: b53b84b83f393261d974b7abdc438034f0e63f4b6b228a43a727f251b2649ef4
That hash is the digest GitHub recorded for the CI artifact, and this release attaches that artifact unmodified. Verify your download with:
Get-FileHash .\mgpu_bridge.zip -Algorithm SHA256 b53b84b83f393261d974b7abdc438034f0e63f4b6b228a43a727f251b2649ef4