MSDN > 論壇首頁 > Windows Presentation Foundation (WPF) > WPF falls to software mode
發問發問
 

問題WPF falls to software mode

  • 2009年7月4日 上午 10:28da Vinci 使用者勳章使用者勳章使用者勳章使用者勳章使用者勳章
     
    Using Perforator tool I find out that my application from time to time falls to software mode.
    Is there any way (maybe tools or logs) to find out what is the cause?

所有回覆

  • 2009年7月4日 下午 06:11Ray M_ 使用者勳章使用者勳章使用者勳章使用者勳章使用者勳章
     
    Are you using any BitmapEffects by anychance? those are always rendered in software mode. If you have .net 3.5 sp1 replace them with regular effects that are hardware accelarated.
  • 2009年7月6日 下午 06:00da Vinci 使用者勳章使用者勳章使用者勳章使用者勳章使用者勳章
     
    No, I am not using BitmapEffect. Initially all work in hardware mode but suddenly switch to software...
  • 2009年7月6日 下午 08:27Jordan Parker - MSFT 使用者勳章使用者勳章使用者勳章使用者勳章使用者勳章
     
    Do you know how to repro the software fallback or is it pretty random? It might be a driver problem or, if you're on XP, you could be running out of video memory.
  • 2009年7月8日 下午 12:30da Vinci 使用者勳章使用者勳章使用者勳章使用者勳章使用者勳章
     
    I would be said that it  is pretty random. But... There are something worries me.

    1) This app has an Image with WiritableBitmap (1900x1200x32bpp). If I use 800x600x32bpp image it falls back to software rarely. It looks like it folls when I recreate WiritableBitmap. I use the following code to change resolution of bitmap (to prevent momory leak):

    writeableBitmap = new WriteableBitmap(newWidth, newHeight, 96, 96, PixelFormats.Bgra32, null);
    image.Source = writeableBitmap;

    GC.Collect();
    GC.WaitForPendingFinalizers();
    GC.Collect();


    2) My app has unmanaged C++ part where I allocate video memory. I know amount my video memory (~80Mb). I use NVidia GeForce 8800GTS with 512Mb (WDDM drivers, Windows Vista). Does WPF have some video memory limits?