Computer Chess Club Archives


Search

Terms

Messages

Subject: Re: Two memory-related questions

Author: Scott Gasch

Date: 12:12:16 04/16/02

Go up one level in this thread


>>An application can request up to 2GB of with malloc().  And it works in Windows
>>95/98 too.  Or were you talking about 3.1?
>
>No, as said above, about Windows 2000. I know that this should theoretically
>possible, but as I tried it for the EGTB cache, I didn't work. I did not have
>the time to check why this happens.

The most likely reason this happens is because you don't have a large enough
heap or the system can't find a large enough contiguous heap block to satisfy
your request.  Some suggestions:

1. Create your own heap before allocating huge blocks and tell it at creation
time that you are gunna use a ton of memory with it (see HeapCreate in MSDN).

2. Use VirtualAlloc instead of HeapAlloc or malloc.  If this fails there is
likely just not enough contiguous physical memory in your machine.

3. Use GlobalMemoryStatus to see the approximate status of the mm system.

4. I don't know if any of this works on 9x but I think it should.

Good luck,
Scott




This page took 0 seconds to execute

Last modified: Thu, 15 Apr 21 08:11:13 -0700

Current Computer Chess Club Forums at Talkchess. This site by Sean Mintz.