Original Link: http://www.anandtech.com/show/2163
What's New Since RC1?
While we saw a great deal of changes between our initial review of Windows Vista Beta 2 and Release Candidate 1, it should come as no surprise that there have been far fewer changes between RC1 and the final version we are looking at today. For better or worse, RC1 was the last chance for Microsoft to implement any changes in Vista that were design changes; everything since then has been in the realm of last-minute polish and bug fixes. As a result, certainly Vista is in better shape than ever before, but at the same time it means that design issues we identified have not been resolved.
Given that, prospective users of Vista are going to find that our previous complaints about the User Account Controls still stand. We still find it's a good idea and a major improvement over the lackluster security features of previous versions of Windows, but even with the improvements Microsoft has made to it, it's still too annoying from a power-user perspective.
When Vista first entered widespread public testing about a year ago, a series of screenshots were circulated showing the worst-case scenario for the number of operations required to permanently delete a single file. At the time it was six operations ranging from confirmation of the delete to granting security permissions to empty the recycle bin. To Microsoft's credit they've reduced that somewhat, but we can still replicate that situation and come up with a worst-case scenario that takes four steps. Two of those steps are the required confirmation for deleting the item and then emptying the Recycle Bin, but the other two are security confirmation steps and while it's admittedly nit-picking, it's overly redundant to require two security steps to delete a file; this makes it twice as hard as it is under any previous version of Windows. UAC security will be accepted up to a point, but even one more operation than is necessary is going to quickly cause UAC to end up disabled by those who know how to do it.
|Click to enlarge|
Similarly, launching an application that requires administrative rights is still more difficult than it needs to be. As we touched upon this briefly last time, with the launch of Vista a lot of common 3rd-party applications will continue to require administrative privileges to run correctly, and it will continue to be this way for some time until everyone has had a chance to retrofit their applications for Vista. Unfortunately, every time one of these applications is launched the user needs to approve the application, and like the deletion scenario this gets increasingly redundant as the same applications are reused day in and day out. A pre-approval method or some other system is desperately needed for Vista's UAC system if the goal is to maximize security while minimizing the number of users disabling these advanced security features. Otherwise there are only so many orange screens that one can stand before UAC becomes a victim of its super-secure design.
One of the few noticeable changes since RC1 has been the driver situation with Vista, which has steadily improved since we first looked at Beta 2. Between the final driver submissions for RTM and a much smarter Windows Update, Vista was able to install drivers for all of our hardware in one of our test systems, other than the driver for a PhysX card. Working drivers were found for our motherboard, video, sound, network, on-board SCSI, and even TV cards. This is likely the high point for Vista as newer devices will ship without drivers built in to Vista, but nonetheless it's a refreshing experience after the amount of work required to completely install a set of drivers on XP. With the ability to load drivers off of a USB drive at installation, it should never be that bad again either.
The one weak spot as far as drivers are concerned continues to be audio and video drivers, but that too has been improving. We'll take a look at later with our benchmarks of Vista, but video performance is much closer to that of Windows XP compared to our first look at Vista, at least as far as DirectX 9 titles go. DirectX 10 and OpenGL are not as clear as there are no DirectX 10 games (and they will require Vista regardless) and AMD is still working the kinks out of their new OpenGL driver for Vista. For audio, earlier concerns about the new audio stack breaking older games has been partially resolved as Creative Labs has released a DirectSound3D-to-OpenAL wrapper that works with some games, showcasing that it's possible to work around the stack changes.
Even with a lengthy preview article, there is still a lot of ground to cover when taking a close look at the final release version of Windows Vista. We have attempted to create a comprehensive look at the new operating system, but even then there are still plenty of items that will have to wait for another day before we can truly evaluate them. The big question that almost everyone is going to want answered is pretty simple: should you upgrade to Windows Vista now or wait awhile longer? That's a question we hope to answer by the time we finish this article, so without further ado let's take a look at some of the new features.
New I/O Features
One set of features we have held off on discussing in-depth until now have been the I/O related features in Vista, including ReadyBoost, ReadyDrive, SuperFetch, and the new networking stack. We'll get to the new networking stack in a bit, but first the Ready features and SuperFetch merit a bit of discussion.
Depending on the scenario, a great deal of computing time is spent waiting for data retrieval due to processors being significantly faster than the mass storage devices. To that extent modern computers have a hierarchy of several levels of data caches to store and manipulate data, ranging from registers and L1 cache down to hard drives and their own cache. This system of cache layers works very well in hiding the speed differences between various layers, but there are still large gaps between places such as the CPU and RAM, and RAM and hard drives. One possible improvement - and certainly the most effective solution that Microsoft has implemented in Vista - is to try to move up required data to a higher layer, in this case by keeping more data in RAM than just the bare minimum.
The result of this is the first I/O improving technology, SuperFetch, a new technology designed to cache as much data as RAM space allows. Previously, Windows XP had a more basic implementation of this idea called prefetch, which used trace logs of programs loading in order to help XP optimize the loading sequence. SuperFetch in turn takes things a step further by not only figuring out what data is required to launch an application, but it actually loads this data into memory as space allows so that if it's needed at a later point the data is already in RAM instead of still residing on the hard drive.
In practice, SuperFetch depends a great deal on how predictable a user is and how much extra RAM a computer has. Veteran computer users will be slightly dismayed at first to find that Vista is actively attempting to use the entirety of a computer's RAM (down to 0MB of free memory remaining), which is effectively the opposite of how XP attempted to conserve as much memory as possible. This looks worse than it actually is, as cached data can immediately be thrown away to make space for an application as required, but Microsoft has nonetheless attempted to clarify things since Beta 2 where the Task Manager would only show total memory usage. Now the Task Manager makes it clear how much RAM is being used for program execution and how much is being used for cache, but this will still inevitably spark a few debates on if full RAM usage is really a good thing. Given that RAM tends to be a low power device operating at near full power all the time (especially on desktop machines), we feel RAM is the ideal underutilized component to try to fully exploit, as it doesn't incur the extra power costs of running at full load like a CPU/GPU do.
However as we mentioned previously, the total benefit is dependent in predictability and excess RAM. As SuperFetch is designed to predict what applications a user may load next and then pre-load them into cache (i.e., a user loads Outlook at 10am every day), it works better for users with routines than those without. Similarly, as Vista attempts to use all RAM for the cache, it can always benefit from more RAM to keep more things cached (a behavior similar to MacOS X).
Memory in Vista: How much do you need?
Meeting with memory makers has been fun these past several months - they're all so happy. It's a stressful business, but these days the memory makers are quite excited about Vista and after using the OS for a while now we can understand why. You've undoubtedly been hearing that Vista's memory requirements will be greater than those of XP, but how much greater are they in practice and why?
First and foremost, Vista's memory requirements are higher than XP's simply because there is much more to Vista than XP. There are far more background tasks to take care of, a much more complex UI, and a code base that's significantly larger than that of Windows XP. All of these items require memory, and thus when you boot up a Vista machine with 512MB of memory, almost all of it is already being used.
Microsoft and software makers in general are notoriously bad about understating minimum system requirements, so when you see that the bare minimum requirements for Windows Vista list a system with 512MB of memory, you should know right off the bat that this isn't going to be a pleasant experience. Although Vista will do its best to disable background tasks and neat effects to make using your computer less painful with 512MB, we simply wouldn't recommend it. You can get by running a single application, such as IE7 or Outlook, but multitasking is out of the question. In one of our test scenarios we had four applications open and attempted to close one of them. This process took around 2 seconds if we had 2GB in the system, but it took over 12 seconds if we only had 512MB. Most of us really don't like using Windows XP on a system with only 512MB, and needless to say Windows Vista turns that dislike into outright hatred. Windows XP is more tolerable with 512MB, but we would make a very similar characterization about the overall experience on a system with such little memory.
The experience completely changes with 1GB; the improvement is tremendous. Searches appear quicker, applications launch and close faster, and using the OS is just so much better. Once again, we're not telling you anything you haven't heard before, except that 1GB should really be the minimum for any Vista machine and not just those that are Premium certified. Even our budget Buyer's Guides have recommended at least 1GB of RAM for over a year, and Vista pretty much makes that a requirement.
It's the above-1GB range that really has most of us concerned. For the longest time, 1GB was sufficient for most enthusiasts under XP. As applications and usage models got more demanding, and as memory prices dropped, the move to 2GB made sense. Above and beyond 2GB never really made a lot of sense because Windows XP didn't seem to do much with the added memory. Even if you had unused memory, Windows XP didn't really make the most of it resulting in even recently used programs being paged in from disk instead of loaded out of the main memory cache. Vista changes all of this.
If your memory usage under XP kept you just under needing more than 2GB, you'll need 2GB with Vista. We took two identical installs, one with Windows XP and one with Vista, both equipped with 2GB of memory and ran the following scenario on them:
We opened 104 images in Adobe Photoshop CS3 from our recent trip to Las Vegas for CES 2007; with all 104 images opened and loaded, we then timed how long it would take for Microsoft Word to start. In Windows XP, despite some swapping, Microsoft Word 2007 started in just under 8 seconds. On our Vista test bed, starting Word took almost 20 seconds due to constant paging to disk. The only difference? Vista's heightened memory requirements took a stressful situation that worked reasonably well under XP and made it far more painful with the same amount of memory.
We then upgraded the Vista machine to 3GB and ran the test again; thanks to faster application load times and intelligent prefetching, Word started in 1.31 seconds. If you thought that 2GB was the sweet spot for Windows XP, chances are 3GB will be the new minimum for you under Vista.
Thus far all we've talked about, at a high level at least, are static memory requirements and how they are impacted by Vista. Vista uses more memory and in turn, you'll need a bit more memory to get a similar experience to what you had under XP. With SuperFetch however, Vista can actually significantly improve your system's performance if you throw more memory at it.
The Impact of SuperFetch on Vista Memory Usage and Performance
As we've already explained, the premise behind SuperFetch is simple - it's an intelligent software mechanism that monitors frequently used pages and does its best to keep them in memory. In other words if you run Photoshop a lot, SuperFetch will take notice and try to keep Photoshop.exe and its associated libraries in main memory so long as you don't need that memory for anything else. The real world impact of SuperFetch is tremendous: the more memory you have, the more your frequently used applications will load very quickly.
SuperFetch works like this: Vista will load anything it needs to load in memory first, and any applications you manually run will also be loaded into memory. Any memory left over is fair game to be used by SuperFetch as a cache of frequently used pages. Vista keeps track of what memory pages are frequently requested and what files they are tied to, and based on that data SuperFetch will populate as much free memory as it can with pages it believes you will need in the future. This data contains both frequency and temporal history, so not only how often but when you run these applications will influence what SuperFetch does at any given time.
SuperFetch has a number of counters and data structures that have to be loaded into main memory to make this whole process work. The end result is that SuperFetch is part of what makes Vista's memory requirements greater than XP's, but if you've got the memory to spare the payoff is huge.
While it's very difficult to benchmark the impact of SuperFetch well, in our usage of Vista if you have enough memory it is a tremendous ally. Honestly SuperFetch is the biggest reason, in our opinion, to move to the x64 version of Vista so you can use even more memory. Although we found that 2GB of memory is still quite passable under Vista, the new sweet spot if you happen to multitask a lot is 4GB - in no small part due to how well SuperFetch utilizes the additional memory. Do keep in mind that you'll need to make sure your motherboard has proper BIOS support for 4GB and also make sure Vista x64 has driver support for all of your peripherals before committing to the move.
In an ideal world, you'd have more than enough memory for SuperFetch to go out and pull all of your regularly used pages into main memory so that all applications would load without waiting on your hard drive. In reality however, the vast majority of computers have less than 2GB of memory, and when multitasking there's simply not that much room in memory to keep other large applications cached. SuperFetch wouldn't be a very useful technology if it kept cached pages active in memory even when you needed that memory for other applications, and thus if you run out of memory SuperFetch will begin swapping its cached pages out to disk from main memory.
SuperFetch is intelligent however; as soon as you are done with the application that evicted cached data from main memory, SuperFetch will bring those frequently used pages back into main memory.
Repopulating the SuperFetch buffer is a time and disk intensive process; think about how long it takes to copy 1GB of data off of your disk and you'll have a good idea of how long it will take for SuperFetch to recover evicted data. With a good amount of historical data, SuperFetch will often take a couple of minutes after Vista starts up to begin pulling data into memory from the disk, which means you'll be hearing quite a bit of disk activity as it does this. This also means that a faster disk will help SuperFetch behave more seamlessly, although you're still better off spending money on more memory to keep SuperFetch from having to page back to disk.
How much RAM do you really need for Windows Vista? We recommend a bare minimum of 1GB of memory for all Vista users, 2GB if you're a power user but don't have a lot running at the same time, and 4GB if you hate the sound of swapping to disk. While SuperFetch definitely makes applications load faster when it works, it's still difficult to say for sure how effective it is without more testing time. Routines can sometimes change, so it will be interesting to see how fast SuperFetch can adapt to new usage patterns. We're also not sure how frequent gaming (which can easily use several GB of data in a session) will affect SuperFetch, so that's something that we will have to assess more as time passes.
Of course, not all systems have the luxury of large amounts of excess RAM, which brings us to another way of manipulating the cache hierarchy to extract better performance: inserting another level. Between expensive-and-fast RAM and cheap-but-slow hard drives, flash memory has quickly developed over the last decade as a storage medium that balances speed and size between hard drives and RAM - it's cheaper than RAM in similar quantities while still being an order of magnitude faster to access than a hard drive. ReadyBoost is Vista's technology to take advantage of flash memory as a new member of the cache hierarchy.
ReadyBoost functions as a compliment to SuperFetch, giving SuperFetch another place to cache data that - while not as good as RAM - is better than just reading data off of the hard drive. An important distinction however is that while RAM is both quick to access and has high transfer rates, flash memory only offers quick access times, with transfer rates below that of even hard drives. As a result ReadyBoost is only useful in situations where small random data accesses are required, whereas larger transfers that may need sequential access are sent directly to the hard drive. This makes ReadyBoost less readily beneficial than SuperFetch, but with USB flash drives going for under $20/gigabyte, it's a cheap and effective way to boost performance of RAM-limited computers in a number of situations.
ReadyBoost also serves as a read cache of the system pagefile, with the idea that swapping to disk is less painful if it's done to a USB flash drive. Don't worry about sensitive data being kept and lost on your USB drive though; the data is compressed and encrypted so that it should be fairly useless once the drive is removed from use.
While there's potential for ReadyBoost to actually reduce performance, if you have a very fast hard drive, Microsoft has done a lot to address this; before a ReadyBoost cache file is created on the flash drive Vista will run a quick series of tests to make sure the drive meets minimum requirements. If the drive fails these tests, you won't be able to use it as a ReadyBoost device. Most new drives will tell you on the packaging whether or not they will work with ReadyBoost. In our testing, ReadyBoost never reduced performance regardless of what hardware it was coupled with.
For all of our tests we used an 8GB Corsair Flash Voyager, but note that the maximum size for a ReadyBoost cache file is 4GB. You can also only use one ReadyBoost device per system, so don't get any crafty ideas of having 8 USB drives plugged in to improve performance.
It almost sounds too good to be true - just plug in a USB drive and you get an instant performance upgrade. At the same time, it sounds a little hard to believe; flash memory is fast, but so are modern day hard drives. While it's true that USB flash drives aren't bad at random I/O, performance with small file sizes isn't exactly anything to brag about.
We spent days trying to test ReadyBoost and come up with benchmarks to truly showcase its real world impact on performance. Although it shouldn't be a surprise to you, ReadyBoost impacts application loading, closing and switching time, but CPU intensive tasks aren't impacted nearly as much. As such, most of our conventional benchmarks, even when running with only 512MB of memory, don't serve as a good benchmark for ReadyBoost. If your system has so little memory that it is swapping to disk while running a single task then you're in trouble, and ReadyBoost isn't going to save you.
Our first ReadyBoost benchmark has us encoding a video using Windows Movie Maker and benchmarking the completion time.
This is one of those cases where ReadyBoost isn't given the chance to do much as the task we're running is mostly CPU bound.
Another example of a situation where ReadyBoost isn't able to do much is in one of Intel's Vista benchmarks - a Microsoft Word 2007 document compare test. This test simply takes two documents and compares them, generating a third document created from the differences between the two documents. The test has an I/O element to it as it is reading large Word documents from the hard drive in order to compare them.
Once again there's virtually no performance difference that can be attributed to ReadyBoost.
This next test is pretty simple, we started Adobe Photoshop CS3 and timed how long it took for the application to start and finish loading 14 images.
ReadyBoost does increase performance, cutting down the load time by around 13 seconds. In this particular test the performance impact of ReadyBoost levels off once you have around 1GB of flash memory. The real point to take away however is the performance benefit you get from ReadyBoost: even with 4GB of ReadyBoost storage, it is nowhere near what you get from simply moving to 1GB of memory.
We then looked at how long it took to close Photoshop/images with the various configurations:
There's a pretty sizable performance impact due to ReadyBoost, but once again, you can't beat simply having more system memory.
Our final ReadyBoost test was a bit more strenuous: we opened Adobe Photoshop CS3 along with 22 images, iTunes, Microsoft Word 2007, Adobe Reader 8 and an Explorer Window. We then timed how long it would take to simply close all of those windows and get back to the desktop. The results are below.
ReadyBoost makes a very significant impact on performance here. With 4GB of flash dedicated to ReadyBoost, we saw an increase in performance of over 47%. However for the cost of a 4GB flash drive you could probably upgrade to 1GB of memory which results in an even larger performance gain. That said, if you don't want to open up your system, ReadyBoost does actually work.
Impact of Drive Performance on ReadyBoost
For our ReadyBoost tests we used a modern hard drive, a Western Digital 500GB drive. We wanted to find out if ReadyBoost had an even greater impact if your system has a slower drive, so we switched to a five-year old Western Digital WD1000 100GB drive to see how ReadyBoost's impact changed, if at all. We took three benchmarks - the Movie Maker, Word, and Application Close tests - and ran them on the WD1000 to compare performance scaling with ReadyBoost.
ReadyBoost doesn't seem to do any better with a slower hard drive, although we'd suspect that you may see bigger gains on similarly old notebook drives.
The last I/O feature before we get to networking is ReadyDrive, a technology that is closely related to ReadyBoost. Whereas ReadyBoost is designed for use with external flash memory, ReadyDrive is based around internal flash memory, which has been cropping up in recent years in so-called hybrid drives (hard drives featuring large amounts of flash memory as a cache) and with Intel's Robson technology (which puts flash memory right on the motherboard). In both of these cases this internal flash memory has the added advantage of being unremovable and hence more reliable (as a USB flash drive could be removed at any second along with its cached data), which opens up a few more uses of flash memory as a cache.
On top of the standard caching uses to improve general performance, ReadyDrive can use this internal flash memory as a way to improve hibernation recovery and boot times, as flash memory could be a faster non-volatile data storage than a hard drive. Use of this flash memory also stands to reduce average hard drive power usage (a particularly important item for notebooks), as caching of data can allow Vista to spin the hard drive down more often. Finally, integrated flash devices are likely to be faster overall than most external flash drives, for a couple of reasons. First, pulling data over a USB connection tends to require a bit more work. Second, we would expect most integrated flash devices to use higher performance flash memory.
Coming up with tests for ReadyBoost was a bit tricky, but testing ReadyDrive is even more so. Besides creating some reasonable test scenarios, you also need hardware that supports ReadyDrive. It is also likely that various ReadyDrive devices will offer differing levels of performance. For these reasons, we will hold off on trying to benchmark ReadyDrive for a future article.
Under The Hood: I/O Priority and Networking
Along with working to modify the traditional cache hierarchy for better performance, Vista includes the introduction of several new technologies designed to help applications better utilize disk and network bandwidth. For disk bandwidth, Vista now includes an I/O priority system that allows applications to specify the priority of their I/O operations so that Vista can service the most important operations first, not unlike the priority system for applications. This is in comparison to XP which executes all I/O operations as if they have the same priority, which results in other applications having their own I/O operations slowed down even if they're more important.
With only four levels of priority (two of which are effectively for exclusive use by Vista), the I/O priority system in Vista isn't nearly as refined as the application priority system, but it's enough to get the job done. With two remaining priority levels, the benefit of the priority system to users is that traditional background tasks such as virus scanning can not only be low-priority tasks for the CPU, but now the disk too; anyone who has attempted two I/O heavy operations before has seen firsthand how they often cause the operations to take longer than their sums to complete. The new I/O priority system won't entirely alleviate any slowdowns caused by background applications as these requests have to be serviced at some point, but by reducing the interruptions caused by background applications these applications can be run without bringing a system to quite as much of a halt.
Somewhat related, I/O operation size has also been increased. Previously, Windows broke all I/O operations down to 64KB requests, which causes some overhead as each chunk of a larger operation needs to be processed separately. Vista no longer has a cap on I/O operation sizes, and will now attempt to execute I/O operations with the size a program requests. Microsoft has used Explorer as an example, where the copy command now uses 1MB operations.
Along with the changes in disk I/O to better maximize disk performance, Vista also implements a new TCP/IP stack - the so-called "Next Generation TCP/IP stack" - that includes new features to better maximize network utilization. However, since networking changes can affect entire networks and not just a single machine, only one of these features - Receive Window Auto-Tuning - is enabled. The other feature - Compound TCP - is disabled due to the potential to interrupt other machines on a network and/or hurt the client's network performance.
To discuss Receive Window Auto-Tuning, we must first quickly talk about TCP/IP networking and what a receive window is. In the most basic of terms, the receive window is the maximum amount of data that a sender can transmit at once before it must wait for an acknowledgement (ACK) from the receiver signaling that the data was received successfully. Once an ACK is received, the sender can begin transmitting more data. This process is intended to keep the sender from flooding the receiver with data, which could cause lost packets and other performance-reducing problems. The ideal size of this window varies upon network conditions and must be continuously renegotiated to maintain a transfer and maximize bandwidth usage; factors include both bandwidth and latency of a connection between two devices. For example, a computer using a dial-up modem can't send or receive data anywhere near as fast as a typical Internet server, so it would seldom have more than about 6 kB of data in-flight at once. Conversely, a high-speed broadband home computer might have several hundred kB of data in transit at once.
With Windows XP, the receive window could be scaled as needed, but it was not a fine-grained system. Except in specific cases, the maximum receive window size was a global value for all TCP connections. While on average it was usually good enough, it could be a poor value for specific connections. This is especially the case on high latency and high bandwidth connections, which is why one common tweak to improve networking performance for Windows machines with a broadband connection is to manually adjust this value - Windows simply didn't allow a window to normally scale to a large enough size to best utilize some broadband connections.
Auto-Tuning is a resolution to the inefficiencies of XP's scaling system, and it makes window scaling a more finely-grained operation. As the ideal receive window size is exactly the amount of data that can be in-flight between a sender and a receiver - the bandwidth-delay product (the product of the speed of a connection and its latency) - Vista's auto-turning system is designed to surpass XP's scaling system by not only allowing larger windows, but by also attempting to make a best-guess on the bandwidth-delay product in order to maximize bandwidth usage. Additionally, this is now a per-TCP connection attribute instead of a global attribute, allowing each connection to be more efficient rather than using the average connection values. As this is a safe optimization (QoS issues notwithstanding), this is one of the networking features enabled by default under Vista.
The other significant addition to Vista's TCP/IP stack is Compound TCP, the product of an earlier research project by Microsoft in combining several different known techniques for maximizing bandwidth usage under high latency conditions. Under these conditions, traditional TCP traffic algorithms are reliable but slow to let the sender and receiver increase their windows to fill very large bandwidth-delay products. This is because traditional TCP is inherently a conservative and well behaved system based on reliability and sharing as the most important properties.
Compound TCP on the other hand is the merger of several aggressive algorithms - including Fast TCP, High Speed TCP, TCP Vegas, and TCP Reno - which when combined are far more aggressive at trying to quickly maximize bandwidth usage while maintaining reliability; unfortunately, these algorithms weren't originally designed to work all that well with traditional TCP. To that extent, in order to make Compound TCP safe for use on larger networks, Microsoft has reworked these algorithms so that they are effectively a single algorithm under Compound TCP, and their over-aggressive nature has been removed so that they will not dominate over traditional TCP traffic.
The end result is that while Compound TCP is designed to be safe, it's a cutting-edge technology that is not well tested, and for this reason it is disabled by default on Vista. Longhorn Server will be the first Windows product to ship with it enabled by default when it ships later this year. In our network tests, we have tested Vista both with Compound TCP enabled and disabled so that you can see the results of using it; however, until Compound TCP has undergone some more rigorous testing we would caution that it's not advisable to enable it on home computers or in production environments.
Just to get a quick idea of what these new features can do, we ran our usual networking benchmark suite on a pair of ASUS P5B-Deluxe motherboards using both the on-board PCI and PCIe connected gigabit network controllers (Marvell 88E8056 and 88E8001 respectively). We used two tests for this, a multiple small file transfer test consisting of about 450 files totaling 600MB, and a large file transfer test consisting of a pair of ISO images totaling 3GB. In order to keep the load on our D-Link Gamer Lounge router consistent, we also had the WMV-HD version of Terminator 3 streaming in the background. We tested Windows XP SP2 for a base score, followed by Vista with Compound TCP switched on and off.
Unfortunately for Vista, neither test is particularly favorable. Compared to XP when Compound TCP is disabled, Vista is anywhere between 25% and 50% slower than XP in terms of the total time required for these tests. Without the ability to separate Vista's networking stack from the drivers for our NICs, it's impossible to tell if this slowdown is the fault of the networking stack being worse for this situation, or if the Vista drivers for this line of Marvell NICs are not quite as tuned, so as a comparison to XP this test is inconclusive. Either way, for this particular setup Vista ends up being slower at file transfers than XP.
The one bright spot however is that when enabled, Compound TCP is clearly having some effect even on our low-latency network. The 5% or so boost in Vista's low scores won't bring it back above XP, but it clearly proves that Compound TCP does have a real-world effect on performance. This will be something we will be able to talk more about as Microsoft perfects this algorithm set for the release of Longhorn Server later this year. Hopefully, the relatively slow performance we're seeing right now is being caused by drivers rather than by Vista's "new and improved" networking stack. We will definitely keep an eye on networking performance over the coming months, as most of the people we've talked with expected Vista's networking performance to be faster than XP's.
CPU Performance and Threading in Vista
While we found memory requirements in Vista to be greater than XP, CPU requirements weren't as much of a big deal. There are parts of Vista that will obviously benefit from faster CPUs, but if you have anything in the Core 2 or Athlon 64 X2 class you should be just fine. The argument for dual and quad core processors remains relatively unchanged with Vista. For multitaskers and many CPU-intensive workloads, a dual core CPU makes perfect sense. Vista doesn't make the argument for dual or quad core any more compelling than XP in our opinion; the additional background tasks that run in Vista that weren't present in XP don't really eat up that much CPU time to begin with, so dedicating an entire core to them isn't necessary.
The new applications in Vista don't appear to be any more threaded than XP, despite Vista being heralded as the beginning of a highly threaded future. Microsoft Word remains single threaded, although Excel can now take advantage of multiple cores when performing calculations. Windows Movie Maker seems to be optimized for two cores, while importing and attaching files in Photo Gallery is surprisingly single threaded. Dual core still makes a big difference in the overall experience, while quad core still isn't necessary but remains useful for a handful of situations.
With high definition video playback and encoding being two very big drivers of CPU performance and number of cores, Vista will be the OS under which new highly threaded applications really start to appear but there's no reason to feel like four cores are necessary to run Vista today. An interesting bit of trivia is that on a Core 2 Duo E6300, simply opening a new Explorer window in Vista will eat up about 19% of your total CPU time while the window opens and animates; turning Aero Glass off doesn't change the CPU usage either. Maybe four cores are necessary...
Vista Search for Fast Drives Only?
In our opinion the two biggest reasons to migrate from XP to Vista are its Search and SuperFetch technologies, as they both dramatically impact productivity. When Mac OS X introduced system-wide indexed search functionality, we wondered if disk performance would dramatically impact how responsive the search was. More specifically, would notebooks running OS X have significantly slower search times than desktops with faster 3.5" drives? Under OS X, while we noticed a difference between desktop and notebook drives, it wasn't large enough to render the feature crippled on a slower drive. Thankfully, the same can be said about Windows Vista.
We noticed absolutely no difference in how long it took indexed search results to appear whether we used a 150GB 10,000RPM Western Digital Raptor, our 500GB WD test drive, or even a 5-year old 100GB drive - the results were always near-instantaneous. In fact, a much larger impact on search performance was how much memory the system had. The less system memory you have the more disk I/O there's going to be due to swapping data in/out of the pagefile, and that I/O ends up reducing search performance tremendously. We noticed a much bigger search performance improvement going from 512MB to 1GB of memory than going from a 5-year old drive to a modern day, high-end 10,000 RPM Raptor.
While performing searches didn't show any difference between various hard drives, there is a noticeable performance difference between drives when it comes to how long it takes to index your drive if you should have to rebuild your index. The chart below shows the amount of time it took to rebuild Vista's search index on the three drives we've been using in this review:
Obviously the larger the amount of data to index, the greater the impact drive speed will make on it, but this should give you a bit of a reference point. Of course all of the normal benefits of moving to a faster drive still apply (faster application launches, documents open quicker, games load faster, etc...), but the point we're trying to make here is that if you've got a reasonably fast drive already, don't feel like you have to replace it in order to keep up with Vista.
Overall Vista Performance: XP vs. Vista vs. Vista x64
Benchmarking in Vista is an extremely difficult task, thanks to features like SuperFetch designed to improve performance at the sacrifice of repeatability. We're in love with SuperFetch as a feature, but it does make our jobs a bit more difficult as we have to be very mindful of what has been cached into main memory and how that impacts the performance of our benchmarks. Testing difficulties under Vista are compounded by the fact that our major test suites don't work under the new OS. SYSMark and PC WorldBench simply won't run and thus we have to rely on individual application tests and home-brew scripts to measure performance.
Our goal for this article was to find out if Windows Vista, on modern day hardware, continues to be slower than Windows XP as it has been in previous beta and RC versions. The secondary goal is to look at x64 performance to see if it too has changed behavior, to the point where you no longer need to worry about losing 32-bit performance if you move to the 64-bit version of Vista. We ran a handful of application tests to compare the three OSes (XP, Vista and Vista x64), and later on we'll focus on gaming tests as well to showcase graphics performance.
PCMark '05 Performance
Despite looking quite synthetic, PCMark has grown into a nice lightweight alternative to the big application suite benchmarks like SYSMark. It was also one of the first benchmarks to get official Vista support, although it remains a 32-bit only test.
Performance under PCMark is fairly close between Vista and XP, with XP generally holding on to a 1% - 4% performance advantage in most of the categories. The only exception to the rule is the graphics score of PCMark which has XP at around 35% ahead of Vista, but we'll address graphics performance shortcomings of Vista later in the article.
The difference between the 32-bit and 64-bit versions of Vista are hardly pronounced, with the two being evenly matched across the board. Once again, remember that PCMark is a 32-bit benchmark so it is running in Windows on Windows (WOW64) mode. That it can remain competitive is good news, but whether that's because WOW64 works well in all cases or it is merely optimized for PCMark05 remains to be seen.
3DMark '06 Performance
We chose to include 3DMark '06 performance here instead of with our game tests to look at the gaming performance of Vista on a system level rather than a GPU level:
Overall XP is about 6% faster than Vista, although the 3DMark06 CPU score is nearly 13% higher on XP than it is on Vista. As a 32-bit benchmark, it's once again good to see no negative performance difference between the Vista x86 and x64 versions.
General Application Performance
Our 3dsmax 8 tests are particularly interesting under Vista because they showcase the poor OpenGL performance of current Vista GPU drivers in something that isn't a 3D game:
If we switch to Direct3D for 3dsmax, the performance delta narrows considerably to the point where XP only has a 2% performance advantage over Vista.
Encoding Performance using DivX and WME9 are both slightly slower on Vista than under XP, but the difference is negligible.
Application Launch Performance
Similar to our earlier ReadyBoost testing, we timed how long it took to open Adobe Photoshop CS3 and 14 images under the three OSes,
Finally we have a benchmark with Vista is faster than XP, and for some reason Vista x64 is even faster than that.
Office 2007 Performance
Our final two Vista vs. XP tests are from Intel and they measure performance in Microsoft Word 2007 and Excel 2007.
Document comparison performance in Word is about 7% faster under XP than under Vista, while numerical calculations under Excel are about equal under both OSes.
What Else Is New?
Although we've spent a good deal of time discussing major new technologies and features in Vista, modern operating systems also include a number of smaller technologies and applications which have also been introduced or given a facelift in Vista. We won't cover everything, but here are some highlights of the new additions to Vista.
System Restore/Volume Shadow Copy/Previous Versions
When Microsoft released Windows Millennium Edition back in 1999, one of the few novel features in the operating system was a feature called System Restore, which kept regular on-drive backups of system files so that if a new driver, configuration error, or similar event interrupted Windows' ability to function correctly, a user could roll the system back to an earlier and hopefully functional state. This tool was further refined in XP but it remained fundamentally the same; it was a solution to protect the system and not the user.
For Vista, Microsoft has finally extended that protection to the user by integrating one of their technologies developed for Windows Server 2003: Volume Shadow Copy. Volume Shadow Copy can keep multiple copies of a file/directory stored so that if for any reason an older copy of a document needs to be restored, this can be done quickly within Windows by picking among the shadow copies created whenever Server takes a snapshot of the file system. With Vista, Volume Shadow Copy has been integrated into System Restore so that System Restore now uses Volume Shadow Copy for keeping snapshots. This allows System Restore to completely backup all files now and not just system files, and it allows Windows to restore single files instead of entire snapshots.
While all versions of Vista technically have this feature, only Business/Enterprise and Ultimate have it enabled, as Microsoft is initially pitching this as a business feature. Lower versions of Windows still have System Restore, but it does not keep track of all user files like it does in the higher versions. To keep these two features separate, Microsoft refers to the ability to restore user files via Volume Shadow Copy as Previous Versions, but since the snapshot process is controlled via System Restore, this makes for a poor distinction that will end up confusing at least a few people.
For all users of Vista, Microsoft has now fixed the maximum System Restore cache size at 15% of a drive's capacity, whereas it was previously a variable setting. The amount of disk space used is dynamically allocated, so it is not quite an all-or-nothing proposition, but it's possible to eventually fill the 15% allocation depending on the habits of the user. To this extent Vista goes through a fair amount of effort both to only capture changed data (at the volume-block level since VSS works on whole volumes) and later throw out unnecessary files, so for most systems a 15% cap offers a long enough file history for the feature to be useful. However, on large hard drives the amount of reserve space may grow to be more than is truly necessary -- and on smaller hard drives it might not be large enough to store an acceptable number of copies. The old method were System Restore could be designated a variable amount of drive space via the GUI seems to make more sense.
Given that Apple will be releasing a similar technology in the next release of MacOS X, we wouldn't rule out Microsoft enabling Previous Versions functionality on some consumer versions of Vista in the future - the technology is there so enabling it would allow them to keep feature parity with MacOS X even though the latter is being released later. In the mean time however, this is one of the features that makes the Business or Ultimate editions a more compelling purchase than the Home versions.
Update: After talking to Microsoft's System Restore group, they have given us two additional pieces of information: 1) The Volume Shadow Copy service functions the same way on all versions of Vista as long as System Restore is enabled, including backing up user files. This means it's possible to get a variant of the Previous Versions functionality even on lower versions of Windows if someone were to write an interface for it. 2) The ability to modify the size of the System Restore/Shadow Copy cache is still available via the console with the vssadmin resize shadowstorage command.
New Features, Continued
As part of the release of Vista, Microsoft has been refocusing its efforts on PC gaming (after they have drifted away for years due to other products such as the Xbox). While core technologies such as DirectX 10 will be a large part of this, the new Games Explorer application is the other critical software component.
In short, Games Explorer is designed to be a single interface for launching and controlling all games, making them a part of Games Explorer instead of being just another application from the view of the operating system. Microsoft sees this as a way to standardize how games are played and used, and Games Explorer can help users find websites related to a game such as a home page or support site, alert them if their computer doesn't meet the performance score required for a game, and list the age rating for the game from several different databases such as the ESRB.
|Click to enlarge|
Microsoft has done a fairly good job of filling in the games database for the Games Explorer, as it recognizes and adds most major games, but some titles such as Half-Life 2 still give it trouble due to the fact that Steam sits in between the Games Explorer and the game. This shouldn't be a problem for new games however, as part of Microsoft's requirements to qualify for the Games for Windows labeling and promotional program is that they have to adhere to certain requirements, such as Xbox 360 gamepad support and Games Explorer support.
At this point the most practical use for Games Explorer is its integration with Vista's parental controls, which allows parents to lock out games based on their rating. Casual gamers will also find it useful due to the ability to identify performance ratings, while hardcore gamers will likely avoid the Games Explorer because it doesn't do anything useful for them. On the bright side, Games Explorer does serve as a centralized location of all of the installed games on a computer, and upgraders might get a nice trip down memory lane when they see what still resides on the hard drive.
We touched on parental controls quickly with the Games Explorer, but the parental controls extend beyond just games. Also included are web filtering, time limits, activity reporting, and the ability to block/allow arbitrary programs. The web filtering will likely be a touchy issue for parents and privacy advocates alike, as this is a manual system where categories are issued by Microsoft.
|Click to enlarge|
In our quick testing of parental controls it has worked as advertised, and the web filter didn't let through any immediately objectionable sites. To Microsoft's credit the system is easy to configure, however the Achilles' heel will be that it only really works with standard accounts, as any kid who can trick their parents into giving them administrative privileges will be able to disable the controls.
We've also talked about Vista's indexed search system quickly in our look at Beta 2, as well as in terms of performance on various hard drives earlier in this article. Now that Vista has been finished it's worth discussing again. Compared to our initial look, Microsoft has debugged the search feature and it now works correctly in all of our attempts to test and break it. However, it still needs to be configured to index additional locations if users keep files outside of their home directories, which is still not immediately obvious to new users of Vista.
Out of all the new features added to Vista, this is likely going to be the first used and most useful features introduced in Vista. While it has been done before in other operating systems, and 3rd-party applications have implemented similar systems before for Windows, the advantages in actually integrating it into Vista make all the difference.
Outlook Express is now Windows Mail, and has integrated several technologies from various other sources in order to make up for some of the features it was previously lacking. Searching is now handled via Vista's indexed search engine, which allows for Mail to instantly find any text like Vista itself can find files and documents. Spam protection now uses a junk mail filter based on Outlook 2003's Bayesian-based filtering system; this includes the periodic filter updates for Mail like Outlook 2003 has received. Finally, Mail also implements anti-phishing technology from Internet Explorer 7 which will default to blocking users from going to sites that Mail thinks are part of phishing operations.
Unfortunately, Mail ends up being a mixed bag due to the traditional shortcomings of Outlook Express combined with what Microsoft has added and taken away. Mail does not include Outlook Express's ability to check webmail-based email providers such as Microsoft's own Hotmail service, which given the relation is an odd thing to remove. Mail still suffers from the "Outlook Express is not Outlook" syndrome too, as it doesn't have the integration features that Outlook has with contacts/calendaring, and numerous minor extra features that separate the two. Overall the additions to Mail still make it a better client than Outlook Express, but given the wide install base of Office it makes more sense to use Outlook than Mail. Of course, another popular mail alternative is Mozilla Thunderbird, and in direct comparisons we would subjectively place Thunderbird ahead of Windows Mail.
The Many Versions of Windows
Unlike Windows XP which initially launched with only the Home and Professional versions, Microsoft is coming out of the gate with numerous different versions of Vista to target different market segments. There's a lot to talk about, so let's first take a look at the different versions, their prices, and their features:
|Windows Vista Prices|
|Windows Vista Feature Comparison|
|Home Basic||Home Premium||Business||Ultimate|
All things considered, as the most stripped down version of Windows available to consumers, Home Basic is not really an option as too much is removed for it to be truly useful to a lot of people. While Aero Glass tends to be as much eye-candy as it is a useful feature, it does serve its purposes. This leaves most users to pick from Home Premium, Business, and Ultimate.
Given the price of the Ultimate edition of Vista - higher than any previous version of Windows - it's hard to recommend it right off the bat. For anyone that needs every last feature on a computer there's really no other option, but otherwise there's a lot of money to be saved by skipping out on a feature or two that may never get used. BitLocker is the only feature that the Ultimate edition has that no other edition has, but given it requires a Trusted Platform Module to be used - which few computers have - on its own it won't sell many copies of Ultimate. Microsoft has also released at least one other Ultimate Extra, but again most people won't want to spend the extra money for a poker game.
As for the Home Premium and Business editions, our best guess would be that it will be the Business edition that becomes the enthusiast standard like XP Professional was before it. Media Center is still an application better suited for use with a TV, whereas Business comes with Previous Versions and Remote Desktop, the latter of which is largely responsible for selling enthusiasts on XP Professional over XP Home. However, Microsoft has done a fairly good job here of splitting features between the two to entice users into buying the Ultimate edition. Business lacks the Parental Controls functionality and Home Premium lacks Previous Versions, and the only way to get both is to grab the Ultimate edition. In short, picking the right version of Vista will be about compromises, either giving up features you may want or giving up more money in order to get everything. Microsoft has also indicated that users will be able to purchase incremental upgrades to Vista, so if you start at Home Basic you may be able to upgrade to Premium and eventually Ultimate over time. Details about what upgrades will be allowed as well as the upgrade prices are not yet finalized.
It's on this note that the issue of piracy comes up, as it's a poorly kept secret that Windows XP Professional was easily and quickly pirated due to there being a version for large businesses that used volume license keys. Microsoft has since then rectified the situation somewhat with the Windows Genuine Advantage system for alerting users who are using pirated copies and locking them out of various Microsoft services like Windows Update, but nonetheless XP was fundamentally easily broken in terms of anti-piracy features. So far however this does not appear to be the case for Vista, as Microsoft has done away with VLK in favor of requiring activation on all copies, with the Enterprise version of Business using a keyserver. The lack of an immediately piratable version of Vista will undoubtedly slow its adoption compared to XP, and the Business versions' popularity will not be as lopsided.
We've also had several questions since our initial articles about what can be done with legitimate versions of Windows given that Vista has better activation controls than XP. Among other poorly kept secrets, it's known that Microsoft did not stick to the End User License Agreement for XP very well for OEM copies - while the EULA for an OEM copy of XP made it clear that it was for installation on a single machine only and tied to that machine (or rather its motherboard) for the rest of time, Microsoft has been letting XP users reactivate anyhow without trouble. As a result users who had purchased OEM copies of XP back in 2001 have continued to reuse it up through today, which is an excellent deal for them given the low price of the OEM versions spread over 5 years. While the EULA has not changed for Vista as far as this policy goes, there have been concerns and rumors that Microsoft will be clamping down on this practice.
To be fair, we have no way to predict exactly what Microsoft will do here. It's possible they will continue this policy, but that's not a good enough answer as they can change it at any time given that they control the activation system for Vista. Simply put, the only way to be sure that a purchased copy of Vista will be transferable to a new computer is to get a retail version, either as an upgrade or a full version. Going with an OEM version may work now, but it will always be a gamble on if/when Microsoft will clamp down on transfers.
The retail upgrade versions also deserve a quick disclaimer here about how they have changed since XP. Previously you only needed to prove ownership of a previous version of Windows to use an upgrade disc for a clean install, which was as easy as inserting the disc for an older version of Windows. According to Microsoft's own notes this is no longer the case; Vista upgrades work as upgrades only and a previous version of Windows must be fully installed and activated to let the upgrade install. As this requires a user to effectively install two operating systems if they have an upgrade disc, this is not a welcome change - new installations will take much longer now as the gains made by Vista's new image-based installer will be offset by the slow installation procedures for old versions of Windows. This change is a fundamentally poor decision by Microsoft. A workaround has already been found, but it still requires installing Vista twice.
One of the major changes on paper for Vista is that x64 now becomes an equal platform with the x86 version, as using the Vista compatibility logo on any hardware or software requires that the item in question works under both the x86 and x64 versions, but the reality of the situation is not as rosy. Along with the other limitations of the OEM versions we listed above, only the retail versions of Vista are shipping with x64 and x86 together; the OEM versions are only sold in an either/or fashion: you can either get the x64 or x86 version, but not both at once. It's possible that this will be trivially easy to work around, however it's something that should be kept in mind if you're purchasing an OEM copy.
As for how well the x64 versions of Vista work, in our first article we called x64 the black sheep of the Vista family, as it was clearly behind the x86 version in terms of compatibility and performance. While we had hoped that Microsoft would remove the gap between the two versions, in our testing this has not completely been the case. Vista x64 is still the product of all the compatibility problems of Vista with all the compatibility problems of a still-young 64-bit platform.
This is not to say that Vista x64 hasn't improved; if anything it has improved more between Beta 2 and now than the x86 version did, if only by virtue of having more ground to cover. The performance gap we initially saw between the x86 and x64 versions has dissolved away in most cases, so x64 no longer means taking an immediate performance hit in benchmarks. However we can't shake the feeling of Vista x64 still being slower, even if the benchmarks don't show it. We've had multiple editors use multiple machines, and general performance in particular just feels slower. At this point we still are unsure why this is, but it's a very real condition that hurts Vista x64.
On the positive side, driver support for the x64 version seems to be about as good as the x86 version (although more testing will be required to completely confirm this). The biggest problem as far as support goes is the applications. Not every application is happy working under the Windows-on-Windows (WoW) compatibility environment for 32-bit applications, and this is on top of the applications that don't work with Vista period. There are very few major applications available with x64 binaries, so without 64-bit applications everything still remains in the 32-bit world for now. Furthermore, as we will also see in our graphics tests, having a 64-bit application doesn't necessarily mean we won't see any performance issues.
At this point Vista x64 is certainly usable if you need it, but we wouldn't recommend it unless you have a specific reason to go that route (i.e. applications that can use more memory). Except in a few cases where 64-bit code is clearly faster, the primary purpose for Vista x64's existence is to resolve the problems of 32-bit addressing space, and we're just not at the point yet where even most enthusiasts are pushing that limit. Once applications begin to push the 2GB addressing space limitation of Win32 (something we expect to hit very soon with games) or total systems need more than 4GB of RAM, then Vista x64 in its current incarnation would be a good choice. In the meantime, Vista x64 shouldn't be used until it's needed or SP1 comes out - whichever comes first. The black sheep isn't ready to rejoin the flock quite yet.
A Few Notes on Graphics
While performance under CPU-limited situations is solely in Microsoft's hands, the same is not true about graphics performance. Due to the need to undertake massive driver rewrites for the new Windows Display Driver Model (WDDM) API, all of the GPU makers have been spending the last couple of years hammering their drivers into shape for Vista with varying results. What has changed and where we're at depends a great deal on what company we're talking about.
AMD has chosen to use the Vista ramp-up to work on their OpenGL drivers and the widely-loathed Catalyst Control Center. Their OpenGL driver in Vista is what AMD is calling a re-architected driver, something we've been hearing rumors about for quite some time now. Although eventually we expect AMD's efforts with their OpenGL driver to pay off, this is something that will happen in the future, not today. Their new driver is stable and compatible but it's still rough around the edges; AMD has made it clear not to expect it to match their XP performance for a while. On the DirectX front, performance is closer, but AMD has actually told us that Microsoft expects gaming performance on Vista to be 5% to 10% short of XP performance (due in part to the changes brought about by the new WDDM).
As for the Catalyst Control Center, complaints about its long load times and high resource usage did not fall on deaf ears, resulting in AMD rebuilding it for Vista. The result is something that's still not going to rival the old ATI Control Panel or 3rd-party tools like AMD Tray Tools, but it is a greatly improved package that helps rectify CCC's biggest flaws. AMD has claimed a load improvement on the order of 400%, and while we can't immediately confirm that number we can confirm that it is much faster to load. Startup times are now reasonable for the GUI at about 4 seconds on our X6800 system, and the system tray version is fast enough that most users will be satisfied with it. This is being back-ported to XP as of the Catalyst 7.2 drivers in February, at which point we'll be able to better gauge the difference.
The CCC has also picked up a couple new features in the redesign, the first of which is a new Installer solely for Vista. The main attraction here will be that the installer is no longer a collection of multiple installers for GPU drivers, VIVO drivers, and the CCC, but instead it's one installer that can handle multiple items directly, making the whole installation process faster and a requiring a little less attention from the user. The 3D preview has also been updated; the car scene has been replaced with a side-by-side courtyard scene that in our opinion does a better job at showing the difference between two modes. The car preview was also programmed using OpenGL, whereas the courtyard uses DirectX.
It's worth noting that with this first version of the Catalyst suite for Vista, a couple of things are still outright broken/not-included. Chief among these is complete CrossFire support, as right now it's missing under OpenGL entirely. The universal AFR mode is also absent right now, meaning that it's back to profile-based CrossFire for the moment. Both of these features will be put back in at a later date. Also missing exclusively for Vista x64 is HDCP path support - HDCP is a big issue for Vista since it fully supports the standard, and while HDCP path support is in the 7.1 Catalysts for Vista x86, it will not be in the x64 version until the 7.3 drivers in March. Movies should still be watchable with a 3rd-party application like PowerDVD or Intervideo, but the ability to play protected content directly will not be there.
For NVIDIA, they have not used the Vista migration to launch such sweeping changes. Going into Vista they had two driver sets: one for the G80-based 8800 series and another for everything else. Now with the new Vista WDDM, they have four driver sets to maintain. As a result what features are and aren't working depends on the video card used, as some additional features work for the 8800 series that aren't yet working for previous cards. This isn't entirely surprising given that the 8800 series needs to support Shader Model 4, which means extra attention has gone into it anyhow. During the lifetime of the new 100 series driver, NVIDIA plans on merging its code back into a unified driver architecture, leaving out support only for end of life products like the FX series and earlier models. This will certainly be nice, but for now they are still stuck with juggling multiple packages.
For all cards, due to the now-exclusive use of the Vista control panel NVIDIA introduced last year, a few features are missing. Overclocking is not supported, and neither is GPU temperature monitoring or custom monitor timings. TurboCache memory usage is also capped at 255MB for systems with 1GB of RAM and 271 for 2GB or more, so cards capable of using 512MB will not be able to access it all. SLI support either exists or does not exist, again depending on the card. The 8800 series cards now have SLI support, while everything else does not. This will be taken care of in the future, but in the mean time it's especially problematic for GX2 cards which require SLI in order to reach their full potential.
For both parties, it's clear that they still have some ground to cover. As we'll see in the benchmarks, performance is generally good, but at least initially it's going to need to be judged on a per-game basis. Generally speaking, the more popular the game, the more likely it will run well on Vista.
Gaming Benchmarks - Direct3D
There are an incredible number of tests we wanted to run in order to explore all the different aspects of gaming on Vista versus gaming on XP both in 32- and 64-bit modes. For this first look, however, we will be sticking with single card setups on Vista x86, Vista x64, and Windows XP x86. In the future, we plan on looking at multi-GPU performance as well as the performance of games on Windows XP x64. With Vista, Microsoft has improved the gaming on 64-bit landscape significantly, and we would like to see just how far we have come.
For now, we will be looking at a selection of cards from AMD and NVIDIA: five cards from the Radeon X1K series and five cards from the GeForce 7 series, as well as both current 8800 parts. These tests will look at GPU and CPU limited situations, and we will be comparing Vista x86 with Windows XP as well as Vista x64 to see where there are any differences. We will also look at resolution scaling on each of our three test operating systems, but only with two cards representing AMD and NVIDIA: the X1950 XTX and 8800 GTX.
In terms of APIs, one DirectX and one OpenGL game will be tested. Oblivion will represent the MS API, while Quake 4 will be showing off OpenGL performance on Vista. We have also taken a look at a native 64-bit game. Valve's Half-Life 2: Lost Coast will be run on all three operating systems in native mode. We would like to have compared HL2:LC running in WoW at 32-bit under x64, but we have not been able to figure out how to test it without running in 64-bit mode yet.
First up is Oblivion performance. DirectX performance should be as close as possible to Windows XP performance as this is Microsoft's baby. First, let's take a look at Vista x86 numbers divided by Windows XP scores for CPU limited and GPU limited cases. This will give us the speed up (numbers above one) or slow down (numbers less than one) as compared to Windows XP. Just remember that there is some normal fluctuation in performance on both sides, so we could see a wider margin of error here than in our standard comparisons.
For CPU bound tests, almost every card performs better under Windows Vista than under Windows XP; the lone exception is the X1900 XT 256MB. This indicates that Vista is better able to provide system resources to DirectX games, which is actually quite surprising considering the overhead that Vista adds to the system.
When we take a look at the GPU bound case, we see almost the opposite with only the 8800 GTS performing better than it does on Windows XP. This does line up with what we would expect. There is more involvement from the OS in the rendering pipeline and less direct access to the hardware by games. Vista is now able to manage graphics memory and graphics drivers must support sharing of hardware resources between multiple programs. Luckily, the differences aren't that huge. While the hardcore gamers won't be happy with any performance loss, Microsoft is betting that in the long term the advantages will outweigh the loss in framerate.
Now let's take a look at how Vista stacks up against XP in an x86 vs. x64 comparison
On the CPU limited results, most of the cards again run faster on Vista x64. This is frankly amazing, as even Microsoft expects performance to be slightly slower on Vista. In the GPU limited results, we see basically a random scattering of cards that are slightly slower or faster under Vista x64. Given that Oblivion is a 32-bit application running in WoW, we would be pretty happy with only small performance losses, and any performance improvements are unexpected but welcome. All in all, x64 performance looks good, and we haven't seen the types of compatibility and stability issues between the two that we did with XP x64.
Last up for Oblivion is resolution scaling.
Both the 8800 GTX and X1950 XTX scale very similarly across platforms. There does seem to be more difference in CPU limited settings, while performance seems to converge as resolution increases.
Gaming Performance - OpenGL
Moving on to OpenGL and Quake 4, we'll be able to see how well NVIDIA and AMD have done in building their own OpenGL ICD (installable client driver) for the API. This is more taxing on hardware vendors, because Microsoft's implementation of OpenGL is just a wrapper around DirectX. By default, unless an ICD is used, OpenGL applications cannot talk directly to the hardware.
We did have some issues with Quake 4 as well. We were unable to get the application to run stable with multi-core support enabled, so we tested without this option. Even on Windows XP we see much higher numbers during CPU limited testing with this option enabled, but we will have to do without for a while. It isn't clear whether this is a problem with the game, with Vista, or with OpenGL, but hopefully it will be resolved (preferably sooner rather than later).
As expected, OpenGL performance is much worse both in CPU limited and GPU limited cases. The reason the low end AMD cards look better off here is that their performance is simply bad across the board. NVIDIA seems to perform closer to XP in general here, and both companies are saying that performance will improve over time. GPU limited performance does seem to improve over CPU limited performance, indicating that driver overhead on the CPU is a major factor contributing to the reduced frame rates.
Now let's take a look at how Vista x64 compares. This will actually serve as a good test of how well NVIDIA and AMD have implemented their x86 and x64 versions of their OpenGL ICD as well.
Again, the low end AMD cards just look like they are doing better because they perform poorly in general. In CPU limited cases, x64 actually seems to perform better than under 32-bit Vista, and even GPU limited performance is very close between the Vista versions. This could indicate that AMD and NVIDIA's OpenGL ICDs benefit from 64-bit processing, even if the game itself does not. However, unlike Oblivion, the performance of Quake 4 in Windows Vista is substantially slower than under XP, sometimes as much as 30% slower.
Last up for Quake 4 is resolution scaling.
While it's very clear that XP is a better option for OpenGL apps right now, there are no real scaling surprises. The CPU performance/driver overhead seems to be a bigger factor in reduced Vista scores than the actual GPUs, as the scores tend to get closer in GPU limited situations.
Gaming Performance - x64
Finally, we have Half-Life 2: Lost Coast with its native 64-bit application running under Vista x64. Is it worth it? We're only providing resolution scaling results for this game.
Clearly the 64-bit application runs slower than the 32-bit, especially at CPU limited resolutions. Even the games we tested running under WoW in 32-bit mode on Vista x64 showed better performance parity with Vista x86 and Windows XP. While the resources are there to offer better performance with more registers and better memory management (especially on systems with more than 4GB of RAM), there is clearly something that's lacking here. It is likely that Valve has more work to do on their 64-bit Source engine, but we can't rule out Vista x64 as a factor altogether.
We had hoped to see better performance from a native 64-bit game, but it looks like we'll have to wait longer until game developers figure out how to capitalize on the extra resources available under Vista x64 without adversely affecting performance.
Software is always a bit of an odd item to critique here at AnandTech; whereas we mostly focus on hardware with quantitative data that is largely indisputable, software involves a great deal of opinion and qualitative data that isn't nearly as cut and dried. We stand by our opinions, but not everyone is going to agree, and that's to be expected. Before putting down $100 or more on Vista, check it out yourself; everyone will have a slightly different opinion of how Vista works and if it's worth the hype and cost.
We'll save the conclusion for a bit and start instead with what we have and have not liked about Vista now that we have seen the final version. The big winners for Vista include the search features, the caching features, the extra security, and yes, even the new Aero UI. The index search we've already covered and there's not much else to say other than that it does what it's supposed to do very well - it's a night and day difference from earlier versions of Windows. Similarly, SuperFetch makes a huge departure from previous versions of Windows; on a system with 2GB of memory and a few days of training on one of our test systems it has learned to cache all of the office applications we use, our IM client, our mail client, our MP3 player, and other applications. The difference between loading these applications from disk and the RAM cache is simply remarkable; it's as if we never quit the application at all.
With the new security features the relationship is a little more love/hate and we can certainly poke holes in them even if we like them. Windows has simply been insecure for too long and users have suffered for it. By making default administrative accounts run in a reduced privilege mode, it's a good start to reining in the spyware/virus/zombie phenomenon that has been making computing harder than it needs to be. It's by no means the silver bullet - after all for many computers hosing a user's home directory is just as good as hosing the entire system - but it is something that should keep systems better protected in the short term, and in the long term we will need to see how unscrupulous software authors try to poke holes in the system.
Similarly, after having gone through several iterations of the UI as Microsoft has knocked out the bugs, we're happy with the Aero UI. Although being shiny doesn't hurt its case, the strengths of the UI here are in navigation and integration of searching into the file browser. Little things like being able to click on a level in the address bar and immediately be taken there are extremely useful once you learn the UI, and we have finally managed to get over the missing menu bar and realize we don't need it, though we tend to use keyboard shortcuts a lot here.
Last, the new installer deserves a spot. The Windows XP installer is insufferable and we all know it; it's barely a step above using DOS to install Windows and it's even worse when IDE/RAID drivers are required to be loaded off of a floppy disk at a time when many people don't even use one any more. A cut-down Windows UI and USB support make the process far less painful, and the image-based installer means that the whole process is over in as little as 15 minutes.
Moving down the ladder from things we like are things we're effectively neutral on; these are the things that Vista has not really sold us on but neither is it a problem. Compatibility is the first thing to fall into this area, as on the one hand Microsoft is known for bending over backwards for compatibility, and on the other hand it could always be better. UAC problems aside, we have yet to be able to find anything other than system utilities and video codecs that don't work under Vista. For most people this will be fine, though gamers in particular will be unhappy that they're back to using the built in NVIDIA/AMD controls to tweak their graphics cards.
In the all-important metric of performance, Vista has managed to sit solidly in the middle. Benchmarked performance on the whole is neither generally above XP nor is it below - not that we were expecting it to be higher, but we certainly wouldn't mind. Compared to Beta 2, this is a very respectable position as we weren't initially sure if performance would catch up and for the most part it has. Using Vista instead of XP still means some resources are being sacrificed (mainly RAM), but it's no longer a poor tradeoff.
Graphics cards are a different matter. OpenGL support from both sides is solid for compatibility, but slow. This is something we expect to improve, but for today it's a matter that should be taken into account, especially when running newer games or older (slower) hardware. Both teams will be releasing important updated Vista drivers well into the year, so Vista as a gaming platform will for now depend on the games used. Direct3D-only users should be fine while anyone using OpenGL will need to keep a watchful eye on driver updates.
Then there are the things at the bottom of the ladder, those items that as of the final release of Vista that just leave us scratching our heads wondering what Microsoft is thinking and if this was really the right time to release Vista. We'll start this with the Windows Mobile Device Center (WMDC), a branch of the Sync Center application designed to synchronize Windows Mobile devices. As the Vista replacement for ActiveSync WMDC comes pre-installed with Vista... or does it? It turns out that Vista only shipped with the drivers and application (also called the WMDC) to allow Vista to connect to a WM device, not actually to synchronize with it. To synchronize a WM device, you need to download the synchronization application (once again called WMDC), which as of this writing is still in beta. This is not indicated anywhere in the Vista documentation, and it's confusing to say the least.
Next at the bottom is Flip-3D, a beautiful but tragic waste of the Aero Glass UI. In our MacOS X reviews, we have time and time again talked about how great Apple's Exposé feature is; it's a great organizational tool for keeping track of various windows and bringing them up to the front. If there was anything Microsoft should have gone out if its way to copy from MacOS X, this is it. Flip-3D is a poor imitation of the real thing; the angled view means it's a pretty sight to watch flip by, but you won't get any real benefit out of it. Vista needs its own Exposé clone, and Flip-3D will not be it.
Last and certainly least is User Account Controls. We've said enough about it to cover all of its shortfalls, so it's merely included on the list. UAC is a major reason against installing Vista; it's going to be partially or completely disabled by most computer enthusiasts the moment they get their hands on it, and that's going to be a detriment to Vista's new security systems. It's as if Microsoft spent a good portion of the past few years working on an enhanced security design that nobody will want to use. Many have been spoiled by the lack of in-your-face security, but the truth is most people like PCs to be that way - at least until they get a nasty spyware infection.
Conclusion... for Now
Overall, in order to rate Vista we have two different competitors we need to look at: MacOS X "Tiger" and Windows XP. Although Vista is the same operating system in both cases, how well it performs is all relative to what it is being compared against.
Vista vs. Tiger
If you read our initial Beta 2 preview, then you can stop reading now as Vista has not changed enough to drastically alter our view on this comparison. In short, Mac enthusiasts can breathe a sigh of relief because Vista won't be causing a reverse-switching phenomenon any time soon. Vista is good, good enough that it will stop the hemorrhaging and greatly reduce the number of switchers for the time being. However it's not better than Tiger for Mac users and it isn't going to pull anyone back, so the operating systems are at a stalemate at the moment until Leopard and/or Vista SP1.
In Microsoft's corner, Vista's file-I/O improvements keep it solidly ahead of Tiger. The SuperFetch family of abilities is clearly beyond Tiger, as Tiger's own caching system doesn't have the speed or refinement to match what Vista can do and it makes a remarkable difference. System Restore/Volume Shadow Copy is also well beyond what Tiger can do, and although this is apt to start debates at VSC versus Apple's already-revealed Time Machine technology, only one of them is in a shipping operating system and that's Vista.
In Apple's corner as we've mentioned before is Exposé, which will continue to weigh heavily in the favor of Apple as it's a simple-but-powerful tool to boost productivity. Apple's other strengths here are also related to their UI, as the Finder is still a better organized file browser than Explorer, and they have done a better job enforcing a consistent look and feel across their own applications and even 3rd-party applications.
In the middle then are their respective application suites, in which there is no clear winner. Windows Calendar is the closest single thing we've seen to being an Apple knockoff (it's iCal) while Internet Explorer 7+ is the new benchmark for Safari. Meanwhile iTunes does a much better job as a media player than Windows Media Player, and Windows Mail with phishing protection keeps users safer than Mail.app's security-through-minority nature which doesn't prevent phishing.
Given how long Vista was in development and how long after Tiger it is being released, it's almost a bit sad to see that Microsoft couldn't come up with something that was far above and beyond Tiger. Leopard will undoubtedly change things again, but for now Vista could have surpassed Tiger only if Microsoft had done more sensible things with the UI. Nonetheless Windows users will be happy to have a version of Windows that finally isn't lagging behind MacOS X.
Vista vs. XP
Among those that won't become switchers, Microsoft's own worst enemy is itself, as it needs to prove that Vista is a worthwhile upgrade to XP when XP is already so refined. For many users in the consumer space, Vista is simply a version of Windows where (to borrow a quote from Field of Dreams) "If you build it, they will come." These people will get Vista on their new computers and they'll like it because it is good, but having never had the chance to decide if they didn't want it.
For everyone else who does get a choice, more often than not we believe the choice will be Vista. As we've stated before it's not perfect, but it's quite good. There are some very good reasons not to use it in some cases (system requirements, compatibility, and OpenGL performance), but for those machines that the above do not apply to, there are numerous useful features in Vista that warrant an upgrade if you find that you're the kind of person that will use them. Vista's SuperFetch and Search technology are both reasons enough to migrate from XP, as they easily improve productivity and performance.
Vista is a worthy upgrade and an even better choice as an operating system for a new computer. At the same time there's still ample room to grow; hopefully we'll have even fewer complaints once Service Pack 1 is released later this year. Hopefully Microsoft will spend some time improving features as opposed to simply bug fixing, though, as right now some of the design decisions still need work.