DX12 games freeze on launch after PC has been running for about 3 hours

Hi there, total newbie here, but have had no luck finding others with this issue.

As the title states, any DX12 game I launch will only do so in the first 3 hours or so of operation. After that, I can still play a game that was already open when the time’s up, but once closed, it will freeze upon launch.

This only happens with DX12 games.

Please let me know if there’s anything else to add to this.

garuda-inxi
System:
Kernel: 6.12.4-zen1-1-zen arch: x86_64 bits: 64 compiler: gcc v: 14.2.1
clocksource: tsc avail: hpet,acpi_pm
parameters: BOOT_IMAGE=/@/boot/vmlinuz-linux-zen
root=UUID=7e1ec314-adb8-4ef4-a53a-29410b4f4eb4 rw rootflags=subvol=@
quiet loglevel=3 splash ibt=off
Desktop: KDE Plasma v: 6.2.4 tk: Qt v: N/A info: frameworks v: 6.9.0
wm: kwin_wayland vt: 1 dm: SDDM Distro: Garuda base: Arch Linux
Machine:
Type: Desktop Mobo: ASRock model: B650M PG Riptide
serial: <superuser required> uuid: <superuser required> UEFI: American
Megatrends LLC. v: 1.28 date: 07/28/2023
CPU:
Info: model: AMD Ryzen 7 7700X bits: 64 type: MT MCP arch: Zen 4 gen: 4
level: v4 note: check built: 2022+ process: TSMC n5 (5nm) family: 0x19 (25)
model-id: 0x61 (97) stepping: 2 microcode: 0xA601209
Topology: cpus: 1x dies: 1 clusters: 1 cores: 8 threads: 16 tpc: 2
smt: enabled cache: L1: 512 KiB desc: d-8x32 KiB; i-8x32 KiB L2: 8 MiB
desc: 8x1024 KiB L3: 32 MiB desc: 1x32 MiB
Speed (MHz): avg: 2988 min/max: 400/5573 boost: enabled scaling:
driver: amd-pstate-epp governor: performance cores: 1: 2988 2: 2988 3: 2988
4: 2988 5: 2988 6: 2988 7: 2988 8: 2988 9: 2988 10: 2988 11: 2988 12: 2988
13: 2988 14: 2988 15: 2988 16: 2988 bogomips: 143732
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 sse4a ssse3 svm
Vulnerabilities: <filter>
Graphics:
Device-1: Advanced Micro Devices [AMD/ATI] Navi 31 [Radeon RX 7900 XT/7900
XTX/7900 GRE/7900M] vendor: Sapphire PULSE driver: amdgpu v: kernel
arch: RDNA-3 code: Navi-3x process: TSMC n5 (5nm) built: 2022+ pcie:
gen: 4 speed: 16 GT/s lanes: 16 ports: active: DP-1 empty: DP-2,
HDMI-A-1, HDMI-A-2, Writeback-1 bus-ID: 03:00.0 chip-ID: 1002:744c
class-ID: 0300
Device-2: Advanced Micro Devices [AMD/ATI] Raphael driver: amdgpu
v: kernel arch: RDNA-2 code: Navi-2x process: TSMC n7 (7nm) built: 2020-22
pcie: gen: 4 speed: 16 GT/s lanes: 16 ports: active: none empty: DP-3,
DP-4, DP-5, HDMI-A-3, Writeback-2 bus-ID: 11:00.0 chip-ID: 1002:164e
class-ID: 0300 temp: 32.0 C
Display: wayland server: X.org v: 1.21.1.14 with: Xwayland v: 24.1.4
compositor: kwin_wayland driver: X: loaded: amdgpu
unloaded: modesetting,radeon alternate: fbdev,vesa dri: radeonsi
gpu: amdgpu,amdgpu display-ID: 0
Monitor-1: DP-1 res: 2560x1440 size: N/A modes: N/A
API: EGL v: 1.5 hw: drv: amd radeonsi platforms: device: 0 drv: radeonsi
device: 1 drv: radeonsi device: 2 drv: swrast gbm: drv: kms_swrast
surfaceless: drv: radeonsi wayland: drv: radeonsi x11: drv: radeonsi
API: OpenGL v: 4.6 compat-v: 4.5 vendor: amd mesa v: 24.3.1-arch1.3
glx-v: 1.4 direct-render: yes renderer: AMD Radeon RX 7900 XTX (radeonsi
navi31 LLVM 18.1.8 DRM 3.59 6.12.4-zen1-1-zen) device-ID: 1002:744c
memory: 23.44 GiB unified: no display-ID: :1.0
API: Vulkan v: 1.4.303 layers: 14 device: 0 type: discrete-gpu name: AMD
Radeon RX 7900 XTX (RADV NAVI31) driver: N/A device-ID: 1002:744c
surfaces: xcb,xlib,wayland device: 1 type: integrated-gpu name: AMD
Radeon Graphics (RADV RAPHAEL_MENDOCINO) driver: N/A device-ID: 1002:164e
surfaces: xcb,xlib,wayland device: 2 type: cpu name: llvmpipe (LLVM
18.1.8 256 bits) driver: N/A device-ID: 10005:0000
surfaces: xcb,xlib,wayland
Audio:
Device-1: Advanced Micro Devices [AMD/ATI] Navi 31 HDMI/DP Audio
driver: snd_hda_intel v: kernel pcie: gen: 4 speed: 16 GT/s lanes: 16
bus-ID: 03:00.1 chip-ID: 1002:ab30 class-ID: 0403
Device-2: Advanced Micro Devices [AMD/ATI] Rembrandt Radeon High
Definition Audio driver: snd_hda_intel v: kernel pcie: gen: 4
speed: 16 GT/s lanes: 16 bus-ID: 11:00.1 chip-ID: 1002:1640 class-ID: 0403
Device-3: Advanced Micro Devices [AMD] Family 17h/19h/1ah HD Audio
vendor: ASRock driver: snd_hda_intel v: kernel pcie: gen: 4 speed: 16 GT/s
lanes: 16 bus-ID: 11:00.6 chip-ID: 1022:15e3 class-ID: 0403
API: ALSA v: k6.12.4-zen1-1-zen status: kernel-api with: aoss
type: oss-emulator tools: N/A
Server-1: PipeWire v: 1.2.7 status: active with: 1: pipewire-pulse
status: active 2: wireplumber status: active 3: pipewire-alsa type: plugin
4: pw-jack type: plugin tools: pactl,pw-cat,pw-cli,wpctl
Network:
Device-1: Realtek RTL8125 2.5GbE vendor: ASRock driver: r8169 v: kernel
pcie: gen: 2 speed: 5 GT/s lanes: 1 port: e000 bus-ID: 09:00.0
chip-ID: 10ec:8125 class-ID: 0200
IF: enp9s0 state: up speed: 1000 Mbps duplex: full mac: <filter>
Info: services: NetworkManager, systemd-timesyncd, wpa_supplicant
Drives:
Local Storage: total: 5.46 TiB used: 3.17 TiB (58.1%)
SMART Message: Unable to run smartctl. Root privileges required.
ID-1: /dev/nvme0n1 maj-min: 259:2 vendor: Crucial model: CT2000P3PSSD8
size: 1.82 TiB block-size: physical: 512 B logical: 512 B speed: 63.2 Gb/s
lanes: 4 tech: SSD serial: <filter> fw-rev: P9CR40A temp: 38.9 C
scheme: GPT
ID-2: /dev/nvme1n1 maj-min: 259:0 vendor: Samsung
model: SSD 970 EVO Plus 2TB size: 1.82 TiB block-size: physical: 512 B
logical: 512 B speed: 31.6 Gb/s lanes: 4 tech: SSD serial: <filter>
fw-rev: 4B2QEXM7 temp: 30.9 C scheme: GPT
ID-3: /dev/sda maj-min: 8:0 vendor: Samsung model: SSD 860 EVO 1TB
size: 931.51 GiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s
tech: SSD serial: <filter> fw-rev: 4B6Q scheme: GPT
ID-4: /dev/sdb maj-min: 8:16 vendor: Samsung model: SSD 850 EVO 1TB
size: 931.51 GiB block-size: physical: 512 B logical: 512 B speed: 6.0 Gb/s
tech: SSD serial: <filter> fw-rev: 2B6Q scheme: GPT
Partition:
ID-1: / raw-size: 1.82 TiB size: 1.82 TiB (100.00%) used: 1.38 TiB (75.7%)
fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:4
ID-2: /boot/efi raw-size: 300 MiB size: 299.4 MiB (99.80%)
used: 26.1 MiB (8.7%) fs: vfat dev: /dev/nvme0n1p1 maj-min: 259:3
ID-3: /home raw-size: 1.82 TiB size: 1.82 TiB (100.00%)
used: 1.38 TiB (75.7%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:4
ID-4: /var/log raw-size: 1.82 TiB size: 1.82 TiB (100.00%)
used: 1.38 TiB (75.7%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:4
ID-5: /var/tmp raw-size: 1.82 TiB size: 1.82 TiB (100.00%)
used: 1.38 TiB (75.7%) fs: btrfs dev: /dev/nvme0n1p2 maj-min: 259:4
Swap:
Kernel: swappiness: 133 (default 60) cache-pressure: 100 (default) zswap: no
ID-1: swap-1 type: zram size: 30.47 GiB used: 0 KiB (0.0%) priority: 100
comp: zstd avail: lzo-rle,lzo,lz4,lz4hc,deflate,842 max-streams: 16
dev: /dev/zram0
Sensors:
System Temperatures: cpu: 38.9 C mobo: 31.5 C
Fan Speeds (rpm): N/A
GPU: device: amdgpu temp: 42.0 C mem: 50.0 C fan: 0 watts: 14.00
device: amdgpu temp: 32.0 C
Info:
Memory: total: 32 GiB note: est. available: 30.47 GiB used: 7.09 GiB (23.3%)
Processes: 433 Power: uptime: 2h 9m states: freeze,mem,disk suspend: deep
avail: s2idle wakeups: 0 hibernate: platform avail: shutdown, reboot,
suspend, test_resume image: 12.16 GiB services: org_kde_powerdevil,
power-profiles-daemon, upowerd Init: systemd v: 257 default: graphical
tool: systemctl
Packages: pm: pacman pkgs: 1913 libs: 574 tools: octopi,paru,yay
Compilers: clang: 18.1.8 gcc: 14.2.1 Shell: garuda-inxi default: fish
v: 3.7.1 running-in: konsole inxi: 3.3.36
Garuda (2.6.26-1):
System install date:     2024-06-08
Last full system update: 2024-12-17
Is partially upgraded:   No
Relevant software:       snapper NetworkManager dracut
Windows dual boot:       Probably (Run as root to verify)
Failed units:

1-what game are you playing
2-can you explain it in more simple terms

  1. Some examples I can think of are Cyberpunk 2077, Halo Infinite, Guardians of the Galaxy (only DX12 mode), Shadow of the Tomb Raider benchmark (only DX12 mode), Black Myth Wukong, Forza Horizon 4.

It’s same with every DX12 game I try, including games that have both DX11 and DX12 options, with DX11 working fine in all scenarios, but DX12 failing after the system has been running for about 3 hours. Only one DX11 game shares the DX12 issue above, and that’s Star Citizen, though I’m not sure why. Like DX11, Vulkan doesn’t have this issue.

  1. Basically, all these DX12 games launch and run fine within the first 3 hours or so of my PC being switched on or after having been reset. After around this time, whatever DX12 game is still running will continue to do so without issue, as far as i know. But launching any new DX12 game will just show a black screen with Mangohud only half showing in the corner. It basically freezes on startup. Then I have to Alt+TAB out and shut down the window manually or from Steam. Resetting the PC fixes the issue, but the issue returns after around the same time.

Any ideas on what could be causing that? Could faulty ram cause this kind of issue? Like, if errors appear after a certain amount of time, could that have an effect only on DX12 games?

DX12 in general has worse performance even in windows.

My guess is it may be linked to some memory issues

someone had same issue about this on reddit

As far as Steam and Proton are concerned there is nothing you need to do. DXVK (dx9-11) and VKD3D (dx12) are included in Proton and are enabled automatically.


Staff note.
Please edit your last post as long as no one has replied to this one.

1 Like

My issue seems to be different to the one on Reddit. I tried turning off hardware acceleration and it didn’t change anything.

I think I’m going to get some high quality ram and see if this fixes it. I did get errors within a couple hours when testing it in OCCT back when I was using Windows.

Thank you for your help.

no problem bro
gaming in linux has to have some workarounds for some games to work because people just don’t want to develop native compatibility for linux

1 Like

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.