Jump to content

ARK: Survival Ascended - Device Driver Hung - Possible Workaround


Hodir
 Share

Recommended Posts

Summary

This is going to be a somewhat long post concerning a common crash I've been experiencing with ARK: Survival Ascended and the endless tinkering and attempts at debugging that I've tried. What I've posted here has thus far worked for me. This should work on Windows 10 and likely Windows 11. It should apply to Nvidia as well as AMD users.

My specs: Intel i9-12900KF, 64GB of RAM, nVidia RTX 4090 24GB, 4TB NVME SSD, Windows 10 Professional

It's a long winded post from an irritated systems engineer. Deal with it.

Disclaimer

I'm not saying the workaround I've outlined here is a permanent solution to the problem. It is a workaround until a patch to correct the problem is forthcoming from whoever is responsible for it. This workaround involves editing your registry. If you're not comfortable with this, find someone who can help you or check YouTube University for video guides on how to do it. Please don't reach out to me to walk you through the process of editing your registry. Wildcard and Snail Games aren't cutting me checks to be their tech support, and likely don't have enough money to pay me for such a service.

I'm also assuming you have all the latest Windows updates installed for your particular system, you are running the absolute latest version of your graphics card drivers, and ALL of your other system drivers have been updated and you aren't riddled with malware/viruses. I'm also going to assume you aren't doing anything lame with your system like overclocking the processor, memory, or video card and your computer internals aren't blanketed in a cozy layer of dust bunnies, Cheetos dust, and Mountain Dew Red Zone residue.

If your computer melts down into a molten puddle of silicon, fiberglass, and metal then I guess now is a great time to think about an upgrade. Basically, if it breaks, you get to keep both pieces.

Description

When playing ARK, you may crash with the following error:

Unhandled Exception: 0x00008000

CL: 452716
0x00007ffea7c2565c KERNELBASE.dll!UnknownFunction []
0x00007ff646d7533e ArkAscended.exe!ReportGPUCrash() [E:\dave_WC-PURPLERAIN_NVidia\Engine\Source\Runtime\Core\Private\Windows\WindowsPlatformCrashContext.cpp:1815]
0x00007ff646d1e880 ArkAscended.exe!FOutputDevice::LogfImpl() [E:\dave_WC-PURPLERAIN_NVidia\Engine\Source\Runtime\Core\Private\Misc\OutputDevice.cpp:70]
0x00007ff647395c36 ArkAscended.exe!D3D12RHI::VerifyD3D12Result() [E:\dave_WC-PURPLERAIN_NVidia\Engine\Source\Runtime\D3D12RHI\Private\D3D12Util.cpp:873]
0x00007ff6473824ce ArkAscended.exe!::operator()() [E:\dave_WC-PURPLERAIN_NVidia\Engine\Source\Runtime\D3D12RHI\Private\D3D12Submission.cpp:943]
0x00007ff647372e09 ArkAscended.exe!FD3D12DynamicRHI::ForEachQueue() [E:\dave_WC-PURPLERAIN_NVidia\Engine\Source\Runtime\D3D12RHI\Private\D3D12RHIPrivate.h:385]
0x00007ff6473823d0 ArkAscended.exe!FD3D12DynamicRHI::ProcessInterruptQueue() [E:\dave_WC-PURPLERAIN_NVidia\Engine\Source\Runtime\D3D12RHI\Private\D3D12Submission.cpp:1093]
0x00007ff64737f57f ArkAscended.exe!FD3D12Thread::Run() [E:\dave_WC-PURPLERAIN_NVidia\Engine\Source\Runtime\D3D12RHI\Private\D3D12Submission.cpp:83]
0x00007ff646d8f1f6 ArkAscended.exe!FRunnableThreadWin::Run() [E:\dave_WC-PURPLERAIN_NVidia\Engine\Source\Runtime\Core\Private\Windows\WindowsRunnableThread.cpp:149]
0x00007ff646d8f04c ArkAscended.exe!FRunnableThreadWin::GuardedRun() [E:\dave_WC-PURPLERAIN_NVidia\Engine\Source\Runtime\Core\Private\Windows\WindowsRunnableThread.cpp:79]
0x00007ffea902257d KERNEL32.DLL!UnknownFunction []
0x00007ffeaa52aa58 ntdll.dll!UnknownFunction []

Dammit, Dave....

Note: You may get a subsequent error regarding your display adapter driver crashing.

TL;DR Workaround

Do the following trickery on your machine:

  1. Create a system restore point. Read the manual or watch a YouTube video on how to do this.
  2. Launch the registry editor by holding Windows Key + R and typing in regedit.exe.
  3. Navigate to the path: Computer\HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers
  4. In the right pane, right click and select New -> DWORD (32-Bit) Value
  5. Enter the following for the name: TdrDelay
  6. Right click on the new entry and choose Modify
  7. In the Value Data field, enter 60 and choose OK.
  8. Repeat steps 4-7, but for the second key name enter: TdrDdiDelay

Verify that you now have TWO keys, shown exactly as I've provided them above, and they are both set to 60. You should have TdrDelay and TdrDdiDelay and they should both be be set to 60Once you have verified your changes, reboot your computer.

IMPORTANT: Subsequent Windows Updates and even driver upgrades may revert these values to default or remove them entirely and you may have to re-enter them into your registry. Once an acknowledged fix from whoever is responsible has been made available, you should remove these values from your registry.

Technical Description

Windows has what Microsoft calls a "feature" known as Timeout Detection and Recovery (TDR) and it's supposed to detect when the GPU is taking too long to complete a request. If the GPU fails to respond within the default time frame allotted, then the GPU scheduler "preempts" (read: resets) the graphics adapter and recovers to a functional desktop. Before there was TDR, the whole computer would basically freeze. This is what I believe is causing ARK to die horribly with the above error as resetting the GPU effectively kills ARK.

Most graphics engines are supposed to take this into account and break up long compute tasks into smaller, more manageable chunks so that the GPU completes transactions within the defined time frame allotted. I don't think this is happening in the case of ARK and, probably more generically the Unreal Engine. Coincidentally, I also think this is why Wildcard has thus far refused to acknowledge much regarding this error and why a patch isn't more quickly forthcoming, as any fix will likely have to come from Nvidia/AMD or Epic Games (the makers of the Unreal Engine) or possibly even Microsoft.

The values that I'm suggesting people try changing are: 

  1. TdrDelay: The time, in seconds, that the GPU can delay a preemption request from the GPU Scheduler. The default value is 2 seconds. My suggestion is probably overkill at 60 seconds but it's what works for me.
  2. TdrDdiDelay: Specifies the number of seconds that the operating system allows threads to leave the driver, after which the OS responds with a bug check of 0x116 VIDEO_TDR_FAILURE. The default value is 5 seconds and my suggestion of 60 is probably overkill but it's what works for me.

Final Thoughts

Again, what I'm sharing here is what works for me. I have both of these values set to 60 in my registry on my particular platform with my particular hardware configuration and I haven't crashed in three days of roughly 6-8 hour sessions in ARK: Survival Ascended. Worst case scenario is that I get a momentary 1-2 second lag in ARK, usually when opening/closing inventories, and the lag time is usually correlative to the number of items displayed in the inventory pane (or the number of recipes).

I can't guarantee it'll work for you or if it's even relevant to your particular system. If it works for you, great. If not, my apologies. If you think I'm full of Bronto poop, then...I guess put me in a compost bin with some thatch when you're between crashes and I'll try to produce some fertilizer for your corn.

 

  • Like 1
  • Thanks 2
Link to comment
Share on other sites

Thank you. I was crashing after playing for 10 minutes to an hour recently, with the exact same crash popup. I stopped playing due to this. After implementing the above regedits, it's finally stable and I can play as long as I wish.

My specs are fairly different as well, so it should work for many systems.

My PC specs: R7 5800x(custom PBO2), XFX THICC III 5700xt(UV/OC), 32GB of RAM, Samsung 980 Pro 500GB boot, Kingston NV2 2TB gaming, Windows 11 Professional, running at all medium settings except view distance at high.

Edited by parapetenia
Game settings and OC specs added
Link to comment
Share on other sites

I've also had this crash, but only during fights - set the keys, will report back as I get it just a couple of times a day - unfortunately, most often, in the swamp cave.... 99% chance it's going to mean death there.

p.s. 6900xt, most settings epic, with a few high

Edited by FeyGriffin
Link to comment
Share on other sites

Works for me, except rather than the game crashing those lockups are now 20+ seconds. After the lockup the camera is completely messed up, jittering around like it is in collision with something. When looking down the camera jumping around erratically is beyond awful.

Changing camera settings in options fixes it, but the next lockup will undoubtedly happen in a few minutes. I've had two happen within 15 seconds of each-other, i.e. it is completely unplayable.

Specs:
AMD 3900X, RTX 4070, 64 GB RAM, CORSAIR Force MP600 Gen4 PCIe x4 NVMe M.2 SSD 5TB
Windows 11 Pro, 1080p all epic settings, NVIDIA GeForce Game Ready drivers: 546.17 (11/14/2023)

Edited by mgxts
Link to comment
Share on other sites

On 12/3/2023 at 6:23 PM, mgxts said:

Works for me, except rather than the game crashing those lockups are now 20+ seconds. After the lockup the camera is completely messed up, jittering around like it is in collision with something. When looking down the camera jumping around erratically is beyond awful.

Changing camera settings in options fixes it, but the next lockup will undoubtedly happen in a few minutes. I've had two happen within 15 seconds of each-other, i.e. it is completely unplayable.

Specs:
AMD 3900X, RTX 4070, 64 GB RAM, CORSAIR Force MP600 Gen4 PCIe x4 NVMe M.2 SSD 5TB
Windows 11 Pro, 1080p all epic settings, NVIDIA GeForce Game Ready drivers: 546.17 (11/14/2023)

I also experience the violent jittery camera effect that you describe. I have a 4070ti. One thing I have noticed - and its something that nobody with a beefy GPU wants to hear is that some of the "Epic" settings are the source of a LOT of the ASA crashing issues in my experience. As far as the jittery camera effect you describe - I have narrowed this down to one of these 3 settings: Advanced Graphics, Global Illumination Quality, and Effects Quality. Moving these 3 settings from EPIC to HIGH has given me a lot of stability (including OP's crash report about "dave_WC PURPLERAIN") with hardly any noticeable visual differences, and as long as these settings are on HIGH I no longer get the jittery camera bug. Try this out, hope it helps

Link to comment
Share on other sites

  • 2 weeks later...
  • 4 weeks later...

Thank you so much!  This finally solved the frequent crashing I was getting.  I used values of 15 (decimal, not hex) seconds so I wouldn't have to wait so long if there is an acutal hang.  It definitely seems like the problem was Windows thinking the graphics driver had hung because Windows wasn't allowing enough time for it to respond.

CPU: AMD Ryzen 7 3700X 3.6 GHz, GPU: AMD Radeon RX 5700 XT (8 GB), Motherboard: Prime B550M-A (Wi-Fi), RAM: 16 GB, OS: Windows 11 

Link to comment
Share on other sites

On 1/14/2024 at 3:41 PM, Joebl0w13 said:

Fixed. 

Respectfully, this is a terrible response. Fixed, as in you tried it and it worked for you? Or fixed, as in someone finally came up with an actual patch for it?

In the case of the latter, and Wildcard has indeed fixed the problem, then you need to link the patch notes or relevant information from Wildcard that specifically addresses this problem.

If Epic Games fixed the problem with a patch of UE5, then again...you need to link the patch notes. There would also be relevant patch notes for GPU drivers from Nvidia and AMD, or a specific KB article number if this problem was fixed by either hardware vendors or Microsoft themselves. 

Simply saying "Fixed" an providing zero additional context is misleading at best. Unless you have evidence you can show us that proves it has indeed been fixed via some software patch or modification, then I would argue the problem has not been fixed. I have reviewed the sparse patch notes for ASA for the past month and nothing indicates to me that this problem has been specifically called out and a fix has been described for it.

Link to comment
Share on other sites

  • Volunteer Moderator
19 minutes ago, Hodir said:

Respectfully, this is a terrible response. Fixed, as in you tried it and it worked for you? Or fixed, as in someone finally came up with an actual patch for it?

In the case of the latter, and Wildcard has indeed fixed the problem, then you need to link the patch notes or relevant information from Wildcard that specifically addresses this problem.

If Epic Games fixed the problem with a patch of UE5, then again...you need to link the patch notes. There would also be relevant patch notes for GPU drivers from Nvidia and AMD, or a specific KB article number if this problem was fixed by either hardware vendors or Microsoft themselves. 

Simply saying "Fixed" an providing zero additional context is misleading at best. Unless you have evidence you can show us that proves it has indeed been fixed via some software patch or modification, then I would argue the problem has not been fixed. I have reviewed the sparse patch notes for ASA for the past month and nothing indicates to me that this problem has been specifically called out and a fix has been described for it.

Fixed.

As in, the thread was moved to the correct place in the forum...  Moderators don't adjust patch notes or provide evidence for anything. 

Edited by Joebl0w13
Link to comment
Share on other sites

4 hours ago, Joebl0w13 said:

Fixed.

As in, the thread was moved to the correct place in the forum...  Moderators don't adjust patch notes or provide evidence for anything. 

Nor does it seem that moderators provide much needed context when replying in a forum topic where a software bug that affects a large portion of paying customers is being described, along with a workaround, and the hopes for an actual fix or even a simple acknowledgement that it exists from the developer.

I'm sure you can understand that from an observer's perspective, a post that simply says "Fixed" with no added context could be justifiably construed as misleading. I also don't think there was any expectation of a moderator to adjust patch notes. The ask was that you simply put a link to them if Wildcard actually fixed the problem and pointed it out in the patch notes. Also, your title as volunteer moderator should not exclude you from the reasonable expectation of providing some form of documented evidence in the event that you did find a fix, as it's the same expectation any reasonable person would have of anyone who found a patch or a more permanent solution to this problem, moderator or not.

"Moved this thread to the correct forum location." would have been a much better response. Context matters, friend. 

 

  • Like 1
Link to comment
Share on other sites

Can confirm this solution doesn't work with a 4070 Super. Been playing ASA with a 1070 (with lot of commands to reduce shadows, volum. clouds, etc) with very few crashes during this months and since I have the 4070 Super I'm getting the DEVICE HUNG crash 2 or 3 times per day. This only happen with ARK btw, I've tried other games with long gaming sessions and havent had a single crash.

My crash backtraces are similar to the ones in the OP, I would also add this part that only appears inside the crashstack files:
 

Quote

LowLevelFatalError [File:G:\AsaMainDev\Engine\Source\Runtime\D3D12RHI\Private\D3D12Util.cpp] [Line: 873] 
CurrentQueue.Fence.D3DFence->GetCompletedValue() failed 
 at G:\AsaMainDev\Engine\Source\Runtime\D3D12RHI\Private\D3D12Submission.cpp:939 
 with error DXGI_ERROR_DEVICE_REMOVED with Reason: DXGI_ERROR_DEVICE_HUNG


I've googled about this UE function (GetCompletedValue() from CurrentQueue.Fence.D3DFence) and the DEVICE_HUNG and this appear to be happening to more ppl when playing games with UE 5.2, like Remnant, because UE 5.2 rely on old functions when talking with DX12 API. So I dont know what to expect tbh.

Link to comment
Share on other sites

  • 3 weeks later...
  • 1 month later...

Create an account or sign in to comment

You need to be a member in order to leave a comment

Create an account

Sign up for a new account in our community. It's easy!

Register a new account

Sign in

Already have an account? Sign in here.

Sign In Now
 Share

×
×
  • Create New...