Starting with Windows Vista, Microsoft began the first steps of what was to be a long campaign to change how Windows would interact with GPUs. XP, itself based on Windows 2000, used a driver model that predated the term “GPU” itself. While graphics rendering was near and dear to the Windows kernel for performance reasons, Windows still treated the video card as more of a peripheral than a processing device. And as time went on that peripheral model became increasingly bogged down as GPUs became more advanced in features, and more important altogether.

With Vista the GPU became a second-class device, behind only the CPU itself. Windows made significant use of the GPU from the moment you turned it on due to the GPU acceleration of Aero, and under the hood things were even more complex. At the API level Microsoft added Direct3D 10, a major shift in the graphics API that greatly simplified the process of handing work off to the GPU and at the same time exposed the programmability of GPUs like never before. Finally, at the lowest levels of the operating system Microsoft completely overhauled how Windows interacts with GPUs by implementing the Windows Display Driver Model (WDDM) 1.0, which is still the basis of how Windows interacts with modern GPUs.

One of the big goals of WDDM was that it would be extensible, so that Microsoft and GPU vendors could add features over time in a reasonable way. WDDM 1.0 brought sweeping changes that among other things took most GPU management away from games and put the OS in charge of it, greatly improving support for and the performance of running multiple 3D applications at once. In 2009, Windows 7 brought WDDM 1.1, which focused on reducing system memory usage by removing redundant data, and support for heterogeneous GPU configurations, a change that precluded modern iGPU + dGPU technologies such as NVIDIA’s Optimus. Finally, with Windows 8, Microsoft will be introducing the next iteration of WDDM, WDDM 1.2.

So what does WDDM 1.2 bring to the table? Besides underlying support for Direct3D 11.1 (more on that in a bit), it has several features that for the sake of brevity we’ll reduce to three major features. The first is power management, through a driver feature Microsoft calls DirectFlip. DirectFlip is a change in the Aero composition model that reduces the amount of memory bandwidth used when playing videos back in full screen and thereby reducing memory power consumption, as power consumption there has become a larger piece of total system power consumption in the age of GPU video decoders. At the same time WDDM 1.2 will also introduce a new overarching GPU power management model that will see video drivers work with the operating system to better utilize F-states and P-states to keep the GPU asleep more often.

The second major feature of WDDM 1.2 is GPU preemption. As of WDDM 1.1, applications effectively use a cooperative multitasking model to share the GPU; this model makes sharing the GPU entirely reliant on well-behaved applications and can break down in the face of complex GPU computing uses. With WDDM 1.2, Windows will be introducing a new pre-emptive multitasking model, which will have Windows preemptively switching out GPU tasks in order to ensure that every application gets its fair share of execution time and that the amount of time any application spends waiting for GPU access (access latency) is kept low. The latter is particularly important for a touch environment, where a high access latency can render a device unresponsive. Overall this is a shift that is very similar to how Windows itself evolved from Windows 3.1 to Windows 95, as Microsoft moved from a cooperative multitasking to a preemptive multitasking scheduling system for scheduling applications on the CPU.

The final major feature of WDDM 1.2 is improved fault tolerance, which goes hand in hand with GPU preemption. With WDDM 1.0 Microsoft introduced the GPU Timeout and Detection Recovery (TDR) mechanism, which caught the GPU if it hung and reset it, thereby providing a basic framework to keep GPU hangs from bringing down the entire system. TDR itself isn’t perfect however; the reset mechanism requires resetting the whole GPU, and given the use of cooperative multitasking, TDR cannot tell the difference between a hung application and one that is not yet ready to yield. To solve the former, Microsoft will be breaking down GPUs on a logical level – MS calls these GPU engines – with WDDM 1.2 being able to do a per-engine reset to fix the affected engine, rather than needing to reset the entire GPU. As for unyielding programs, this is largely solved as a consequence of pre-emption: unyielding programs can choose to opt-out of TDR so long as they make themselves capable of being quickly preempted, which will allow those programs full access to the GPU while not preventing the OS and other applications from using the GPU for their own needs. All of these features will be available for GPUs implementing WDDM 1.2.

And what will be implementing WDDM 1.2? While it’s still unclear at this time where SoC GPUs will stand, so far all Direct3D 11 compliant GPUs will be implementing WDDM 1.2 support; so this means the GeForce 400 series and better, the Radeon HD 5000 series and better, and the forthcoming Intel HD Graphics 4000 that will debut with Ivy Bridge later this year. This is consistent with how WDDM has been developed, which has been to target features that were added in previous generations of GPUs in order let a large hardware base build up before the software begins using it. WDDM 1.0 and 1.1 drivers and GPUs will still continue to work in Windows 8, they just won't support the new features in WDDM 1.2.

Direct3D 11.1

Now that we’ve had a chance to take a look at the underpinnings of Windows 8’s graphical stack, how will things be changing at the API layer? As many of our readers are well aware, Windows 8 will be introducing the next version of Direct3D, Direct3D 11.1. As the name implies, D3D 11.1 is a relatively minor update to Direct3D similar in scope to Direct3D 10.1 in 2008, and will focus on adding a few features to Direct3D rather than bringing in any kind of sweeping change.

So what can we look forward to in Direct3D 11.1? The biggest end user feature is going to be the formalization of Stereo 3D support into the D3D API. Currently S3D is achieved by either partially going around D3D to present a quad buffer to games and applications that directly support S3D, or in the case of driver/middleware enhancement manipulating the rendering process itself to get the desired results. Formalizing S3D won’t remove the need for middleware to enable S3D on games that choose not to implement it, but for games that do choose to directly implement it such as Deus Ex, it will now be possible to do this through Direct3D and to do so more easily.


AMD’s Radeon HD 7970: The First Direct3D 11.1 Compliant Video Card

The rest of the D3D11.1 feature set otherwise isn’t going to be nearly as visible, but it will still be important for various uses. Interoperability between graphics, video, and compute is going to be greatly improved, allowing video via Media Foundation to be sent through pixel and compute shaders, among other things. Meanwhile Target Independent Rasterization will provide high performance, high quality GPU based anti-aliasing for Direct2D, allowing rasterization to move from the CPU to the GPU. Elsewhere developers will be getting some new tools: some new buffer commands should give developers a few more tricks to work with, shader tracing will enable developers to better trace shader performance through Direct3D itself, and double precision (FP64) support will be coming to pixel shaders on hardware that has FP64 support, allowing developers to use higher precision shaders.

Many of these features should be available on existing Direct3D11 compliant GPUs in some manner, particularly S3D support. The only thing we’re aware of that absolutely requires new hardware support is Target Independent Rasterization; for that you will need the latest generation of GPUs such as the Radeon HD 7000 series, or as widely expected, the Kepler generation of GeForces.

Under the Hood: Networking Improvements and Drivers Metro Apps Overview: Mail, Calendar, Messaging, People, Photos, and Camera
Comments Locked

286 Comments

View All Comments

  • PopinFRESH007 - Sunday, April 15, 2012 - link

    So you are saying Microsoft should have made OSX Lion, but without all the smooth animation nice looking graphics.

    #1 Full Screen Apps, and they do work great. Also mission control is very fast to switch between programs. When you make a program full screen, it creates it own virtual desktop space so you can fluidly move from your windowed programs and those you like to focus on with the full screen.

    #2 I don't know why you would want to force users to change what they like about customizing their desktop just to push a separate disjointed UI.

    And the rest of what you said, Apple has managed to do exactly what you described. You can test your programs extensively in Xcode (just like you can in Visual Studio) before submitting them to the AppStore. Apple also thought of the internal software developed by companies and they have an enterprise program that allows you to distribute your private software internally for iOS devices. This isn't needed with OSX yet because it's not a completely walled garden. Watch the video, and compare what you were describing to the information on the OSX Lion page.

    http://www.apple.com/macosx/whats-new/#video-lion
  • Wardrop - Saturday, March 10, 2012 - link

    On the page with the "Working with a mouse" section, you probably mention the inefficiencies of the "action bar" that appears at the bottom of the screen when you right-click some things, which replaces a traditional context menu. The biggest problem is that you need to move your mouse a lot further than you otherwise would need to with a context menu. If this remains, I know for sure that this will annoy the crap out of me, especially on a larger screen - it's just one of many examples where a touch-optimised interface has come at a sacrifice to pointer-based devices.

    Touch optimisation should be complementary to a traditional pointer-optimised interface. I don't understand why microsoft have been so careless with their implementation of a unified touch/pointer interface.
  • beginner99 - Saturday, March 10, 2012 - link

    ...is that at least for home use I think it could live and at work we are still using xp and will be upgraded to win 7 sometime this year. Its a safe guess win 7 will be around at least as long as XP.
  • akse - Saturday, March 10, 2012 - link

    "Start screen serves as a much more configurable and useful application launcher than the tiny Start menu ever was."

    I disagree. I don't need a fullscreen splash search feature for the software parser to parse through the stuff I type to the search field.

    I probably wouldn't need that start menu either, just a field to type in by pressing win-button and then some list of stuff it finds.

    Start menu as an application shortcut as of now in win7 is pretty ok too. It's not too messy and you can easily hide some extra stuff you don't use much under some folders (tools, software etc.). Sometimes i just browse it with mouse if I don't remember what I had installed.

    Also you can pin your favourites there or quick bar.
  • B3an - Saturday, March 10, 2012 - link

    You can pin anything the Win 8's Start screen.

    And searching is far better, you can see way more results. On my 30" monitors i get up to 150 results, with large easy to recognise icons. Compare that to a handful in the tiny cluttered Start menu.

    You're just another dinosaur who cant deal with change.
  • Zaranthos - Saturday, March 10, 2012 - link

    If Microsoft has the same attitude as you, insulting their long time customers who don't like change they don't even need, then they'll lose those customers and their money.

    I could make a full page list of improvements that could be made to Windows 7 and almost none of them will be in Windows 8 or probably Windows 9 for that matter. Trying to shove a new UI down peoples throats won't work out well for Microsoft.
  • JohnUSA - Saturday, March 10, 2012 - link

    I am not a pessimist, but I hate Windows 8 with mouse and keyboard experience.
    I really believe that Microsoft should have released 2 versions, one for tablet/touch screen users and the second for current desktop/laptop users. The desktop experience is not acceptable to me, so I will never buy Windows 8. Microsoft should go back to the drawing board and re-write Windows 8 just for mouse and keyboard use for users like me, which we are in the millions and the majority of users. I do not want Metro as it makes my life hell.
    My demand is simple, I want a good and efficient OS experience, and so far Windows 8 is not providing it.
    My prediction is that stupid and stubborn Microsoft is going to be a big loser as many users like me will not touch this abysmal and irritating OS.
  • dduncan - Saturday, March 10, 2012 - link

    in reply to hardware the acer w500 runs the 32bit W8 very good. Message: I am writing this hoping it will find its way to someone that will listen. I use my 7 year old granddaughter as my main ginipig for this experiment but I also took windows to work on a tablet and a small pc for people to try and I tested my wife and neighbor. Here are my results. For myself I use an Iphone (work supplied) a gaming pc at home along with a ThinkPad and a MacBook pro also I have a ipad 2, an Acer a500 and w500 (with windows 8). My experience is windows needs much better track pad support that's the only place a mac beets the window laptop machines. This on a laptop is 80% of my input. Windows 8 tablet is great much better than an ipad and android just sucks. On windows 8 I implore you to do three things. Easily let people chose what desktop to log into. Put the start button back. Make a new start button next to it to get into metro start menu. My reasons are as follows. First my neighbor he is retired, wealthy and smart. Loves the tablet and will buy one. He will not switch to a metro desktop. Can't figure out the business move behind you decision. This is coming from a successful railroad man. My wife uses the windows phone 7 so the windows 8 tablet was very natural for her she liked it very much but prefers her ipad because of weight which I'm sure will change buy the release date and she will probably switch to windows 8 tablet with the right hardware. On the desktop she will not use the metro u.i. even though she knows it. She is a secretary and very fast on a pc but the metro u.i. slows her down to do work. At work everyone loved the tablet with windows 8 so much so that our office manager which is a tech junkie like me ordered the Acer w500 and will have me put windows 8 on it next week. However everyone said no to a windows pc with metro u.i. and no start button. I can't emphasize enough no start button is a deal breaker. Our office always upgrades to the newest operating system. The ribbon in office was enough for them to all learn and there not about to learn a new interface. The big experiment my granddaughter. I let her use whatever she wants and never influence her on her choice. This can be nerve racking when a 7 year old is walking around without a care in the world and a five hundred tablet. She uses any phone android (her mom's) windows 7 (her grandmas) and my Iphone. She is proficient on all and shows us some tricks. It seems a phone is very much a tool for her so she doesn't care what type it is. On laptops she only likes the ThinkPad. I don't know why but she doesn't like to use a cheap Toshiba laptop I got her and she doesn't like the MacBook. On the tablet is what's most interesting. She loves the Ipad, hates android, and jumped right on the windows 8 tablet. In the few days she's got to use it. It seems as though it's her favorite by far. However on the desktop she won't use the metro u.i. and asked why they (you) would take away the way she gets to her stuff. In closing it is my beliefs that if you let internal politics and not consumers decide what the customer wants you will have windows 7 for ten + years like xp and a great tablet os. Very few upgrades and if people have to learn an operating system from scratch mac sales will go up and pc sales down. Very few offices will upgrade. Please just do three things to get a truly NO COMPROMISE (your new slogan) experience. LET PEOPLE CHOSE WHICH DESKTOP TO START ON. PUT THE START BUTTON BACK. MAKE ANOTHER START BUTTON NEXT TO IT TO GO TO THE METRO U.I.
    SINCERELY: David Duncan
  • Jyrkz - Saturday, March 10, 2012 - link

    first of all id like to point out that I'm a AMD-ATI fan boy, but im not one of does AMD boys that have anger management issues:D i do realize that intel is pwning amd in CPU VS CPU. Sad but true.
    But AMD has its own GPU(+APU if you know what i mean ), thats where intel will be blown away.
    This year ARM will arrive as well. I really hope AMD will beat ARM cause it would really suck if AMD was 3rd in CPU ;).

    Anyway, the review was nice! keep up the good work and you all be seeing me around here :D
  • Pantsu - Saturday, March 10, 2012 - link

    "For multi-monitor users, Microsoft provides some extra-wide wallpapers that can stretch across multiple screens, but there’s still no way to use a different wallpaper for each desktop, something that OS X has supported forever."

    Actually I think it can, at least my W8 desktop has 3 different wallpapers on my monitors.
    http://i.hardware.fi/storage/pictures/1024/eyefini...

Log in

Don't have an account? Sign up now