# The Zen of mGPU

> Source: <https://forum.level1techs.com/t/the-zen-of-mgpu/219175?page=5#post_89>
> Published: 2026-09-09 14:16:27+00:00

so some real examples using Batman Arkham Knight. Older, yet elegant and refined game with lore and graphics that stand the test of time.

.

So the base line for the game includes DLSS5, dual 5090 RTX, the associated rig, and the Neural CoProcessor to run DLSS 5 on the **2nd GPU**, also specifically running PhysX on **2nd  GPU**, and Lossless Scaling on **2nd GPU**.

**407 FPS** max visuals, Physx, 4K

I don’t like things running in the background when not needed, so I make shortcuts to launch and close the Lossless Scaling with the game start/and end. An example script to render the game itself on GPU1, but do Lossless Scaling on GPU2, Physx on (inspector setup) GPU2, and DLSS5 on GPU2 (neural coprocessor)

Shortcut modification to launch Arkham Knight:

*# Explicit File Execution Paths*

*$LSPath = “C:\Program Files\LS\LosslessScaling.exe”*

*$GamePath = “D:\Batman\Binaries\Win64\BatmanAK.exe”*

*# 1. Spawn Lossless Scaling hidden into the background tray space*

*Start-Process -FilePath $LSPath -WindowStyle Hidden*

*# 2. Safety pause to guarantee LS hook engine is listening in the tray*

*Start-Sleep -Seconds 5*

*# 3. Launch the game engine binary targeting your primary discrete hardware*

*$GameObject = Start-Process -FilePath $GamePath -ArgumentList “-graphicsadapter=1” -PassThru*

*# 4. Wait for the black screen to stabilize and the audio engine to spin up*

*Start-Sleep -Seconds 6*

*# 5. [THE BLACK SCREEN FIX]: Inject a Windows Key tap to flush the graphics pipeline*

*# This automates your manual fix and forces DWM to draw the frame layers instantly.*

*$WshShell = New-Object -ComObject WScript.Shell*

*$WshShell.SendKeys(“^{ESC}”) # Sends Ctrl + Esc (The native Windows global equivalent to the Win Key)*

*# 6. Wait a split second for the Start Menu overlay to trigger the desktop refresh, then clear it*

*Start-Sleep -Milliseconds 400*

*$WshShell.SendKeys(“^{ESC}”) # Tap it again to instantly dismiss the menu layout*

*# 7. Script thread blocks execution here until the game process exits*

*$GameObject.WaitForExit()*

*# 8. Cleanup Trigger: Force kill Lossless Scaling to flush system RAM pools*

*Stop-Process -Name “LosslessScaling” -Force*

Also, I have **expanded HD textures** and effects and other components for better visuals such as prerequisites:

Arkham Knight community patch / fix

Arkham Knight HD Texture Pack

Arkham Knight 8K Ultra HD assorted individual mods / textures

Combined result is these settings, using 2nd GPU, 4K, is  **407 FPS** on the built in benchmark

So use three utilities if you want it easy, play with sliders as you see fit:

Lossless Scaling

Neural Coprocessor, to run DLSS 5 on 2nd GPU

One Click DLSS 5 injection

OS  *MS Windows Server 2022 Data Center (as workstation)*

Hardware:

*2x 5090 RTX Gigabyte OC Edition*

*2x AMD 9684X Epyc  (192/384 cores) 2.2GB of L3 cache , Gigabyte MZ73-LM2 Dual socket motherboard, PCIE 5.0*

*1.5 TB RAM  DDR5 ECC LRDIMMs , 2800W psu*

*4x Micron 9300 Max (RAID / 64TB volume) Samsung 9100 Pro 8TB (8TB). 2x Back up drives Micron 5300 (16TB)*

*Asus PA32UCG-K monitor,  MS Data Center 2022 & 2025 & Ubuntu, Air cooled, cool temps, small case, ultra quiet operation*
