For those of you who haven't heard of ReadyBoost, where have you been? Only kidding, it's not the most common term, so I'll explain. Essentially, without going too deep and technical, ReadyBoost is a technology in Windows Vista that boosts the performance of your system using inexpensive flash memory. Yes, the flash memory found in USB Keys, SD cards and so on. So, if you've bought a USB key in the last couple of months, or even earlier, it's definitely worth testing it in Vista to see if it is ready for ReadyBoost, as your system will benefit from that little extra oomph under the hood. You will see the biggest difference in performance if you have less physical memory to start with, say, 512mb for example, and you buy, for around $20 (or £10 here in the UK), a 2GB USB key, and use ReadyBoost. If you already have 2GB physical RAM, and you utilise the 2GB USB key for ReadyBoost, you will see some benefit, but not as much as the other scenario.
Anyway, the point of the post - I'm using ReadyBoost, but how can I actually measure what is going on? Well, today is your lucky day...
The various counters that you selected will now be seen in the Performance Monitor. As time goes on you will see the activity occurring in real time for each of these counters. Descriptions of the counters can be found below:
The total amount of uncompressed data currently stored in the cache. If there is data being stored then you know ReadyBoost is being used by Vista.
The number of times Vista reads from the cache per second. If you see a lot of cache reads per second then you know Vista ReadyBoost is working. If this occurs often when using your computer it is advised you invest in more physical memory to further increase performance.
The actual size of the data in the cache divided by the uncompressed size of the data in the cache.(actual size of the data in the cache) / (uncompressed size of the data in the cache)
Hit read bytes/sec
The number of bytes read from the cache per second. This is a further indication that the ReadyBoost cache is being used by Vista. If a lot of bytes are being read per second you also know that you need more physical memory to truly increase your performance.
Invalidated update buffer blocks/sec
The number of blocks in update buffers invalidated per second.
Invalidated update buffer bytes/sec
The number of bytes invalidated in update buffers per second.
Writes rescheduled due to the lack of regions per second.
Writes rescheduled due to the lack of update buffers per second.
Read-Size-Max IOs bailed/sec
The number of I/Os not serviced by the cache because the size is bigger than the maximum read size per second.
Sequential IOs bailed/sec
The number of I/Os not serviced by the cache due to sequentiality per second.
Total read bytes/sec
The number of bytes read from the volume per second.
Total write bytes/sec
The number of bytes written to the volume per second.
Updated buffer read bytes/sec
The number of read bytes services from the update buffers per second.
I am running Vista Ultimate with 3GB of RAM plus a 2GB of RAM on SD card dedicated to ReadyBoost on my Removable Disk (J).
After following steps 1 through 6 in your post, I am unable to find the ReadyBoost Cache counter category you refer to in step 7 either by looking under the R’s in the list or looking in the drop down list Cache.
Thinking it was my problem, I brought it up at a Vista-Palooza event last week at Microsoft’s PacWest office. The presenter also was unable to locate the ReadyBoost Cache counter category you refer to.
We are wondering if maybe you are using a build other than the RTM build, or did something that added the counter category, or that you possibly set forth your steps incorrectly.
We want to use the counters but are unsure of how to access them at this point.
Thanks for the message.
You need to have the flash device inserted and ReadyBoost operational to see the counter. I have a Kingston 4gb USB Stick, and when it isn't inserted, I can't see the counter in the list, however, when it is inserted and ReadyBoost is turned on, I can see the counter.
I'm using RTM, just so you know :-)
Let me know if you need any more help - ping me a mail if you like using the email link at the top.
I've got a laptop with 2GB RAM.
Without my ReadyBoost device plugged in I get to about 1.33GB used.
I plug in the ReadyBoost device and don't see a particular drop in RAM usage, but I also wouldn't expect to see any use of the ReadyBoost because I'm not pegging the internal RAM yet (far from it) but boom ... 10-70 cache reads/sec within a matter of moments
Am I misunderstanding how ReadyBoost should work? Is there something wrong with my machine? Is Vista just going slightly mad?
Like any other operating system Vista performs pretty nicely if you've got enough RAM, but sometimes
Thanks for the message. You aren't misunderstanding how ReadyBoost works, don't worry :-) The thing to note is that your machine already has 2gb RAM, so the effect you will see would be much less noticable than say, if you had 512mb RAM.
What counters are you using and what exactly are you measuring when you say 10-70 cache reads/sec? Are you using the Readyboost counters? If so, this is normal I'd say - if you see an increase, you know it's working :-).
Let me know if this answers your question, and feel free to message me back.
After having tried several USB solid state drives, on and older computer (IBM thinkpad from the Vista Palooza event -- I am the presenter referred to by the earlier poster :), I now have it working with:
1) a newer laptop,
2) a USB flash drive that's only a few months old.
I cannot see any change in the Windows system memory, but the ReadyBoost counters really do show that the device is being used when needed. To test it, I brought up three Virtual PCs running Vista and Server 2008 beta 2. That caused spikes and clear indications that it is working. Look for the ReadyBoost counter ReadyBoost cache/Cache reads/sec.
Now that I have a device that works, I can do an effective demo of this feature in the future.
Mark Wheatley, SQLSoft+
Just noticed Robert's posting.
I'm the presenter at the Vista Palooza event last month, in which we couldn't see ReadyBoost in action. I was using an older IBM ThinkPad, with USB 2.0, of course.
Having a new, ReadyBoost enabled USB device, I noticed that it would not work on a number of older laptops, so the machine's capability is definitely part of the issue.
On my new Dell Latitude, ReadyBoost is alive and well, as proved by watching the above counters while loading up my Virtual Machines that run Vista and Server 2008.
I'd like to be able to tell which USB devices are ReadyBoost-capable, but the device driver details provide no differences in my comparison of working and non-working USB devices.
Mark Wheatley, SQLSoft+, Bellevue, Washington
Thanks for the comments - I'm glad that you are able to demonstrate this technology effectively - it's always a tricky one with Readyboost - it's easy to say "It boosts performance" but it's a lot harder to say exactly how, but the counters do help to show it.
You are correct, there is no easy way of identifying which USB devices are Readyboost capable, but going forward, more and more manufacturers will advertise this as a feature on their packaging. It is a shame that there is no, like you say, comparison of working and non-working USB devices.
I'm a real fan of readyboost and am pleased to see this article with a proper way to measure performance.
There are lots of pages out there where people try readyboost and assume you can measure it with a simple benchmark test - they are all disappointed to see no change.
I have a Compaq Presario F504ea with 1GB RAM and I use a 2GB Corsair Voyager GT for readyboost. Readyboost comes into its own when swapping between applications - in fact any time where the cache is used (which is where you would expect to see it used).
Overall speed isn't greatly improved, but I do find the everything is a lot smoother. Gone are the periods when the machine just grinds to a halt (and you think a BSOD is about to appear). Instead the laptop will still continue to run ok.
The only other advice i would give to people who use readyboost is this - either buy a usb memory stick without a light on, or cover it. The constant flashing of my stick on the edge of my peripheral vision drove me nuts in 2 hours. I now have a usb stick with added duct-tape!
It doesn't necessarily speed the machine up at all
Thanks for your comment. I too am a fan of Readyboost, and I don't think I make use of it enough! This is mainly due to the fact that my Sony Vaio only has a measly 2 USB slots!
You are spot on - you have to know what you are looking for with measuring Readyboost. You can't just plug in a drive and expect to see a miraculous change in your machine - like you say, this just act a bit smoother!
I'm afraid I can't do anything to help you with the light flashing! Some black duck-tape might do the trick! :-)
Just to confirm this also works on Windows 7. No need to select classic control panel. :) Just select performance monitor from:
Control Panel\All Control Panel Items\Performance Information and Tools\Advanced Tools
and the data you want to graph as explained in the original blog post above.
Great - thanks for the update Martijn!