Path: utzoo!utgpu!news-server.csri.toronto.edu!clyde.concordia.ca!uunet!samsung!uakari.primate.wisc.edu!ames!eos!shelby!cis!ruf From: ruf@dolores.Stanford.EDU (Erik Ruf) Newsgroups: comp.lang.scheme.c Subject: Large heap (>16MB) question Message-ID: Date: 9 May 90 07:21:46 GMT Sender: news@cis.Stanford.EDU (USENET News System) Organization: Center for Integrated Systems, Stanford University Lines: 28 I'm running CScheme 7(beta) on HP9000/350's, using the compiled runtime system and the Liar compiler. My problem is that, by default, the system uses only 24 address bits, limiting me to a 16MB heap (i.e. 1 mega-cons) which is (unfortunately) too small for my current application (yes, I know that's a lot of memory, but it's true). I need a larger address space. What do I need to change to make this happen? It seems that I can recompile without setting the Heap_In_Low_Memory flag, which will move the tags out of the address, and give me a 32-bit address. I have two questions about this method: 1. Will it work? (i.e. is setting "hp9k300" compatible with not setting "Heap_In_Low_Memory", or are there other dependencies that will break it?). 2. If it does work, will the compiled runtime and the Liar compiler continue to work, or are they dependent on the address encoding? Is there any way for me to get a larger address space without being forced back into interpreted code? Also, will using "bchscheme" help me at all? It would free up the spare heap's worth of memory, but wouldn't the spare address bit I gain by this simply be used up for pointing into the disk storage? Any advice from the CScheme implementors or other hackers of the CScheme internals would be appreciated. -- Erik