dxvk: Monster Hunter World randomly freezes

Monster Hunter World (with proton) randomly freezes. This usually happens in between after 10min to 4hours, so a long random time period.

As the DXVK_HUD (with memory) was enabled, at the time of the freeze, around ~3.9gb (assuming this is vram) of 6gb were used.

Most noticeable the dmesg output:

NVRM: Xid (PCI:0000:09:00): 31, Ch 0000004b, intr 10000000. MMU Fault: ENGINE GRAPHICS GPCCLIENT_T1_4 faulted @ 0x0_00000000. Fault is of type FAULT_PDE ACCESS_TYPE_READ

Xid 31, the addr 0x0_00000000, intr 10000000 and ACCESS_TYPE_READ are always constant.

To me, it looks like a simple nullptr access, as it is always the 0x0 addr, but I don’t know how to investigate this problem further. I can not let the game run with VK_INSTANCE_LAYERS=VK_LAYER_LUNARG_standard_validation or apitrace for hours, as this makes it very unplayable.

PROTON_USE_WINED3D=1 just results in a black screen. Allow flipping (in nvidia-setting) on/off does not change anything.

Please let me know how to make this report more useful, I am out of ideas.

Software information

  • Monster Hunter World
  • vsync: off
  • 30fps lock (getting weird input lag otherwise sometimes)
  • Steam / Proton 3.16-beta5

System information

  • GPU: Nvidia Geforce 1060gtx 6gb
  • Driver: nvidia-drivers-415.23
  • Wine version: Proton 3.16-beta5 (???)
  • DXVK version: Proton 3.16-beta5 (dxvk 0.93)
  • Kernel: 4.19.10
  • Ram: 16gb
  • CPU: Ryzen 2700X

Log files

(with DXVK_LOG_LEVEL=debug and DXVK_HUD=devinfo,fps,memory)

EDIT: The game overall runs pretty well, just the random freezes are a pretty frustrating problem.

EDIT2: The screen freezes but the game background music is still running.

About this issue

  • Original URL
  • State: closed
  • Created 6 years ago
  • Comments: 79 (8 by maintainers)

Most upvoted comments

Reached out to Nvidia to see if they can help debug it

Tested the latest vulkan beta drivers (435.19.03) and the issue persists (freeze after ~3h 50m), so this wasn’t fixed by the fix for #1169 unfortunately.

I was running nvidia-smi dmon -s pucm -o DT -i 0 during the testing and this was towards the end of the output, fifth line being where the freeze occurred:

 20190909   16:00:15      0   131    63     -    99    47     0     0  4006  1936  3191     9
 20190909   16:00:16      0   132    63     -    99    47     0     0  4006  1936  3191     9
 20190909   16:00:17      0   131    63     -    99    47     0     0  4006  1936  3191     9
 20190909   16:00:18      0   133    63     -    99    47     0     0  4006  1936  3191     9
 20190909   16:00:19      0    49    62     -     0     0     0     0  4006  1936  3191     9
 20190909   16:00:20      0    49    61     -     0     0     0     0  4006  1936  3191     9
 20190909   16:00:21      0    49    61     -     0     0     0     0  4006  1936  3191     9
 20190909   16:00:22      0    33    60     -     0     1     0     0  3802   999  3191     9
#Date       Time        gpu   pwr gtemp mtemp    sm   mem   enc   dec  mclk  pclk    fb  bar1
#YYYYMMDD   HH:MM:SS    Idx     W     C     C     %     %     %     %   MHz   MHz    MB    MB
 20190909   16:00:23      0    33    59     -     0     1     0     0  3802   999  3191     9
 20190909   16:00:24      0    24    59     -     0     2     0     0   810   797  3191     9
 20190909   16:00:25      0    17    58     -     0     3     0     0   810   797  3191     9
 20190909   16:00:26      0    17    58     -     0     3     0     0   810   797  3191     9
 20190909   16:00:27      0    15    57     -     1     5     0     0   405   227  3191     9
 20190909   16:00:28      0    15    57     -     1     6     0     0   405   227  3191     9

At the start, the line listed sm % as 99 and mem % as 46. Normal usage shows sm % of 0 or 1, and mem % of 1.

Game window froze, but terminal on other monitor continued to output every second up until I tried to alt+tab out, then everything froze. Used an active SSH session to killall -9 MonsterHunterWorld.exe to kill MHW and everything unfroze, with no need to kill Xorg.

dmesg shows the same Xid error:

[2247625.011437] NVRM: GPU at PCI:0000:01:00: GPU-1ec9083a-db9c-1b2f-fd59-87c82dd1c09a
[2247625.011440] NVRM: GPU Board Serial Number: 
[2247625.011442] NVRM: Xid (PCI:0000:01:00): 31, pid=11036, Ch 0000003b, intr 10000000. MMU Fault: ENGINE GRAPHICS GPCCLIENT_T1_5 faulted @ 0x0_00000000. Fault is of type FAULT_PDE ACCESS_TYPE_READ

If an API Trace or something else can help with diagnosing the cause of this issue, I can generate one provided someone can provide me documentation on how to do so. I have no issue letting the game run overnight to get a valid dump if needed.

Same result with 418.42.02. Started at 1551910780.835805, froze at 1551931937.174271, just under 6 hours of runtime.