Windows 7 Forums

Welcome to Windows 7 Forums. Our forum is dedicated to helping you find support and solutions for any problems regarding your Windows 7 PC be it Dell, HP, Acer, Asus or a custom build. We also provide an extensive Windows 7 tutorial section that covers a wide range of tips and tricks.


Windows 7: Out of RAM, what about HDD?

20 Jun 2015   #1
swift31

windows 7 ultimate 32 bit
 
 
Out of RAM, what about HDD?

I am playing a game on my 32 bit Win 7 Ultimate System with 3 GB RAM, I have set something to adress more than 2 GB memory for one application. Game is using all the available memory which is generally around 2.65 gb of RAM. When that game needs to adress memory more than 3 GB memory, there is no more available space on my physicial memory(RAM). So game crashes to desktop.

But, I read about something that uses HDD space when there is no more space in RAM called "Virtual Memory". I had Virtual Memory settings in my Windows with 9000 MB initial size & 16000 MB maximum size(which is in game installed disk, not in OS installed disk). So it looks like lack of memory problem has been solved, but there is no Virtual Memory usage actually in task manager, looks like my game using only RAM.

After all of this, I'm confused. Why Windows didn't swap memory to HDD from RAM though there is no available RAM space? Do you have any advice to force program to use Virtual Memory when there is no available RAM space?

All helps are appreciated. Thanks for any kind of help.


My System SpecsSystem Spec
.
20 Jun 2015   #2
GokAy

Windows 7 Ultimate x64 SP1
 
 

Is this how you did it?

Run cmd as admin:
Code:
bcdedit /set IncreaseUserVa 2600
restart PC.

If it fails, lower the value - experiment.

To remove it:
Code:
bcdedit /deletevalue IncreaseUserVa
If you used a 4GB patcher, there should be a backup copy of the game exe in game folder. Rename it back to original, and delete the patched exe.

Also, 5GB paging file (virtual memory) is enough for 3GB RAM. You don't need 9-16GB.
My System SpecsSystem Spec
20 Jun 2015   #3
swift31

windows 7 ultimate 32 bit
 
 

I did that as 2700 and after I set that as 4000 (I know 3GB is equal to 3072 MB but I wanted to program be at full capacity and to set maximum allocation.)
I used CFF explorer and developers of the game say that patching is needed. So it shouldn't be a problem.
Actually, I tried to lower UserVa value, but program has crashed faster while value is lowering.
So i'm going to lower the virtual memory, but isn't there any solution really?
My System SpecsSystem Spec
.

20 Jun 2015   #4
LMiller7

Windows 7 Pro 64 bit
 
 

There are a number of misconceptions about how Windows manages memory. This is far more complex than you imagine and would take quite a bit of space for even a basic introduction.

Quote:
I am playing a game on my 32 bit Win 7 Ultimate System with 3 GB RAM, I have set something to adress more than 2 GB memory for one application.
That setting has nothing to do with RAM usage at all but how much private virtual address space is available to applications that are Large Address Space Aware. Most are not. The problem you are having probably is due to exhaustion of private virtual address space, not a shortage of RAM. RAM shortages rarely cause any problems except poor performance.

Quote:
So it looks like lack of memory problem has been solved, but there is no Virtual Memory usage actually in task manager, looks like my game using only RAM.
Where are you expecting to see this? There is nothing in Task manager that will show how much pagefile is being used for an application. It really isn't that important.

What was the exact setting you made?

Edit: The highest valid value for IncreaseUserVa is 3072 but even that is often too high. I am not certain what happens with higher values but I suspect the setting would be ignored and the default value (2048) used.

There is a downside to setting this value too high. If too high the kernel will be short of address space and that can produce a variety of problems. That is why the setting is not on by default.

There is a huge amount of misinformation on the Internet regarding this setting.
My System SpecsSystem Spec
20 Jun 2015   #5
GokAy

Windows 7 Ultimate x64 SP1
 
 

To be honest:
- You need approximately 1GB memory for Windows itself
- That leaves you with 2GB memory
- x86 apps can only address 2GB memory (unless patched, but this is mostly for 64bit OS with more RAM)

I would just remove the patch, and remove the bcdedit entry (in my first post).

Quote:
developers of the game say that patching is needed
Can you give a link to this? I bet they are talking about 64bit systems.
My System SpecsSystem Spec
20 Jun 2015   #6
swift31

windows 7 ultimate 32 bit
 
 

I understood how much virtual memory is used on the Processes>Commit. But it was 3 not 0, i was false.

GokAy, i did that already but still crashing. Yes it is for 64bit systems but there is also /3GB switch on 32 bit OS. So I tried this because here is saying later Windows model are be able to /3GB switch.

Problem is all about the virtual adress space, is it? So I'm going to change my windows to 64bit. Actaully my processor is 64 bit and motherboard also. But i have no more RAMs than 4 GB and my taiwan-made motherboard supports up to 4 GB though it is 64 bit. I didn't understand that situation. But I read something that telling about like "x64 OS hasn't got so many positive effects on 4GB or lesser memory systems."

What can I do, do I have to change my OS bit support?

Is my processor' effectiveness going to be lowered? (Actually its effectiveness have no big importance to me just for curiosity)
My System SpecsSystem Spec
20 Jun 2015   #7
carwiz

Windows 7 Pro-x64
 
 

A 32-bit program on a 32-bit Windows 7 will get 2GB. A 32-bit program compiled PAE aware will get 4GB on a 64-bit Windows 7; Otherwise, it gets assigned 2GB.
My System SpecsSystem Spec
21 Jun 2015   #8
margrave

Size 12
 
 

Another victim of Microsoft's word play:
Quote   Quote: Originally Posted by swift31 View Post
I read about something that uses HDD space when there is no more space in RAM called "Virtual Memory".
Microsoft seems to have invented this ruse in the mid- or late-1990s. I guess Virtual Memory sounds sexier and more attractive than Demand Paging, the latter being a correct description of what you're referring to, while the former is something else entirely.

Windows (and most GP operating systems) have both paging and VM. But they're two different things. Virtual Memory has nothing to do with disk storage. Yet a generation has grown up with the false notion that it does.

Any CS student knows better. So does Microsoft. Read the MS/Richter books from that era. He lays out the plain facts, with no mention of the ruse. (I don't think he's the perpetrator.)
My System SpecsSystem Spec
21 Jun 2015   #9
swift31

windows 7 ultimate 32 bit
 
 

Quote   Quote: Originally Posted by carwiz View Post
A 32-bit program on a 32-bit Windows 7 will get 2GB. A 32-bit program compiled PAE aware will get 4GB on a 64-bit Windows 7; Otherwise, it gets assigned 2GB.
With CFF Explorer, 4GB Patcher like programs, allowing more than 2 GB to use is equal to compiling PAE aware? So my games executable file has got non-2gb limit version, and is it true to change my windows up to 64 bit?

Edit: Actually, you're saying it is limited to 2 GB but I'm seeing that game is using 2.6 GB memory around right now. I guess, I didn't understand this memory stuff completely.
My System SpecsSystem Spec
21 Jun 2015   #10
LMiller7

Windows 7 Pro 64 bit
 
 

There is an important detail about these 4 GB Patcher utilities that is rarely mentioned:

By default a 32 bit process receives a 2 GB virtual address space. Note that this is address space, not RAM. They are very different but I won't go into that here. A 32 bit OS can be configured to increase this to 3 GB and a 64 bit OS automatically to 4 GB. But this is opt in for 32 bit processes. They must specifically indicate to the OS that they are prepared to accept this or they will receive the normal 2 GB of address space. The 4 GB patcher utilities sets the Large Address Aware flag in the application that tells the 32 bit application to request this. The problem being that you may be forcing the application to lie about it's capabilities. The application may not be able to function properly (or at all) in such an environment. The fact that the developer did not set the flag himself indicates that the application was probably never tested in this way and may have serious problems with it. This includes many popular commercial applications. Testing an application for this is very complex and may not be completely reliable. The results of improperly setting the flag are unpredictable but often nasty. And the problem may only occur under unusual situations.

Note that the flag is "Large Address Aware", not PAE as mentioned in a previous post. PAE is something very different and of no consequence to applications.

Memory management in a modern OS is VERY complex. I have spent considerable time studying it and make no claims of understanding it fully.
My System SpecsSystem Spec
Reply

 Out of RAM, what about HDD?




Thread Tools Search this Thread
Search this Thread:

Advanced Search



Our Sites

Site Links

About Us

Find Us

Windows 7 Forums is an independent web site and has not been authorized, sponsored, or otherwise approved by Microsoft Corporation. "Windows 7" and related materials are trademarks of Microsoft Corp.

Designer Media Ltd

All times are GMT -5. The time now is 17:09.

Twitter Facebook Google+



Windows 7 Forums

Seven Forums Android App Seven Forums IOS App