From: Kellie Fitton on
Hi,

The maximum allocatable size of memory is 2GB on a 32-bit system,
however, not applicable to the 64-bit windows, and if you use the
switch /3GB in the boot.ini file, you can increase that amount of
memory to 3GB per user process address space, and therefore reduce
the size of system address space from 2GB to 1GB bytes of memory,
and if you use the switch /PAE the application can address more
than 4GB of physical memory.

http://msdn.microsoft.com/library/default.asp?url=/library/en-us/memory/base/about_memory_management.asp

Kellie.

From: rivenburgh on
Unfortunately no, the data needs to be read from a file and processed a
bit. All of this data management is actually in an external library
that I don't want to modify too much. Swapping out "new" for HeapAlloc
sounds pretty manageable.

Thanks for the idea, though!

Reid

From: rivenburgh on
Thanks, Kellie. I wasn't aware of those functions. I'm not sure how
helpful they will be in my case, though. For one, I'm not sure if the
end users will have the necessary privileges as mentioned in the
manual. I'm also not sure if it's "friendly" to make a grab for a
potentially huge amount of memory using the Set version (which sounds
like the idea of allocating a 1.5 GB heap when the program starts and
working from that).

The ideal thing for me would be if the OS memory manager gave me only
what I ask for (e.g. 250 MB) and used no more, and did as good a job as
possible of minimizing memory fragmentation, improving my chances for
finding a contiguous chunk of memory of that size....

Reid

From: rivenburgh on
The requirement that a single memory allocation has to be contiguous in
physical memory is the killer, especially when each request results in
(at least temporarily) two such requests (i.e. ask for 250 MB, the OS
tries to find two 250 MB chunks). I understand that memory usage and
fragmentation under any particular circumstance is unpredictable, so
probably the best I can hope for is to make each request result in just
ONE request.

Thanks, Stephen.

Reid

From: rivenburgh on
Just for the record, the code in question isn't something I can post.
I wish I could....

I am able to allocate over 1 GB under the right conditions, so there
isn't any artificial ceiling of 1 GB on this machine.

Thanks,
Reid

First  |  Prev  |  Next  |  Last
Pages: 1 2 3 4 5 6 7
Prev: WMI compiing problem
Next: linker problem: __iob