Number: 190

Date: 19-Mar-84 17':02':52

Submitter: Sannella.PA

Source: Feuerman.pasa,JonL

Subject: Document in Performance section about how to defer GC, find storage leaks

Assigned To: 

Attn: Documentation

Status: Open


Problem Type: Documentation

Impact: Moderate

Difficulty: Hard

Frequency: Everytime

Priority: Unlikely

System: Language Support

Subsystem: Storage Formats/Mgt



Lisp Version: 26-Jan-84

Source Files: 

Microcode Version: 

Memory Size: 

File Server: 

Server Software Version: 

Disposition: '
["masinter" " 4-Sep-84 14':28':52" Source': Subject':]

Description: '
Date': 19 Mar 84 08':40 PST'
From': Feuerman.pasa'
Subject': Lisp': Garbage Collection'
cc': Feuerman.pasa'
Lisp-System-Date': 26-Jan-84 01':48':36'
Machine-Type': Dolphin'
Is there some way to temporarily turn off the garbage collection routine?  I realize I may be getting into trouble with this, but it''s something I want to look into.  The reason is that I''m trying to speed up a particular interactive routine, and everytime I call the routine, the cursor inverts for a good second or so before the user actually sees that the routine is being invoked.  The fact that we go through a garbage collection everytime I invoke the procedure probably means somthing, too.  Anybody know what that is?   How much trouble could I be getting into if I were to disable the reclaim temporarily until the routine was over?'
Date': 19 Mar 84 17':18 PST'
Subject': Re': AR 190': How to turn off GC ?'
In-reply-to':''s message of 19 Mar 84 17':03':38 PST (Monday)'
cc': Feuerman.pasa,'
This is not so much TURNING OFF the GC as it is temporarily deferring its work.'
You can modify the time-until-next-GC by setting RECLAIMMIN high before the operation (I believe 177777Q is the actual limit) and then setting it low, e.g.'
Ken, you should also find out why your routine is CONSing so much. TIMEALL, BREAKDOWN, and DOSTATS may be able to help you track it down. '
Please report any problems you have in tracking down the source of all of the GC activity.'
[to': LispSupport': this AR is not Fixed, but it may be type': Documentation]'
Date': 19 MAR 84 18':21 PST'
From': JONL.PA'
Subject': Re': Lisp': Garbage Collection'
To':   Feuerman.pasa, LispSupport'
cc':   JONL'
In response to the message sent  19 Mar 84 08':40 PST from Feuerman.pasa'
You could just adjust the GC parameters -- see page 18.2 of the new manual --'
and that would postpone the interval between reclaims.'
On the other hand, if you have a Dorado, you can call (DISABLEGC) and all the'
GC activity is shut down (unfortunately, you can''t then re-enable it).  The'
reason you need a dorado is that there is a subtle buggy interaction between'
the software and microcode after DISABLEGC has been called and I don''t think'
the other microcoders have taken the time to track it down and fix it [I did'
because I needed to run a benchmark -- the BOYER test -- with no GC running.'
SIgh, it ran slower because the dominating cost was page swap time].'


Test Case: 

Edit-By: masinter

Edit-Date:  4-Sep-84 14':28':54