在SBCL上编译ACL2时,如何避免崩溃到低级调试器?

时间:2014-09-03 12:47:47

标签: sbcl acl2

在SBCL上编译ACL2时,如何避免崩溃到低级调试器?以下是我在Linux上使用SBCL 1.2.3进行编译时收到的错误消息:

<snip>
ACL2 loading '((COMP-FN :EXEC NIL "1" STATE)).
 NIL

Finished loading '((COMP-FN :EXEC NIL "1" STATE)).

******************************************************************************
          Initialization complete, beginning the check and save.
******************************************************************************
Heap exhausted during garbage collection: 7776 bytes available, 15360 requested.
 Gen StaPg UbSta LaSta LUbSt Boxed Unboxed LB   LUB  !move  Alloc
Waste   Trig    WP  GCs Mem-age
   0:     0     0     0     0     0     0     0     0     0        0
  0 10737418    0   0  0.0000
   1:     0     0     0     0     0     0     0     0     0        0
  0 10737418    0   0  0.0000
   2:     0     0     0     0     0     0     0     0     0        0
  0 10737418    0   0  0.0000
   3: 30389 30230     0     0 12248  2558    25    25     0 448761472
38039936 408790346    0   1  0.8870
   4: 32241 32765 32025 32577  1417  1177   182    42     0 91900528
439696  2000000    0   0  0.0000
   5:     0     0     0     0  1248   157     0     0     0 46039040
  0  2000000 1197   0  0.0000
   6:     0     0     0     0     0     0     0     0     0        0
  0  2000000    0   0  0.0000
   Total bytes allocated    = 586701040
   Dynamic-space-size bytes = 1073741824
GC control variables:
   *GC-INHIBIT* = false
   *GC-PENDING* = false
   *STOP-FOR-GC-PENDING* = false
fatal error encountered in SBCL pid 26451(tid 46912509763072):
Heap exhausted, game over.

Welcome to LDB, a low-level debugger for the Lisp runtime environment.
ldb> 

1 个答案:

答案 0 :(得分:2)

Matt Kaufmann写道:

  

要在SBCL上构建ACL2,必须增加内存大小   默认值为536870912字节。我一般使用选项   &#34; - 动态空间大小2000&#34;,例如我的〜/ bin / sbcl:

<some-path>/sbcl-1.2.2-x86-64-linux/src/runtime/sbcl --core <some-path>/sbcl-1.2.2-x86-64-linux/output/sbcl.core --dynamic-space-size 2000 "$@"