Direct3D11 crashing display driver
Members - Reputation: 459
Posted 15 October 2012 - 01:49 PM
What kind of behavior tends to cause this exception?
Members - Reputation: 152
Posted 16 October 2012 - 09:32 AM
I can think of a few possibilities - for your problem - like MJP says, when a GPU task takes too long your graphics driver will time out. For instance if you attempted to render an obsene amount of triangles and do heavy shader calculations on them, all in one go - your grpahics driver will probably die. I had this problem while writing a DirectCompute shader that sometimes took a very long time and kept killing my drivers.
Also - the device object has some quirks when its windowed. For example in a multi-screen situation, draggin the window from one screen to the other will destroy your current graphics device object, as we've changed which physical device we want to use.
The DXUT framework is really good at handling this sort of thing for you with some handy event handler stub functions.
This may also happen when you minimise the window (I can't remember if I've actually ever tried this.....).
Also I believe if your running it in full-screen and you minimise, this can cause problems as well similar to those above. If you're in full-screen mode, use the alt+enter shortcut to switch back to a windowed mode. Then you should be able to get to visual studio without minimising the window - you're just moving focus to another window - which in my experience has always been fine.
You could also try placing some timers around you draw calls that output to the debug window. Compare the times in situations where it works and doesn't work to see if its a long running GPU task that kills the device - in this instance you'd probably see a long running time or a start time without a finish time immediatly before the crash.
Hope this has been helpful!!
Crossbones+ - Reputation: 9449
Posted 16 October 2012 - 09:51 AM
It appears that the gentleman thought C++ was extremely difficult and he was overjoyed that the machine was absorbing it; he understood that good C++ is difficult but the best C++ is well-nigh unintelligible.