32-bit programs on 64-bit Windows

Status
Not open for further replies.

miha2

Distinguished
Aug 14, 2009
525
1
18,995
Dear fellows, I might have read some threads/created others, but either I didn't read them thorough, or just didn't understand. Please don't think I'm stupid, though...

So, the question is:

(Just a rude example, it doesn't have to be Maya, just any program that theoretically could take up all memory on 32-bit system excluding Windows and other programs, just this specific program)

Let's imagine I have a big program, like Autodesk Maya 32-bit, and trying to make a huge project in it on a 64-bit Windows, but here is the deal:

If I have a highest-end desktop with Ivy Bridge CPU, Nvidia Quadro GPU, and other parts including 64 GB (read "any/unlimited amount") of memory for example, and am trying to launch the 32-bit program on that computer that can use 4 GB, how much memory would that program use? What if I launch 2 programs, each using 2 GB? I mean, will they use 3 GB as in example of how much 32-bit Windows can use or 4 GB? What if I launch 3 programs, each using 2 GB? Will it work that way? Will they all work simultaneously?

Here's the simpler version of my question:

32-bit Windows 7 can take up to 3.3 GB of memory, but I want to make a huge project in Maya 32-bit on Windows 7 64-bit that would use 3.5 GB. Of course my desktop won't be able to run it smoothly. I have a Maya only 32-bit, which I reinstalled on my new 64-bit computer. Now, with my Maya 32-bit, I'm launching it and editing my huge project to be even bigger, so that it'd take 4 GB of memory. I want to launch Photoshop or another program that would take a lot of memory. Will it launch? Won't my Maya give part of its memory to Photoshop?

I hope you understand my point, but in case you don't, please let me know. Thanks.
 
Solution
Each extra 32bit program you start has access to its own up-to-4GB address space. If you have 64GB RAM, you can run up to 16 32bits programs each using ~3-4GB each.

As said above, programs only use as much memory as they need to regardless of how much of it you have.
Just launching the program will use minimal memory, its what you start doing with the program that determines how much memory is used. If all your main memory (RAM) is used though, Windows starts using the pagefile, or virtual memory, which is actually a file set aside on your your hard drive for exactly this purpose (which works like memory, but its really slow compared to your RAM). So basically, unless you have your pagefile turned off, you really can't run out of memory, unless your hard drive is full. Does that make sense?
 
Hi, It's actually a good question.
You might find the answer here, although the OS is slightly different:
http://blogs.citrix.com/2011/10/13/wow64-memory-mapping-of-32bit-apps-running-on-a-64bit-windows/
The answer is: 32bit applications ran simultaneously can access and make use of memory beyond 4GB. And every application is handled independently.
 

InvalidError

Titan
Moderator
Each extra 32bit program you start has access to its own up-to-4GB address space. If you have 64GB RAM, you can run up to 16 32bits programs each using ~3-4GB each.

As said above, programs only use as much memory as they need to regardless of how much of it you have.
 
Solution

miha2

Distinguished
Aug 14, 2009
525
1
18,995
Thanks alexoiu and InvalidErrror, your answers explain exactly what I was asking about. And alexoiu, thanks for the website. I think it would be a great idea to see the topic that would explain how the 32-bit programs work on 64-bit Windows here, on Tom's Hardware, and so that it would be easy to google it. Anyway, thanks guys for your help.
 
Status
Not open for further replies.