Thursday, November 6, 2008
Microsoft WinHEC 2008: General Impressions
Numerous times over the past few days here at Microsoft's Windows Hardware Engineering Conference in Los Angeles, I've shaken my head. The online and print media (along with Microsoft blog troops') attention in the ramp-up to last week's Professional Developers Conference was extensive and intense, as was the coverage during the show. Conversely, the exposure of this week's conference has been comparatively muted, as is the press (and more general) attendance.
Granted, there's nothing incremental about the upcoming Windows 7 operating system being revealed this week as compared to last. And granted, given current economic conditions, I can particularly understand the press incurring travel expenses for only one show this time around...and that, naturally, media representatives would catch the breaking news at last week's PDC instead of waiting for this week's WinHEC rehash.
But although Microsoft's PR representatives repeatedly swore to me that developer registrations for this year's show paced those of past years, my eyes reached a different conclusion...as did my ears by virtue of feedback from participants in the miniscule (again, in comparison to years past) vendor showcase. With no disrespect intended to the software application community that PDC attracts, robust support from Microsoft's hardware partners is critical to the continued longevity of the Windows empire (a reiteration of an observation I made three months ago by contrast with Microsoft's key competitor, Apple). Look, for example, at the fact that a substantial percentage of the problems early adopters suffered with Windows Vista in 2007 were caused by Nvidia graphics driver imperfections.
Attendance aside, WinHEC was once again an excellent use of my time, particularly because several of the topics that have dominated my recent online and print coverage were also leading focus areas at the show. The value to me of being able to discuss new technology strengths, shortcomings and future trends not only with technologists but also with implementers cannot be understated. I absorbed so much new information on SSDs that I'll devote a dedicated writeup to them, which you'll hopefully be reading next Monday. For today, I'll shell out some shorter sound bites on other hot topics, such as enhanced support for multi-core CPUs and GPGPUs, and...
Many people outside of Microsoft, I think, see that Windows Vista's UI is reminiscent of past Windows releases and therefore greatly underestimate the amount of under-hood re-plumbing that Microsoft undertook in the Windows XP-to-Vista migration. While the technical challenge wasn't quite the same magnitude as, say, Apple's transition from OS 9 to OS X, it was comparable to the Windows 9x-to-NT evolution (which also encompassed subsequent Windows 2000 and Windows XP iterations). And unlike Apple in the OS 10.0 (and 10.1...OS 10.2 was arguably the first 'real' OS X version) days, Microsoft had to comprehend a comparatively huge installed user base, along with a comparatively enormous installed base of both applications and hardware peripherals (and their drivers).
In a perfect world, would Microsoft have preferred to delay Windows Vista until it was feature- and stability-wise comparable to where Windows 7 is now (and will further be when it's forecasted to 'go gold' at the beginning of 2010...or maybe even a few months earlier)? Certainly...several company representatives (anonymously, of course) admitted as much to me...and I didn't even need to ply them with alcohol first. But given that Windows XP's introduction dated to October 2001, fiscal pressures compelled the company to wrap up Windows Vista in late 2006. As a result, the last two years have been pretty painful ones for the company's operating systems division, but the road ahead will hopefully be much smoother.
What Windows 7 features and advancements particularly caught my eye this week? Glad you asked:
- (Largely) full driver backwards-compatibility: The graphics vendors will in particular have work to do, in order to encompass upcoming DirectX v11 (which I'll say more about in a bit, and which will also be retrofitted to Windows Vista) and Direct2D. But if a piece of hardware and its accompanying driver suite runs on Windows Vista, it'll very likely run fine on Windows 7 too, so I'm told.
- Faster boot: Windows 7 will launch start-up services, drivers and other chunks of code in parallel, versus sequentially, one of many Windows 7 nods to the now-here multi-core CPU era. A higher percentage (than operating systems past) of services will also launch on an on-demand basis, versus being enabled from the get-go, an approach which delivers the added benefit of...
- A lower average operating memory footprint than Windows Vista: This one's particularly intriguing to me, because it runs counter to the prevailing entropy tendency for software to fill all available space, particularly given that the migration from 32- to 64-bit Windows Vista is well underway (not necessarily because average computer users need it, mind you, but because DRAM is so incredibly cheap right now and computer OEMs are therefore using memory upgrades as a means of profitably up-selling customers...recall that 32-bit Windows has a 4 GByte DRAM ceiling). What's changed, though, is the emergence of the netbook, whose low price point necessitates a svelte memory budget that is unable to robustly run Windows Vista, thereby requiring Microsoft to extend Windows XP's life (as a counter to Linux). Another key means that Microsoft will reduce Windows 7's memory footprint is by eliminating the 'double-buffering' of foreground and background window data in both system and graphics memory...going forward, the graphics card will exclusively tackle this particular task.
- Lower power consumption: To some degree, Microsoft will pursue this objective by going through its own code base with a fine-toothed comb, finding and revamping algorithm approaches that unnecessarily keep the system CPU out of its lowest-power idle and sleep modes. Microsoft will also pressure its partners to similarly scrub their software; during the keynote, one specifically described situation involved a single USB device in the chain whose misbehavior was single-handedly sufficient to keep the USB root device from going to sleep, thereby keeping the CPU from also going to sleep.
- A more codec-agnostic approach than before: DivX (and Xvid), AAC, H.264, etc...these and other multimedia codecs will have native support in Windows 7, versus depending on costly, confusing and unpredictable third-party support. A similar inclusive perspective can be seen in upcoming v12 of Windows Media Player. Granted, this enlightened approach will cost Microsoft a pretty penny, since the company will shoulder the expense of technology licensing fees versus asking others to bear the burden (a big part of the reason why, for example, Windows XP didn't natively support MPEG-2). But it seems to me that Microsoft's learned a valuable lesson from Apple; an 'it just works' end result is more than sufficient justification for shelling out the cash up-front.
I'd also like to say a few words about DirectX. Microsoft caught a lot of heat (and not just from me) for its decision to restrict DirectX v10 to Windows Vista. The consequent small initial installed base initially discouraged software developers from crafting DX10-only (or even DX10-optional) titles, and it delayed graphics processor vendors' abilities to recoup their DX10-cognizant hardware development investments. By now, however, the Windows Vista user population is comparatively substantial, making DX10-derived software outlays a more palatable fiscal proposition.
I've mentioned before that DX11 will be increasingly amenable to GPGPU applications, and in one of yesterday's technical sessions I learned why; for the first time, the API will robustly support random-address accesses (specifically writes) to the graphics subsystem. With that said, I was very glad to see that the AMD (ATI graphics division) presenter gave a balanced portrayal of CPU-vs-GPU processing tradeoffs. After touting the much greater 'muscle' of the GPU than the CPU for certain classes of applications and data sets, he then admitted (as I recently pointed out) that getting a large data set to the graphics subsystem was a several-msec-delay proposition, with a similar post-processing latency to transfer the results back to system memory.
Next week will be a solid state storage-focused one here on Brian's Brain, beginning with Monday's WinHEC wrap-up and continuing with online addendums related to Thursday' publication of my HDD-vs-SSD hands-on feature article. Stay tuned for all of that, and until then, I welcome your feedback on what I've written here. Have a good weekend, everyone.
p.s...Gizmodo has a thorough walk-through of Windows 7.
© Reed Business Information, a division of Reed Elsevier Inc. All rights reserved.
