5
Sep/09
5

Windows 7: ATI VPU recover problem (Anno 1404)

ati-radeon-graphics I play Anno 1404 since some days. I do very like this game. But I have a little problem: With my new graphic card, an ATI Radeon HD4890 I get black screens after playing for about 30 minutes. I recognize a “VPU recover” in Windows 7 tray. The eventlog shows a 4101 event from source “Display” in the system log. The game is not hanging completely. E.g. I am able to quick save the game by pressing F5. So nothing gets lost but in general the black screen is annoying.

See how I fixed the problem for me…

anno_1404

At the moment I use the ATI Radeon 9.7 drivers on Windows 7 x64.

I tried many things to fix the issue:

  • Changing display settings in Anno 1404
  • Changing display settings in CCC (Catalyst Controll Center)
  • Upgrading to ATI Radeon 9.8 drivers
  • Downgrading to ATI Radeon 9.6 drivers

Nothing of that fixed my problem. I read in some forums that this would be a bug of the ATI drivers. Maybe this is true but after hours of searching and trying I found another solution than waiting for a new driver version:

In Windows Vista and Windows 7 the VPU recover is not triggered by the video drivers. Instead of this it is triggered by Windows. Seems the threshold until the VPU recover is triggered by Vista is to small. In Vista the interval is 2 seconds. After a graphic lag (Freeze of the picture) of two seconds Vista will fire actions to recover the graphic card to prevent a full freeze of the system (would result in a bluescreen). It will unload the video driver, reboot the GPU and then reload the driver. Therefor you are able to use the computer after a graphic failure without rebooting it. A picture freeze could have several reasons. One reason could be an overloaded GPU which maybe caused by a picture which takes to long to be rendered.

The 2 seconds seem to be too small threshold. I read about two possibilities to workaround this:

  1. Disable the VPU recover of Vista completely
  2. Increase the threshold
Since I thunk the VPU recover feature is a useful thing I choose the second way. I increased the threshold to 10 seconds. To apply this I simply copied the following text to a .reg file on my computer and applied it to the local registry of my computer:

Windows Registry Editor Version 5.00
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers]
"DxgKrnlVersion"=dword:00001052
"TDR_DEBUG_MODE_IGNORE_TIMEOUT"=dword:00000001
"TdrDelay"=dword:00000010
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\DCI]
"Timeout"=dword:00000007
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\MemoryManager]
"Period.EnableEvictionThresholdForWrite"=dword:00000000
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\TdrTestMode]
"TDR_DEBUG_MODE_IGNORE_TIMEOUT"=dword:00000001
 
[HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Control\GraphicsDrivers\UseNewKey]

And magic! I can now play Anno 1404 without black screens and freezing pictures.

References: German thread at hardwareluxx.de German thread at gamestar.de

Filed under: Windows
Comments (5) Trackbacks (0)
  1. GebboTNo Gravatar
    12:55 on November 11th, 2009

    I had this problem with windows 7 x64 and radeon 4850 (sapphire). I downloaded the newest bios for the card from techpowerup and updated the bios. before the update the powerplay seems to work incorrectly and now i have no problem any more.

  2. LeeNo Gravatar
    04:13 on December 26th, 2009

    which line do you edit to put it back to 2 seconds if it doesnt fix the problem?

  3. luisNo Gravatar
    00:40 on October 25th, 2010

    i have the same problem with mw2 and medal of honor

  4. GonzoBonzoNo Gravatar
    21:40 on February 21st, 2011

    Brilliant! U save me man! <3

  5. KayNo Gravatar
    05:07 on January 25th, 2012

    it doesnt save mine..T_T

No trackbacks yet.