Hi Neal, The code is not using tail recursion, but my test code is allocating and deallocating large structures about 20 times before the crash.
I am limiting memory for DrRacket to 1GB (the system has 3GB). DrRacket was using about 800MB the last time I checked before the crash. Note that it doesn't give me the out of memory message. When I hit Run, DrRacket doesn't give back memory to the OS, but that is no surprise. I know that this is not a very complete bug report. I just put it out there in case someone else is seeing something similar and maybe together we can characterize the issue better. Thanks, -Joe On Mon, Feb 20, 2012 at 10:09 PM, Neil Van Dyke <n...@neilvandyke.org>wrote: > Windows is very much running out of RAM, and is pounding swap? > > Were you able to look at the process sizes, so you know roughly how much > virtual memory DrRacket was using, and whether any other processes were > using lots of virtual memory? > > It could be that DrRacket was using a huge amount of virtual memory, or it > could be that some other process was, but you were noticing it in DrRacket > because a GC cycle was leading to thrashing. > > If DrRacket is indeed using a huge amount of memory, you might take a look > at the code you were running in DrRacket, and whether all the memory usage > of that code is necessary. One of the first things to look at is whether > you're using tail calls everywhere you can in recursion-intensive parts of > the code. > > Also, I actually disable swap on Linux and Windows workstations I set up > -- any process of mine that doesn't fit in RAM is dead to me. My > workstations are 5 year-old laptops with 2-3 GB of RAM each, and so far > that has been more than enough RAM. > > -- > http://www.neilvandyke.org/ >
____________________ Racket Users list: http://lists.racket-lang.org/users