Day 1: Vista, Superfetch and the magic of USB flash drives!
I can't believe I forgot to mention this in my account of Jim Allchin's keynote.
Jim did an impressive demo during the keynote yesterday of the performance gains attained using Vista's Superfetch functionality. Superfetch is an extension of the Prefetcher that first made its way into XP when it was released. The purpose is similar - to speed up application launch times. The way Superfetch improves load times is by pre-loading commonly used applications and DLL's into memory even before they're actually launched. The result is that apps launch just as fast after a cold boot as they do after the prefetcher has kicked in.
The really cool part about the demo was what happened when Jim plugged in a USB flash drive - Vista instantly recognized the drive, and began using the free space on the drive like regular system memory; i.e., the Superfetcher actually began to load prefetch data onto the drive to augment the available RAM and speed up app launch times. And in order to ensure that the contents of the flash drive cannot be misused if it's unplugged, the contents are encrypted as they're written to it. Great stuff!
Tags: Vista, Longhorn, PDC05

6 Comments:
At 5:28 AM, Anil R said…
Two questions here:
1) Isn't a USB Flash drive generaly slower than a disk drive? How does loading a DLL from disk and encrypting it onto a Flash drive speed anything up?
2) I was under the impression that flash drives had between 10000 - 100000 write cycles. If my OS is continually caching stuff, that could easily reduce the life of my flash drive (ok, you'll probably by a new one before this limit - but it's still a consideration)
At 10:15 AM, Rob Reinauer said…
Anil,
While hard drives are faster than USB2 for sequential I/O, USB2 based flash is significantly faster for satisfying random reads, which we have found to be a prime factor in poor system responsiveness. External Memory Devices serve as an extension of the data caching capabilities of main memory. All writes are pushed through to disk, random reads are serviced where possible from the EMD and sequential reads are serviced from the hard drive.
Thanks,
Rob Reinauer
Software Architect
Windows Core Operating Systems Division
Microsoft Corporation
At 2:43 PM, Kunal said…
Excellent! Thanks for responding to the post, Rob. :)
At 8:52 AM, BillSaysThis said…
Rob, that addresses the first point but not the second. Can you take that one too?
At 2:18 PM, tajenfu said…
Rob,
Our company has a new product called i-Ram wich has the following characteristics:
1. Use DDR memory as storage medium.
2. Use PCI bus power and a backup battery to avoid data lost when PC is shut down.
3. Use SATA interface to be recognized as a HDD.
I wonder if we can achieve further load time improvement.
Please let me know how we can coordinate for a test.
At 7:56 AM, Anonymous said…
hey guys -
how does this differ from what Quickshift can provide on current OS's? Check out www.quickshift.com. It does I/O optimization as well without needing external memory.
Post a Comment
<< Home