| Allegro CL version 10.1 Object described on page has changed in 10.1. 10.0 version |
Arguments: &optional location
Prints a list of quantities and sizes of lisp objects in the specified location in the heap, along with type names and type codes of each object type printed. The list is printed in sorted order starting with the object type with the most bytes in the specified location. Percentages are also printed; these are percentages of the total of the specified location. location is interpreted as follows:
|
Meaning |
:new |
Print information on objects in newspace |
:pan |
Print information on panified objects (see below) |
:notpan |
Print information on non-panified objects in newspace (see below) |
:old |
Print information on objects in oldspace, i.e. tenured objects |
:malloc |
Print information about the malloc arena. |
:holes |
Print information about the types and sizes of the objects that were removed on the most recent global-gc. Note that no output is available until the first global-gc is done. See the example below. |
:open-old |
Print information about all open old
areas. Open old areas are ones that are gc'ed in a
global gc. See the documentation on
:open-old-area-fence
at Parameters
that control generations and tenuring
in gc.htm.
|
:closed-old |
Print information about all closed
old areas. These areas are not gc'ed during a global gc (other than
forwarding pointers as necessary). See the documentation on
:open-old-area-fence
at Parameters
that control generations and tenuring
in gc.htm. In room output, closed
old areas are marked with asterisks.
|
t |
Print information on all objects. This is the default. |
A panified object (from Peter Pan, who never grew up) has a bit set that prevents it from being tenured. Only the system can set this bit. Note that malloc space, stack space, and purespace are not considered to be the heap.
Here is an example of the information printed when
location is :holes
. Note that
no information is printed until the first global garbage collection is
done (a global gc is triggered by a call to gc with argument t
). The output you see will likely be different, of
course.
cl-user(1): (print-type-counts :holes) code type items bytes total bytes = 0 cl-user(2): (gc t) cl-user(3): (print-type-counts :holes) code type items bytes 96: (simple-array t) 33 4656 34.3% 101: (simple-array character) 77 2888 21.3% 100: (simple-array (unsigned-byte 32)) 1 2504 18.5% 1: cons 304 2432 17.9% 15: structure 21 840 6.2% 9: closure 7 112 0.8% 18: bignum 9 88 0.6% 7: symbol 1 24 0.2% 11: readtable 1 16 0.1% total bytes = 13560 cl-user(4):
See also gc.htm for general information on garbage collection in Allegro CL.
Copyright (c) 1998-2017, Franz Inc. Oakland, CA., USA. All rights reserved.
The object described on this page has been modified in the 10.1 release; see the Release Notes.
Created 2017.2.15.
| Allegro CL version 10.1 Object described on page has changed in 10.1. 10.0 version |