Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Using a USB flashdrive as RAM?

theyalllietheyalllie Member Posts: 229

Been doing some reading about windows 7, asking questions (TY), and applying tweaks for gaming performance.

Looking at the, http://microsoft-support-squad.blogspot.com/2011/03/windows-7-performance-tweaks.html, I see that one can use a USB flash drive for added RAM, and the procedure.

Have any of you tried this, and if so, do you think it gave you any performance gain?

I have tried other things and perhaps have had some gain, some actually, quite the opposite.

Comments

  • QuizzicalQuizzical Member LegendaryPosts: 25,355

    In some cases, using a USB flash drive for virtual memory would be preferable to using a hard drive.  That's what Ready Boost is for.  But it's still 3-4 orders of magnitude lower in access times than system memory, so it's not a real substitute for having enough system memory.  With memory as cheap as it is now, if you need more memory, then buy more memory.

  • marinridermarinrider Member UncommonPosts: 1,556

    Originally posted by Quizzical

    In some cases, using a USB flash drive for virtual memory would be preferable to using a hard drive.  That's what Ready Boost is for.  But it's still 3-4 orders of magnitude lower in access times than system memory, so it's not a real substitute for having enough system memory.  With memory as cheap as it is now, if you need more memory, then buy more memory.

    I think this is less of a "memory is cheap go buy some" situation and more of a "I have a laptop and it is low on ram" situation.  Laptops are quite a bit harder to upgrade than desktops (as I'm sure you know).

  • QuizzicalQuizzical Member LegendaryPosts: 25,355

    I guess it's possible to design a laptop to make it hard to add memory.  But I replaced the memory in my own laptop, and it wasn't hard.  As with desktops, adding memory doesn't require installing new drivers or reinstalling the OS or anything like that.

  • theyalllietheyalllie Member Posts: 229

    Actually, this is a more of a ," has anyone tried this, and did you gain any performance?" situation.

  • marinridermarinrider Member UncommonPosts: 1,556

    Well then the only time you would see a performance increase is when you max out the ram that is within the computer.  And for me that generally has never happend with 4 gigs on Windows 7.

     

    I can't imagine flash drive ram to be as effective though.  I don't think that it would be as fast as a low latency stick because its not built for that purpose.

  • RidelynnRidelynn Member EpicPosts: 7,383

    I have tried ReadyBoost, but it was on a fairly beefy computer, so I saw absolutely no performance benefit.

    Also, ReadyBoost doesn't really act as more RAM. It works to speed up the random I/O of your hard drive: They have really fast seek times just like an SSD, so it gets turned into a disk cache optimized for really small files basically, which can include parts of the page file. It can make a dent in a laptop with a really slow hard drive (some of the 4200rpm pokey power saving models), but it won't work miracles.

    ReadyBoost can also work in conjunction with SuperFetch (pre-loading programs into system RAM before the user has requested them), but instead of pre-loading into RAM, Windows can pre-load the small files on the ReadyBoost drive, and then be able to theoretically seek them faster when the user does run the application, so it starts up faster. This is different from the plain disk caching as mentioned above, in that Windows uses your typical usage history to pre-load the cache, rather than watching files and only caching after it has been called.

    It can also help low RAM computers as well, not because it acts as extra RAM, but because there isn't enough room in the system memory for a disk cache, so you are basically just adding in a free disk cache on a system that otherwise wouldn't have the resources to run it.

    Unless you have less than 1G of RAM, and a really slow main hard drive, and use fast FlashDrives (ReadyBoost certification requires a certain minimum read/write/access speed FlashDrive), it's not really going to do anything for you. And in all cases, adding in more RAM is going to be drastically more beneficial

    Here's a link to some ReadyBoost benchmarks run by AnandTech, you can see they had to choke the system down to 512M RAM on Vista to get ReadyBoost to have any significant effect, and going up to 1G basically nullified the effect. But it did slightly help on slow disk drives (shown on the next page). The previous page has a good explanation of what ReadyBoost is (probably better than mine).

    http://www.anandtech.com/show/2163/6

    The link is a little dated, as Vista is limited to a single ReadyBoost device up to 4G, whereas Windows 7 can have nearly unlimited devices up to 256G in size, but the technology and benefits are all pretty much the same, so the benchmarks are still somewhat indicative of what you could expect on a Win7 machine.

  • Xero_ChanceXero_Chance Member Posts: 519

    Rigging it up to work as virtual memory would only be useful if you don't have an extra couple of MB on your HD (yeah right :p).

    32 bit operating systems can only use up to ~4GB, 64 bit can only use ~6GB. It's cheaper per GB if you buy RAM cards as opposed to USB storage devices, not to mention the possible read-time delays that some USB devices have compared against the very quick read-time that RAM has. With modern overpowered processors (10 cores really? O.o), it's best to run 64-bit if you are a gamer because the increased processor load would be insignificant.

    This whole concept is impractical.

  • theyalllietheyalllie Member Posts: 229

    Originally posted by Ridelynn

    I have tried ReadyBoost, but it was on a fairly beefy computer, so I saw absolutely no performance benefit.

    Also, ReadyBoost doesn't really act as more RAM. It works to speed up the random I/O of your hard drive: They have really fast seek times just like an SSD, so it gets turned into a disk cache optimized for really small files basically, which can include parts of the page file. It can make a dent in a laptop with a really slow hard drive (some of the 4200rpm pokey power saving models), but it won't work miracles.

    ReadyBoost can also work in conjunction with SuperFetch (pre-loading programs into system RAM before the user has requested them), but instead of pre-loading into RAM, Windows can pre-load the small files on the ReadyBoost drive, and then be able to theoretically seek them faster when the user does run the application, so it starts up faster. This is different from the plain disk caching as mentioned above, in that Windows uses your typical usage history to pre-load the cache, rather than watching files and only caching after it has been called.

    It can also help low RAM computers as well, not because it acts as extra RAM, but because there isn't enough room in the system memory for a disk cache, so you are basically just adding in a free disk cache on a system that otherwise wouldn't have the resources to run it.

    Unless you have less than 1G of RAM, and a really slow main hard drive, and use fast FlashDrives (ReadyBoost certification requires a certain minimum read/write/access speed FlashDrive), it's not really going to do anything for you. And in all cases, adding in more RAM is going to be drastically more beneficial

    Here's a link to some ReadyBoost benchmarks run by AnandTech, you can see they had to choke the system down to 512M RAM on Vista to get ReadyBoost to have any significant effect, and going up to 1G basically nullified the effect. But it did slightly help on slow disk drives (shown on the next page). The previous page has a good explanation of what ReadyBoost is (probably better than mine).

    http://www.anandtech.com/show/2163/6

    The link is a little dated, as Vista is limited to a single ReadyBoost device up to 4G, whereas Windows 7 can have nearly unlimited devices up to 256G in size, but the technology and benefits are all pretty much the same, so the benchmarks are still somewhat indicative of what you could expect on a Win7 machine.

     Thankyou very much, that answers my question.

  • QuizzicalQuizzical Member LegendaryPosts: 25,355

    Originally posted by Xero_Chance

    Rigging it up to work as virtual memory would only be useful if you don't have an extra couple of MB on your HD (yeah right :p).

    32 bit operating systems can only use up to ~4GB, 64 bit can only use ~6GB. It's cheaper per GB if you buy RAM cards as opposed to USB storage devices, not to mention the possible read-time delays that some USB devices have compared against the very quick read-time that RAM has. With modern overpowered processors (10 cores really? O.o), it's best to run 64-bit if you are a gamer because the increased processor load would be insignificant.

    First, while an OS can impose arbitrary caps on memory usage, the 16 EB cap of 64-bit isn't meaningful at this time.  Windows 7 Home Premium (64-bit) has a cap of 16 GB, while Professional and Ultimate have a 192 GB cap.  For the latter, the real limit on memory usage is how much your motherboard can take, which is commonly 16 GB.

    Next, NAND flash is much cheaper per GB than SDRAM.  DDR3 SDRAM does have much quicker access times, though, which is why it can be used as system memory and NAND flash really can't.

    There aren't any desktop processors with 10 cores yet.  Westmere-EX has 10 cores, and Magny-Cours has 12, but those are server processors.  Currently the most cores you can get in a single desktop processor is 6 in either Thuban or Gulftown, though Zambezi is coming with 8 in a couple of months or so.

    -----

    I guess I never looked into Ready Boost too much, and assumed it was basically for a page file.  Ridelynn, you make it sound like the NAND flash cache used in the Seagate Momentus XT.  Is that basically what tries to do?

    While USB flash drives can much faster than hard drives at random reads, they're very slow at sequential reads.  Even at random reads, being 5 or 10 times as fast as a hard drive is nice, but doesn't fix everything.  So while there could theoretically be big gains from selectively reading small files off of a flash drive, it's not automatic that it will be faster--and some things would be a lot slower.

    One problem is getting those files on the USB flash drive in the first place.  Apparently 4 IOPS random writes is good enough for Ready Boost certification, even though hard drives can do well over 100 IOPS--and some SSDs can do tens of thousands at high queue depths.  Even with sophisticated SSD controllers, it took a while to figure out how to do random writes properly, so I'd assume that USB flash drives aren't there yet.

  • RidelynnRidelynn Member EpicPosts: 7,383


    Originally posted by Quizzical

    I guess I never looked into Ready Boost too much, and assumed it was basically for a page file.  Ridelynn, you make it sound like the NAND flash cache used in the Seagate Momentus XT.  Is that basically what tries to do?
    While USB flash drives can much faster than hard drives at random reads, they're very slow at sequential reads.  Even at random reads, being 5 or 10 times as fast as a hard drive is nice, but doesn't fix everything.  So while there could theoretically be big gains from selectively reading small files off of a flash drive, it's not automatic that it will be faster--and some things would be a lot slower.


    Pretty much, that's about what it does, and the upcoming Z68 chipset will do something similar as well pairing an SSD with a regular hard drive.The only real exceptions being that right now only ReadyBoost is able to work with the page file and SuperFetch, but that could change with driver updates if the vendor chose to implement it.

    There is also something called ReadyDrive which could work additionally with the NAND on hybrid drives, should the driver allow it, and works with NAND flash which is permanently installed on some motherboards. This is basically technology aimed at making a computer use less power while in sleep mode, and come out of hibernation faster. It does use FLASH RAM, but is not the same as ReadyBoost, since it requires permanently installed FLASH.

    And yes, the software realizes that USB drives are going to be very poor at sequential read times, so it tries to optimize itself with the types of files that will be better off with the superior Random I/O (hence: mostly very small files). If you have enough RAM though (generally over 1G), it won't do anything for your performance, because it will do the same thing in System RAM rather than on the USB drive.

  • RidelynnRidelynn Member EpicPosts: 7,383

    Also, in the interest of clearing up what may be a misconception

    Windows 32-bit can only access up to 4G of RAM. This is true.

    But this does not include the page file. The page file can be up to 16T in size (if you enable PAE on 32-bit, or default on 64-bit), and can support up to 16 different page files (as long as they are on different devices) up to that size. So that's a crapload of virtual memory that you can theoretically access.

    Now why could you ever use this much memory? Because there is the overall memory cap (4G for 32-bit, and XXG depending on your version for 64-bit), but each application also has a seperate cap. For 32-bit applications, that's 2G (3G if you enable /3GB boot switch). And Windows was made for multitasking, so every 32-bit application you have open could, in theory, request 2-3G of RAM. Virtual memory addresses do not share the same address space as physical memory addresses, so they don't share the same addressing limitations. 64-bit applications can access much, much more per application (8T of physical RAM, and up to a total of 16EB of paged RAM - where 1 exabyte = 1 million terabytes).

Sign In or Register to comment.