Skip to content

Display & GPU Configuration

GFN rigs use virtual displays with EDID emulation to present configurable resolutions to games, while the actual output is captured and streamed to the client.

Official Seat Mapping Snapshot (NVIDIA, No Alliance)

For official server-side rig/tier mapping from rollout variables and spec snapshots (dated October 31, 2025), see:

Display Activation

At boot, displaysetup.bat activates the virtual display:

batch
c:\asgard\tools\GameSeatDisplay\GameSeatDisplay.exe --activate-display

Supports Windows Server 2019 and 2022.

EDID Emulation

The forcedisp tool injects custom EDID data to make games see specific monitor profiles:

EDID ProfileResolutionRefresh RateUse Case
asus_rog_1080p1920x108060 HzDefault
NvidiaVGX_1080p_1201920x1080120 HzHigh refresh
NvidiaVGX_1080p_2401920x1080240 HzUltra refresh
NvidiaVGX_1440p_1202560x1440120 HzQHD high refresh
NvidiaVGX_1600p_1202560x1600120 HzQHD+
NvidiaVGX_4K_1203840x2160120 Hz4K premium
NvidiaVGX_UW_3440x14403440x1440Ultra-wide
NvidiaVGX_UW_3840x16003840x1600Ultra-wide+

Resolution Management

setResCap.py modifies NVIDIA driver registry keys to cap available resolutions:

  • Registry path: HKLM\SYSTEM\CurrentControlSet\Control\Class\{4D36E968-E325-11CE-BFC1-08002BE10318}
  • Registry value: NV_R&T for resolution constraints
  • Default cap: 1920x1080

Resolution Feature Flags

From GameStream config, resolution support is controlled per-SKU:

FlagDescription
Enable4k3840x2160 support
Enable1440p2560x1440 support
Enable1600p2560x1600 support
EnableUWResolutionUltra-wide support
HdrSupportedHDR output
Allow120FpsModeSet120 FPS mode
AspectRatio4To3Supported4:3 aspect ratio

These are enabled for premium SKUs (ReservedSKU setting group).

Dual Display

setDualDispReg.py configures dual-display support:

  • Registry value: RMDisableDisplay set to 1 on NVIDIA boards
  • Used for surround/multi-monitor gaming scenarios

GPU Detection

checkgpu.py validates GPU presence:

  1. Runs devcon.exe to enumerate display devices
  2. Checks for NVIDIA GPU in device list
  3. Reads driver version from registry: HKLM\SOFTWARE\NVIDIA Corporation\Installer2\Stripped
  4. Falls back to wmic path win32_VideoController on failure

GameStream Encoder Settings

From the master config, encoding is highly tunable:

Global Settings

SettingValueDescription
StreamServerMode2Native RTC for all clients
EnableOneStreamer1Single streamer mode
EnableNativeRtcSeparateStreams1Separate audio/video streams
DynamicFrlFramePacing1Dynamic frame rate limiter pacing
EnableStreamerMinidump1Crash dump collection
NvRtcStreamerNoSignalingTimeout1Timeout on no signaling

Conditional Settings

ConditionSettingDescription
Instance is half-GPUSkipVideoEncoderPerfCheck=1Skip encoder perf check
Instance is half-GPU (L40)Av1Disable=1Disable AV1 encoding
Client is Windows/macOSEnableGrc=1Enable GRC (Game Ready Check)
Client is TV (Tizen/WebOS) 4KHevcEnable=1Force HEVC for TV clients
macOS/Windows clientsFrame pacing min 7936us~126 FPS cap
4K60 specific gamesallowOverrideEncoderMultiPassFor4k=1Disable 2-pass for perf

Surround Browser

Enabled for native clients (Windows/macOS) version >= 2.0.52.0:

surroundBrowser=1
separateMicStream=1

GPU Tracing

gpuviewtool/log.cmd provides comprehensive GPU tracing:

  • Traces: FBC, NVStreamer, D3D11, D3D12, DXGI, DWM
  • Buffer sizes scaled to physical memory
  • Stack capture for performance analysis

Core Parking

Disabled at boot via disable_core_parking.bat:

powercfg -setacvalueindex SCHEME_CURRENT SUB_PROCESSOR CPMINCORES 100

This ensures all CPU cores are available for game processing — no cores parked for power saving.

admindesk.top — Reversed & documented from Asgard rig backups and GCIS plugin binaries.