PhysX SPH Fluid Sim and WDDM Timeout

We’re currently using PhysX 3.4’s SPH particle solution to sim fluids, using CUDA to simulate the scene on the GPU. Sometimes, due to very complex scenes, the GPU kernel takes more than 2 seconds, triggering the WDDM timeout*

We can work around this ourselves easily enough by changing the registry entry, but we plan on distributing this application to other end-users. Changing their registry keys is something we’d like to avoid.

Is there any way to split up the workload/configure the PhysX library to avoid triggering this timeout?

see https://docs.microsoft.com/en-us/windows-hardware/drivers/display/timeout-detection-and-recovery
also https://devtalk.nvidia.com/default/topic/459869/cuda-programming-and-performance/-quot-display-driver-stopped-responding-and-has-recovered-quot-wddm-timeout-detection-and-recovery-/

You might want to post this question in the PhysX forum if you have not already done so. It’s unclear from your question whether you are only using PhysX, or if you are using PhysX plus CUDA routines that you’ve written yourself. If it is the latter, and the timeout is occurring during your own CUDA kernels, then that’s not a PhysX question.

Fair enough. It’s pretty much the PhysX SDK out of the box. Figured there may be more experience with the ins and outs of CUDA here, as that’s where the issue is showing up.

While the people here might have more experience with CUDA, they might also not have any experience with PhysX.

Another option if you plan on rolling it out would be to use the TCC driver. This would make it slightly easier for you to roll out but you would have to take care of the fact that with the TCC driver, the GPU can no longer supply the display and a different GPU/iGPU must be utilized to provide the display.