
Windows ReadyBoost improves
system memory and boosts performance.
Adding system memory
(typically referred to as RAM) is often the best way to improve a PC's
performance, since more memory means more applications are ready to run without
accessing the hard drive. However, upgrading memory can be difficult and costly,
and some machines have limited memory expansion capabilities, making it
impossible to add RAM.
Windows Vista introduces
Windows ReadyBoost, a new
concept in adding memory to a system. You can use non-volatile flash memory,
such as that on a universal serial bus (USB) flash drive, to improve performance
without having to add additional memory "under the hood."
The flash memory device
serves as an additional memory cache—that is, memory that the computer can
access much more quickly than it can access data on the hard drive. Windows
ReadyBoost relies on
the intelligent memory management of Windows
SuperFetch and can significantly improve system
responsiveness.
It's easy
to use Windows ReadyBoost. When a
removable memory device such as a USB flash drive or a secure digital (SD)
memory card is first inserted into a port, Windows Vista checks to see if its
performance is fast enough to work with Windows ReadyBoost. If so,
you are asked if you want to use this device to speed up system performance. You
can choose to allocate part of a USB drive's memory to speed up performance and
use the remainder to store files.
FAQ:
Q:
What perf do you need on your device?
A: 2.5MB/sec throughput for 4K
random reads and 1.75MB/sec throughput for 512K random writes
Q: My
device says 12MB/sec (or 133x or something else) on the
package but windows says that it isn't fast enough to use as a ReadyBoost device...
why?
A: Two possible reasons:
Q: What's the largest
amount of flash that I can use for ReadyBoost?
A:
You can use up to 4GB of flash for ReadyBoost (which
turns out to be 8GB of cache w/ the compression)
Q: Why can't I use more than 4GB of
flash?
A: The FAT32 filesystem limits our ReadyBoost.sfcache
file to 4GB
Q: What's the smallest ReadyBoost cache that I
can use
A: The smallest cache is 256MB (well, 250 after formatting). Post
beta2, we may drop it another 10 MB or so.
Q: Ok... 256M-4GB is a
pretty big range... any recommendations?
A: Yes. We recommend a 1:1 ratio
of flash to system memory at the low end and as high as 2.5:1 flash to system
memory. Higher than that and you won't see much
benefit.
Q: Isn't this just putting the paging file onto a
flash disk?
A: Not really - the file is still backed on disk. This is a
cache - if the data is not found in the ReadyBoost cache, we
fall back to the HDD.
Q: Aren't Hard Disks faster than flash? My HDD
has 80MB/sec throughput.
A: Hard drives are great for large sequential
I/O. For those situations, ReadyBoost gets out
of the way. We concentrate on improving the performance of small, random I/Os,
like paging to and from disk.
Q: What happens when you remove the
drive?
A: When a surprise remove event occurs and we can't find the
drive, we fall back to disk. Again, all pages on the device are backed by a page
on disk. No exceptions. This isn't a separate page file store, but rather a
cache to speed up access to frequently used data.
Q: Isn't user data
on a removable device a security risk?
A: This was one of our first
concerns and to mitigate this risk, we use AES-128 to encrypt everything that we
write to the device.
Q: Won't this wear out the drive?
A:
Nope. We're aware of the lifecycle issues with flash drives and are smart about
how and when we do our writes to the device. Our research shows that we will get
at least 10+ years out of flash devices that we support.
Q: Can use
use multiple devices for EMDs?
A: Nope. We've limited
Q: Why just one device?
A: Time and quality. Since this
is the first revision of the feature, we decided to focus on making the single
device exceptional, without the difficulties of managing multiple caches. We
like the idea, though, and it's under consideration for future
versions.
Q: Do you support SD/CF/memory stick/MMC/etc.?
A:
Mostly. In beta2, we added support for a small number of SD/CF cards on internal
USB2 & PCIe busses. RC1 has a much broader support
range.
Q: Why don't you support SD on my USB2.0 external card
reader?
A: We unfortunately don't support external card readers - there
were some technical hurdles that we didn't have time to address. In general, if
a card reader shows a drive without media in it (like a floppy drive or CD ROM
does), we can't use it for ReadyBoost.
Q:
Will it support all USB drives, regardless of how they are ID'd to the OS ("hard disk drive" or "Device with Removable
Storage")?
A: We have no way to tell what is on the other end of a USB
cable so we do some basic size checks (since no one has a 200GB flash device ;-)
) and then perform our speed tests. HDD will not, however, pass our speed tests,
and there is no benefit to using a USB HDD for ReadyBoost.
Q:
Can you use an mp3 player to speed up your system?
A: Not currently. MP3
players use the 'plays for sure' interfaces to expose themselves to Windows. We
require that the device appear as a disk volume. These aren't currently
compatible.
Q: How much of a speed increase are we talking
about?
A: Well, that depends. On average, a RANDOM 4K read from flash is
about 10x faster than from HDD. Now, how does that
translate to end-user perf? Under memory pressure and
heavy disk activity, the system is much more responsive; on a 4GB machine with
few applications running, the ReadyBoost effect is
much less noticable.
Q: I can't get my
device to work with ReadyBoost... can I
lower the perf requirements?
A: Unfortunately,
no. We've set the perf requirements to the lowest
possible throughput that still makes your system faster. If we lowered the perf requirements, then there wouldn't be a noticeable
benefit to using ReadyBoost.
Remember, we're not adding memory, we're improving disk access.
Q:
Which manufacturers support ReadyBoost?
A:
Well, I hope that all of them do, eventually. Right now, we're working with
manufacturers to create a program that will allow them to identify ReadyBoost capable
devices on their packaging.