NextPrevUpTopContentsIndex

set-gc-parameters

Function
Summary

Sets the parameters from the garbage collector in 32-bit LispWorks.

Package

hcl

Signature

set-gc-parameters &key maximum-buffer-size minimum-buffer-size big-object promote-min-buffer promote-max-buffer new-generation-size minimum-overflow maximum-overflow minimum-for-sweep minimum-for-promote enlarge-by-segments => <no values>

Arguments

maximum-buffer-size

Maximum size of the small objects buffer.

minimum-buffer-size

Minimum size of the small objects buffer.

big-object

An object that is bigger than this value is "big". That is, it is not allocated from the small objects buffer, but from the big-chunk area (if it is allocated in generation 0 in the normal way).

promote-min-buffer

During promotion, a buffer is allocated in the generation being promoted into, and the objects promoted are moved into it. promote-min-buffer controls the minimum size of this buffer.

promote-max-buffer

Controls the maximum size of the promotion buffer.

new-generation-size

Controls the minimum enlargement of generation gen-num , for gen-num > 0. Value 0 means the generation is not expanded. Otherwise, new-generation-size must be a fixnum in the exclusive range (10000, 100000000) and the minimum expansion is then new-generation-size * gen-num words.

new-generation-size has no effect on the enlargement of generation 0.

maximum-overflow

Maximum size of the small-objects buffer in the big-chunk area.

minimum-overflow

Minimum size of the small-objects buffer in the big-chunk area.

minimum-for-promote

Controls the frequency of promotions. Setting minimum-for-promote to a high value causes the system to promote less frequently. This may improve performance for programs that allocate a lot of data for a short term and then delete it.

minimum-for-sweep

Controls when a mark-and-sweep takes place. Setting minimum-for-sweep to a high value causes the system to mark and sweep less often, which means it has to grow. The CPU time spent in garbage collection is mostly smaller, but the process is bigger and may cause more disk access.

enlarge-by-segments

A minimum for how much the image grows each time a segment is enlarged, as a multiple of 64K. This parameter is ignored when adding a static segment.

Values

None.

Description

This function sets the parameters of the garbage collector, using the keywords described above.

Note: set-gc-parameters is implemented only in 32-bit LispWorks. It is not relevant to the Memory Management API in 64-bit implementations.

See also

get-gc-parameters


LispWorks Reference Manual - 12 Mar 2008

NextPrevUpTopContentsIndex