Due to the stupidity of Long (that's me), all comments on the Windows 7 Taskforce after March has been lost.
As a result of this unfortunate event, a transition to a new backend (the one powering heresanidea.net) is being considered.

This website is part of the community Taskforce initiative

Submission details

15 +17/-2 votes

GDI+ Acceleration in Windows 7 is broken

Submitted by patternjake on January 8, 2010 to Bug, Legacy, Usability

OK, this is rather difficult for me to explain, but I will try to explan this issue as detailed as possible.

Because I am a developer I frequently disable the theme service, or just run in Aero basic mode on Windows 7 to make sure all my CPU and GPU time is not being wasted on aero and fancy stuff.

However.

Although I am aware of the benefits of DWM, and GPU acceleration, GDI+ is NO LONGER hardware accelerated in Windows 7 due to the new Direct2D (which GDI+ does not use at all, only upcoming applications will). This means that all onscreen surfaces (even in classic mode) paint INCREDIBLY slower than before, especially slower than in XP and Vista, since they both supported the same hardware acceleration of GDI+. (No, on the contary to popular speculation, GDI+ IS indeed hardware accelarated).

This means that we are being forced to write applications for either WPF or Direct2D, meaning the old Windows Forms apps are becoming incredibly slower. It doesnt matter what mode you use (aero, classic,) it will still perform incredibly slower than in xp and vista because of GDI+ acceleration has been removed.

This has happend to four up to date, new spec pcs, and they all perform exactly the same way.

A good way of testing this is by opening .net form apps and making their opacity to about 95%. Comparing window moves on xp, vista, and 7, 7 chugs HEAVILY and cuts off many regions of the window. XP and Vista perform in nearly the exact speed.

I am sure that many others will be able to reproduce this issue if they know what they are looking for, and the results are shocking.

A simple solution, Enable acceleration of traditional GDI model like in Vista and XP. It was fine then, dont break it so we have to move to Direct2D or WPF.

http://en.wikipedia.org/wiki/Direct2D

Medium

Medium

Not fixed

Discussion (16 comments)

patternjake wrote on January 8, 2010, 1:42am

Changed problem description.

patternjake wrote on January 8, 2010, 1:56am

Never mind.

Comment edited on January 8, 2010, 1:57am

Soulburner wrote on January 8, 2010, 11:44am

It was already mentioned here a few months ago. Simply move to .net and use WPF ;)

patternjake wrote on January 8, 2010, 3:42pm

Soulburner: If only it were that simple. Theres many method and controls that do not work in WPF applications, since it is based on the XAML specification.

Still, they should not be FORCING us to use Direct2D or WPF by making existing applications hideously slow on Windows 7.

patternjake wrote on January 8, 2010, 3:44pm

Also: This is also reproduced by scrolling through complex pages in IE WITH aero turned on, and you get noticible lag... :(

Soulburner wrote on January 8, 2010, 4:16pm

Yeah, I do agree with you. Lack of GDI+ acceleration seems a bit odd. I'm not a programmer (yet ;)) so I had no idea WPF is inferior to some GDI methods...

computerkid wrote on January 9, 2010, 1:53am

Here's my test results in Passmark Performance test. I used a baseline of XP 32bit with the same gpu and cpu as my pc has. 7 is slower in GUI performance than in XP.
http://img198.imageshack.us/img198/4917/testresults.png


Comment edited on January 9, 2010, 1:58am

patternjake wrote on January 9, 2010, 7:13pm

computerkid: Yes, i know, its dreadful performance. If you run that test in VISTA and compare it to xp, it will not be half as bad. I didnt need to perform any benchmarks to know about this issue, since dragging a complex window around heavily chops, on xp is smooth as anything.

I completely disagree with the reasons why Microsoft decided to do away with GDI+ Acceleration and replace it with Direct2D, an API that is overly complex which no one will use (Mozilla has, but people are restircted to using Vista and 7 only since it relies of WDDM model)

In other words the Windows 7 GUI is truely broken. :(

patternjake wrote on January 9, 2010, 7:15pm

Yikes! And just look at the transparent vectors! It doesnt bear thinking about.

Now i can see a good reason why I am holding on to my Vista SP2 with dear life. tut tut tut.

patternjake wrote on January 9, 2010, 7:18pm

Soulburner : Btw I AM talking about Windows Forms .net applications. Simply moving to WPF is not a feasible option for many developers, since it HEAVILY inaqiducate for many functions that are used for complex applications. WPF is simply a flashy API for flashy gui development. This issue effects .net forms also, and worse.

patternjake wrote on January 9, 2010, 7:19pm

RedSign: Not a duplicate, because he didnt fully express WHAT was causing the reduced performance. I have clearly indentified the exact problem that is causing this issue.

And btw, he is saying its due to changes in WDDM 1.1, which is untrue, since this happens on alll rendering modes, classic, aero, aero basic etc.

Ensign Joe wrote on January 10, 2010, 12:12pm

We have to move away from that old shitty GDI fuck and use modern ways of programming. -1!

patternjake wrote on January 10, 2010, 1:54pm

Ensign Joe : You have obviously no idea what you are talking about. GDI NOT ONLY EFFECTS PERFORMANCE of nearly every single app out there, e.g your precious firefox, safari, IE, office 2007 etc, and it effects stability. You really think that all windows such as WPF are rendered by DWM entirely? If you think that get a grip. GDI still has to be used because that is the technology that drives the display of all applications used today.

You obviously have no idea what GDI is, and it is a modern way of programming. YOU DONT PROGRAM for GDI, we use .NET programming, WPF, but it still has to use GDI.

DWM never replaced GDI and never will since there is so many apps that depend on it.

Your comments are ridiculous and should be removed unless you know what you are talking about. duh.

Tihiy wrote on January 12, 2010, 1:16pm

GDI+ was never accelerated.
GDI is partially accelerated with WDDM 1.1.

Oh and .NET Windows Forms sucks anyway.

patternjake wrote on January 12, 2010, 8:04pm

Tihiy : I take it you have never developed for .net then, or have little knoweldge of its use. If anything, WPF sucks since it is vastly limited compared to .NET Windows Forms.

GDI+ Bitmap acceleration has been avaliable since Windows XP and Windows Vista. It was dropped in Windows 7.

WRONG. GDI acceleration was DROPPED in favor of Direct2D model for WDDM 1.1 drivers, hence the Windows Vista platform update. It doesnt take a genious to work that one out, since IE9 will use Direct2D, ported back to vista, because Microsoft know that they broke IE8 when they dropped GDI+ acceleration.

If you want to be taken seriously, make sure you add serious comments that can be backed up with fact. FACT is that benchmarks have been run on the Windows 7 GDI and is proved to be at least 5 times slower than in XP and Vista. FACT.

Yatti420 wrote on February 6, 2010, 11:21pm

This is not a bug..

You might also be interested in...