I picked up the experimental snapshot below and tried it (wrt problem #2 in my
summary
message).
The result is similar but not exactly the same. You still get a core dump. Using
gdb to look
at the core file, the seg fault happened in a different place, pscav.
I have attached a transcript. I also included a (room t) to show what
the various spaces look like before the purify.
-bill-
Raymond Toy wrote:
> >
> > I'm going to try to make a special build for you that has 256 MB of
> > read-only and 256 MB of static space. I'll let you know when it's done
> > and where you can find it.
>
> New binaries with 256 MB of read-only and static space. Find them at
>
> common-lisp.net:/var/ftp/pub/project/cmucl/experimental/cmucl-2004-04-20-big-mem*
>
> Ray
-- Attached file included as plaintext by Listar --
-- File: 2004_04_20-session.text
;;; a (room t) just before the end
Dynamic Space Usage: 54,126,960 bytes (out of 1,024 MB).
Read-Only Space Usage: 22,801,648 bytes (out of 256 MB).
Static Space Usage: 2,668,752 bytes (out of 256 MB).
Control Stack Usage: 6,032 bytes (out of 128 MB).
Binding Stack Usage: 600 bytes (out of 128 MB).
The current dynamic space is 0.
Garbage collection is currently enabled.
Summary of spaces: static dynamic
SIMPLE-VECTOR-TYPE:
15,073,744 bytes, 142,427 objects, 94% dynamic, 6% static.
CONS:
4,521,000 bytes, 565,125 objects, 87% dynamic, 13% static.
INSTANCE:
2,975,688 bytes, 164,080 objects, 87% dynamic, 13% static.
CODE:
1,164,968 bytes, 1,041 objects, 100% dynamic.
SYMBOL:
1,014,648 bytes, 42,277 objects, 39% dynamic, 61% static.
SAP:
920,496 bytes, 115,062 objects, 100% dynamic.
SIMPLE-STRING-TYPE:
855,552 bytes, 18,501 objects, 100% dynamic.
FDEFN:
328,400 bytes, 20,525 objects, 34% dynamic, 66% static.
SIMPLE-ARRAY-UNSIGNED-BYTE-8-TYPE:
174,176 bytes, 1,450 objects, 100% dynamic.
SIMPLE-ARRAY-UNSIGNED-BYTE-32-TYPE:
39,648 bytes, 130 objects, 100% dynamic.
CLOSURE:
7,968 bytes, 431 objects, 100% dynamic.
BIGNUM:
7,472 bytes, 480 objects, 100% dynamic.
SIMPLE-BIT-VECTOR-TYPE:
4,048 bytes, 260 objects, 100% dynamic.
VALUE-CELL:
3,344 bytes, 418 objects, 14% dynamic, 86% static.
SIMPLE-ARRAY-UNSIGNED-BYTE-2-TYPE:
3,104 bytes, 194 objects, 100% dynamic.
SIMPLE-ARRAY-UNSIGNED-BYTE-16-TYPE:
2,504 bytes, 45 objects, 100% dynamic.
SIMPLE-ARRAY-UNSIGNED-BYTE-4-TYPE:
1,680 bytes, 105 objects, 100% dynamic.
ARRAY-HEADER:
328 bytes, 10 objects, 10% dynamic, 90% static.
SINGLE-FLOAT:
104 bytes, 13 objects, 100% dynamic.
RATIO:
48 bytes, 3 objects, 100% static.
WEAK-POINTER:
48 bytes, 3 objects, 100% dynamic.
COMPLEX:
16 bytes, 1 object, 100% static.
Summary total:
27,098,984 bytes, 1,072,581 objects.
Top 10 dynamic instance types:
GC start ... done
KBNODE : 2,304,864 bytes, 144054 objects.
XREF::XREF-CONTEXT : 52,128 bytes, 2172 objects.
C::COMPILED-DEBUG-FUNCTION : 49,896 bytes, 891 objects.
C::CONTINUATION : 29,960 bytes, 535 objects.
C::COMPILED-DEBUG-INFO : 16,320 bytes, 680 objects.
PRETTY-PRINT:PRETTY-STREAM : 13,728 bytes, 143 objects.
PATHNAME : 12,960 bytes, 405 objects.
FORMAT::FORMAT-DIRECTIVE : 12,520 bytes, 313 objects.
C::CLAMBDA : 11,200 bytes, 100 objects.
C::CBLOCK : 10,960 bytes, 137 objects.
Other types: 100,248 bytes, 2627: objects.
Dynamic instance total: 2,614,784 bytes, 152,057 objects.
Top 10 static instance types:
PCL::FAST-METHOD-CALL : 74,088 bytes, 3087 objects.
PCL::ARG-INFO : 52,024 bytes, 929 objects.
KERNEL:LAYOUT : 33,264 bytes, 462 objects.
HASH-TABLE : 24,896 bytes, 389 objects.
KERNEL::STRUCTURE-CLASS : 16,912 bytes, 302 objects.
PCL::CACHE : 13,832 bytes, 247 objects.
C::TRANSFORM : 13,024 bytes, 407 objects.
PCL::PV-TABLE : 11,456 bytes, 358 objects.
STANDARD-METHOD : 10,720 bytes, 670 objects.
PCL::INITIAL : 10,672 bytes, 667 objects.
Other types: 129,976 bytes, 5090: objects.
Static instance total: 390,864 bytes, 12,608 objects.
;;; a few gcs at the end
*
; [GC threshold exceeded with 53,321,176 bytes in use. Commencing GC.]
; [GC completed with 53,318,728 bytes retained and 2,448 bytes freed.]
; [GC will next occur when at least 73,318,728 bytes are in use.]
NIL
*
; [GC threshold exceeded with 53,322,584 bytes in use. Commencing GC.]
; [GC completed with 53,318,744 bytes retained and 3,840 bytes freed.]
; [GC will next occur when at least 73,318,744 bytes are in use.]
NIL
* [Doing purification: Segmentation Fault - core dumped
;;; core file listed below
otwb-dev bbrew 80> ls -l
total 188584
-rw-rw-r-- 1 bbrew g940 30957 Apr 15 10:07 bb.lisp
-rw-rw-r-- 1 bbrew g940 4266498 Apr 19 14:12 big-non-purify-transcript.text
-rw-rw-r-- 1 bbrew g940 9006 Apr 19 12:52 big-purify-transcript.text
-rw-rw-r-- 1 bbrew g940 1215 Apr 16 10:24 big-save-test.lisp
-rw-rw-r-- 1 bbrew g940 3017 Apr 15 10:07 cmucl-19a-many-closure-bug.text
-rw-rw-r-- 1 bbrew g940 3862 Apr 15 09:10 cmucl-19a-purify-bug.text
-rw-rw-r-- 1 bbrew g940 91328504 Apr 21 11:31 core
-rw-rw-r-- 1 bbrew g940 17944 Apr 20 10:24 dummy-file-maker.lisp
-rw-rw-r-- 1 bbrew g940 2466 Apr 19 12:20 dummy-file-maker.lisp.~1~
-rw-rw-r-- 1 bbrew g940 8098 Apr 19 12:53 dummy-file-maker.sparcf
-rw-rw-r-- 1 bbrew g940 3376 Apr 20 10:41 purify-gdb-session.text
-rw-rw-r-- 1 bbrew g940 3224 Apr 20 10:27 purify-gdb-session.text.~1~
-rw-rw-r-- 1 bbrew g940 6542 Apr 20 10:31 purify-test.lisp
-rw-rw-r-- 1 bbrew g940 1094 Apr 19 12:03 purify-test.lisp.~1~
-rw-rw-r-- 1 bbrew g940 4232 Apr 20 10:29 purify-test.sparcf
;;; gdb session
otwb-dev bbrew 81> gdb /org/develop/reasoning/lisp/cmucl/ss2004-04-20/bin/lisp core
GNU gdb 5.0
Copyright 2000 Free Software Foundation, Inc.
GDB is free software, covered by the GNU General Public License, and you are
welcome to change it and/or distribute copies of it under certain conditions.
Type "show copying" to see the conditions.
There is absolutely no warranty for GDB. Type "show warranty" for details.
This GDB was configured as "sparc-sun-solaris2.4"...
Core was generated by `/org/develop/reasoning/lisp/cmucl/ss2004-04-20/bin/lisp -batch
-dynamic-space-s'.
Program terminated with signal 11, Segmentation Fault.
Error while mapping shared library sections:
/tmp/12797AG1623: No such file or directory.
Error while mapping shared library sections:
/tmp/12797AG1624: No such file or directory.
Error while mapping shared library sections:
/tmp/12797AG1625: No such file or directory.
Reading symbols from /usr/lib/libsocket.so.1...done.
Loaded symbols for /usr/lib/libsocket.so.1
Reading symbols from /usr/lib/libnsl.so.1...done.
Loaded symbols for /usr/lib/libnsl.so.1
Reading symbols from /usr/lib/libdl.so.1...done.
Loaded symbols for /usr/lib/libdl.so.1
Reading symbols from /usr/lib/libm.so.1...done.
Loaded symbols for /usr/lib/libm.so.1
Reading symbols from /usr/lib/libc.so.1...done.
Loaded symbols for /usr/lib/libc.so.1
Reading symbols from /usr/lib/libmp.so.2...done.
Loaded symbols for /usr/lib/libmp.so.2
Reading symbols from /usr/platform/SUNW,Ultra-4/lib/libc_psr.so.1...done.
Loaded symbols for /usr/platform/SUNW,Ultra-4/lib/libc_psr.so.1
Error while reading shared library symbols:
/tmp/12797AG1623: No such file or directory.
Error while reading shared library symbols:
/tmp/12797AG1624: No such file or directory.
Error while reading shared library symbols:
/tmp/12797AG1625: No such file or directory.
#0 pscav (addr=0x2800000b, nwords=0, constant=687057392)
at ../../src/lisp/purify.c:1168
1168 ../../src/lisp/purify.c: No such file or directory.
(gdb) print thing
$1 = 2
(gdb) print thingp
$2 = (lispobj *) 0x28000008
(gdb) print header
$3 = 687057616
(gdb) print count
$4 = 687057616
(gdb) print vector
No symbol "vector" in current context.
(gdb) q
otwb-dev bbrew 82>