Re: [racket] Yet another garbage collection question: major GC cycles

2013-02-15 Thread Galler
Matthew and Ryan and Robby, MAJOR COLLECTIONS WITHOUT ACTIVITY The issue regarding major collections occuring with no activity was due to the collect function executing in lru.rkt on a timer. Now no activity equals no collections. Thanks Ryan. BACKGROUND AND NEXT QUESTION Purpose of fo

Re: [racket] Yet another garbage collection question: major GC cycles

2013-02-15 Thread Matthew Flatt
At Fri, 15 Feb 2013 16:55:09 -0500 (EST), Galler wrote: > Matthew, > > > A major collection is triggered when current memory use is twice > > the use at the last major collection. > > I'm not following this sentence, as it implies logarithmic growth in > memory, which is not observed.

Re: [racket] Yet another garbage collection question: major GC cycles

2013-02-15 Thread Galler
Matthew, A major collection is triggered when current memory use is twice the use at the last major collection. I'm not following this sentence, as it implies logarithmic growth in memory, which is not observed. At some point in the executable's life, the major GC cycles consistently occur

Re: [racket] Yet another garbage collection question: major GC cycles

2013-02-15 Thread Galler
Matt, Ryan Thanks very much for the answers, let me think about. I'm looking at the issue Ryan brings up with module references to lru.rkt, which surprised me. R./ Zack On Fri, Feb 15, 2013 at 2:39 PM, Matthew Flatt wrote: At Fri, 15 Feb 2013 14:16:38 -0500 (EST), Galler wrote: When an app

Re: [racket] Yet another garbage collection question: major GC cycles

2013-02-15 Thread Ryan Culpepper
I think the periodic two major collections are coming from the default servlet "manager", which defaults to a manager created by make-threshold-LRU-manager. (See the two calls to (collect-garbage) in web-server/managers/lru.rkt). Ryan On 02/15/2013 02:16 PM, Galler wrote: Dear Racketeers,

Re: [racket] Yet another garbage collection question: major GC cycles

2013-02-15 Thread Matthew Flatt
At Fri, 15 Feb 2013 14:16:38 -0500 (EST), Galler wrote: > When an application is compiled and run, the garbage collector in v5.3.2 > appears to run through a number of minor collection cycles, then will > execute two sequential major cycles, in rapid succession. > > [...] > > 1) Why are two suc

[racket] Yet another garbage collection question: major GC cycles

2013-02-15 Thread Galler
Dear Racketeers, *SMALL PREAMBLE* I'm trying to understand the observed GC behavior so I can create better application performance, and I'm focusing on the major GC-cycle. For usability, my desire would be to have a major-garbage-collection cycle last about the same time as a typical request