5 Replies Latest reply on Apr 11, 2012 6:20 PM by benlbit

    WPF GUI freeze in hardware rendering condition


      I'm experiencing a GUI freeze problem, related to hard vs. software UI rendering.


      The context : 2 WPF apps (.NET 3.5 SP1) running on a dual-display XP Embedded machine (DirectX 9.0c).


      At some point, one of these app freezes. But only the rendering : the  GUI stays active (message pump is active, the application is  responsive), but the rendering is not done. The freeze can last seconds or forever. The 2nd app keeps running normally. The bug occurs only in a dual-display configuration, the 2nd app being a kind of catalyst (more video memory usage...)


      Using Perforator, I see that, during a freeze, Video Memory Usage is continuously going up & down in spikes (cf : screenshot). During that time, one native thread is consuming 100% of a CPU (the stack-trace involves WPFgfx, DirectX, GDI, and video driver)


      Usually, when the app unfreeze, it's fully software rendered (purple tint with Perforator).  Also, disabling hardware rendering immediately unfreeze the app.

      I cannot reproduce the bug when hardware rendering is disabled.


      I'm suspecting the video driver, as I cannot reproduce it on another hardware. It's said to be up-to-date (v. on a Mobile Intel(R) 945 Express Chipset). See driver information report below.



      Can anyone help ?





      Intel(R) Graphics Media Accelerator Driver for Mobile Report

      Report Date:        04/05/2011
      Report Time[hr:mm:ss]:    14:35:06
      Driver Version:
      Operating System:        Windows XP* Professional, Service Pack 3 (5.1.2600)
      Default Language:        French
      DirectX* Version:        9.0
      Physical Memory:        2039 MB
      Minimum Graphics Memory:    8 MB
      Maximum Graphics Memory:    64 MB
      Graphics Memory in Use:    38 MB
      Processor:        x86 family 6 Model 14 Stepping 12
      Processor Speed:        1666 MHZ
      Vendor ID:        8086
      Device ID:        27AE
      Device Revision:        03

      *   Accelerator Information   *

      Accelerator in Use:        Mobile Intel(R) 945 Express Chipset Family
      Video BIOS:        1585.0
      Current Graphics Mode:    1024 x 768 True Color (60 Hz)

      *   Devices Connected to the Graphics Accelerator   *

      Active Notebook Displays: 1

      *   Notebook   *

      Monitor Name:        Digital Flat Panel (1024x768)
      Display Type:        Digital
      Gamma Value:        3,54
      DDC2 Protocol:        Supported
      Maximum Image Size:    Horizontal: Not Available
                  Vertical:   Not Available
      Monitor Supported Modes:
      1024 x 768 (60 Hz)
      Display Power Management Support:
          Standby Mode:    Not Supported
          Suspend Mode:    Not Supported
          Active Off Mode: Supported
      Raw EDID:
      00 ff ff ff ff ff ff 00 36 7f 03 00 03 00 00 00
      00 0c 01 03 80 ff ff ff 2f 00 00 a0 57 49 9b 26
      10 48 4f 00 00 00 01 01 01 01 01 01 01 01 01 01
      01 01 01 01 01 01 64 19 00 40 41 00 26 30 18 88
      36 00 00 00 00 00 00 18 00 00 00 fd 00 00 3c 00
      eb 07 00 00 00 00 00 00 00 00 00 00 00 00 00 00
      00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 00
      00 00 00 00 00 00 00 00 00 00 00 00 00 00 00 6a

      * Other names and brands are the property of their respective owners.

        • 1. Re: WPF GUI freeze in hardware rendering condition

          Are there some tools I can use to diagnose driver problems ? or to investigate around the fall-back to software rendering ?

          • 2. Re: WPF GUI freeze in hardware rendering condition

            Hi mde


            have you find a solution for your problem.

            I have the same problem on a dual Display


            The graphic card is an intel graphics media accelerator hd.


            best regards

            • 3. Re: WPF GUI freeze in hardware rendering condition

              Did you find a solution to this?   I am facing the same problem.   I know the reasons; do not know how to fix it.   The Intel driver is wrongly picking the monitor driver as "Digital Flat Panel" instead of PnP driver.    Do not know where to change it?

              • 4. Re: WPF GUI freeze in hardware rendering condition

                I have the exact same problem with my WPF application which uses BitmapCache on visuals.


                The GPU memory consumption remains steady for a while, but then after a number of hours it starts to creep and doesn't stop.


                The symptom I have is: the UI stops updating but the UI thread is still running as per normal.


                Eventually the Operating System will become completely unresponsive.


                I've had a senior developer in Microsoft be kind enough to profile my application and they confirmed this was not a problem with the application (i.e. no memory leaks or scary code).


                If I turn on BitmapCache on 6 or more visuals (thumnail images which I scroll left-right with code), the GPU memory consumption won't let the application run for more than 3 hours. If I turn BitmapCache on only 1 visual (main grid), the application will run for about 24 - 36 hours.


                These embedded graphics chipsets / drivers are a bit nasty.

                • 5. Re: WPF GUI freeze in hardware rendering condition

                  I might point out, when I reported this problem 4 months ago (http://communities.intel.com/message/145805#145805) Intel washed their hands because I was using Windows XP Embedded also (any excuse will do on a tough problem).


                  I've since migrated to Windows XP Professional (because I had to eliminate this as a potential factor) and as suspected, the problem remains.