Max memory, threads and process

Hi! This is a more C++ general questions I am afraid, but I have not found a clear answer surfing other forums.
I am asuming that the max RAM that a of application can use is approximately 3Gb since it is 32bit compiled on Windows7. I can’t use the 64 beta since my code relays on Quicktime unfortunatelly.
I would like to know if forking my code, so I have two or three threads running the same code, would mean reaching the ram limit faster (let’s say as many times faster as threads I am running) or if a new thread will be understood by Windows as a new process and it could allocate another new approx 3Gb of RAM memory.
I guess that since threading is inside the general of process, it will harverster the RAM memory, but I am curious if somebody has something to say.
Best,
Diego

IIRC the limit for a single 32bit app is actually 2GB. The whole system (if its 32 bit) can only have 3.9something GB total. And you using multiple threads probably wouldn’t make you reach the limit faster, unless you also start using more RAM. But all the threads are a single process to windows. So if all of the threads combined reach 2GB, it will be at the limit.

1 Like