The Bane of Fast and Fluid in Windows 8
Microsoft just published on its Building Windows 8 Blog a treatise about realizing Fast and Fluid applications deployments for the platform. Fast and Fluid is the mantra that Microsoft adopted these days to describe responsive, naturally interactive applications designed for its Metro environment on Windows 8. They call them applications that “Sticks to your finger” while using touch. To realize this feat, Windows 8 was tuned for performance from ground up. We all cheered the responsiveness of Windows 8 and its speed. But there is a condition for this responsiveness that a lot of people are overlooking. The intensive use of Windows 8 of the GPU! Yes, your GPU will determine your experience on Windows 8. The combination of hardware GPU and its Win8 Certified Driver will result in experience that is equal or greater than you have now on the competing Apple platform.
So if you are having poor performance on Windows 8, with all things being equal, you should verify if you have a good GPU power to boot, and that you have the latest Win8 Compatible Driver for it. It is still an early days for Win8 Certified drivers, but you get the general picture. Troll your Graphic Card manufacturer site, hopefully you’ll get lucky with your existing hardware, that the OEM will release a Win8 Driver for it. The future Graphic Cards will of course come with Win8 Drivers, so we are covered there.
But the real kill-joy I have noticed at the moment is that MS is not making full use of the GPU capacity. A lot of Win8 activities are Calculations intensive, fast and fluid means a lot of number-crunching for the GPU. But what if you have GPU power to boot , but only a small portion of its capacity is being used, while the CPU is being peaked like we see here below:
You can see from above all my 4 logical CPUs are being tasked. I am simply writing this blog entry and at the same time running a 720p video with Media Player Classic (MPC-HC). A player that I know makes good use of the GPU. Below shows the use of the GPUs for the built-in Metro video player, Windows Media Player and the ubiquitous WMP-HC:
You can see only about 40% of GPU is being used. The following drill-down on GPU use showed only about one GPU cell being used out of 8 cells!
The same is seen for Media Player Classic that uses a little bit more of the GPU:
As you can see also about a single cell is being used for a third party player.
Now for those of you that don’t get my frustration. I am running this on my ASUS EP121 Tablet with Intel Graphic unit. It is not the best GPU but hey, it comes with the device. On a tablet device, battery life is paramount. You can extend battery life by offloading calculation intensive cycles to the GPU which is able to complete the task faster, which leads to less battery use.
So my question then to Microsoft is why the full capacity of the GPU is not being used by Windows 8. Why not go the full length and make efficient use of the GPU? 8 cores will finish video calculations faster than an single core if I am not mistaken.
I thought OK, maybe the video players are not yet optimized for GPU usage, below is the GPU usage for the Start Screen flipping; just panning the Start Screen right and left the full length:
As you can see, only one cell is still being used for Start Screen manipulation. What’s with MS and my Cell4?!
With this I can only reach two conclusions:
1. Either my Graphic driver is not Win8 Certified (But it was installed by Windows 8 itself! ASUS doesn’t provide any Graphic driver for Win8 like Samsung is doing. Shame on you ASUS!), and therefore not being used efficiently, or
2. Windows 8 is not yet optimized for full GPU usage. If this last is true, then I think I do the community a service by pointing this out now early in the game so that MS can get this fixed before Win8 goes gold. We are all enthusiastic about Windows 8, we believe MS has now something in-house to compete with Apple. We do not want MS to deliver a half-baked OS to the world if they can do better. Its time they wrest the crown of leadership again from Apple. We need to get off the image that Windows devices don’t have long battery life if wastage can be prevented.
Hopefully some you nerds out there will check your own devices and report back to me how Windows 8 is making use of your Graphic Driver. See this post on how to check your own GPU usage by Win8.
I welcome your comments below. Thanks.