How can I use a flash drive to increase my virtual memory?

0

My computer has 8gb of physical memory. I'm running some memory intensive processes that quickly eat up that 8gb. When the physical memory runs out, it starts using the virtual memory and I see pagefile.sys quickly shoot up to several GB in size. The free space on my main hard drive is low and I can't afford to buy a new one at this time. Because of this, I have to set my virtual memory on drive C: to around 1gb. My solution was to use my 32gb sandisk flash drive to hold another pagefile.sys. I changed my virtual ram settings to include my flash drive, with an initial size of 16gb and a maximum size to around 29gb, then restarted my computer.

I wrote a small python script to use up all available memory. It uses up what's left of the 8gb of physical memory, taps into the main drive's 1gb of virtual memory, then crashes. The flash drive remains untouched. I used dir /a g:\pagefile.sys to see if it even made a paging file on the drive, and it has not. I'm at a loss and google searches have not been helpful.

Is there a hidden step I'm missing? My goal is to be able to run my processes, which will take up easily 10-15gb of ram. Speed is not a primary concern here, just stability.

I am using windows 7 home premium 64 bit. The flash drive is a 32gb sandisk cruiser formatted to ntfs.

Daffy

Posted 2014-10-02T01:36:46.410

Reputation: 169

even if you get it to sort of work this method will be too slow... use the flashdrive to free up space on your hard drive so that you can use that. – Tyson – 2014-10-02T02:41:46.487

This could be only a "temporary" solution. Depending on your application, VM can involve a lot of write activity which could burn through the flash drive's service life. – fixer1234 – 2014-10-02T03:23:48.973

The process crashing has to do with per-process limits and nothing to do with system limits. – David Schwartz – 2014-10-02T05:10:27.117

Answers

3

The feature you're asking about is called ReadyBoost. It's a feature that was introduced in Windows Vista.

First, get rid of the pagefile.sys on the flash drive. It won't do you any good. Go to My Computer, right-click on your flash drive, and choose Properties. Then go to the ReadyBoost tab, and choose "Dedicate this device to ReadyBoost".

If you do not see the tab, then your drive does not support it. This Wikipedia article explains the requirements better than I can. One thing not on the Wikipedia page though is the fact that SanDisk flash drives in particular do not have their removable media bit set. This means the drive appears to Windows as a USB hard drive rather than a flash drive. That may make it incompatible.

Wes Sayeed

Posted 2014-10-02T01:36:46.410

Reputation: 12 024

1A small note I would like to add: ReadyBoost only uses the flash drive for disk caching. It only speeds up things like file access, opening applications, indexing, etc, and it does NOT act like Virtual Memory, which is real memory needed by programs to run. The only real solution for your case is to either upgrade your RAM or use less RAM (by closing down unneeded background processes and services) – 9a3eedi – 2014-10-02T05:14:04.440