gcl-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Gcl-devel] GCL exists while running smoe benchmarks


From: Jeronimo Pellegrini
Subject: [Gcl-devel] GCL exists while running smoe benchmarks
Date: Fri, 9 Nov 2018 17:23:05 -0200
User-agent: Mutt/1.10.1 (2018-07-13)

Hello,

So -- I had used GCL in the past with Spartns 
(https://gitlab.com/jpellegrini/spartns)
and it worked fine. However, currently this is what happens:

- the released version (Debian package, 2.6.12-80) fails
  several Spartns unit tests. This is finem because:

- the git checkout does pass all tests! However, when running 
  the benchmarks, it exits abnormally:

$ GCL_ANSI=1 gcl
GCL (GNU Common Lisp)  2.7.0 ANSI    Nov  6 2018 23:26:25
Source License: LGPL(gcl,gmp,pargcl), GPL(unexec,bfd,xgcl)
Binary License:  GPL due to GPL'ed components: (XGCL READLINE UNEXEC)
Modifications of this banner must retain notice of a compatible license
Dedicated to the memory of W. Schelter

Use (help) to get some basic information on how to use GCL.
Temporary directory for compiler files set to /tmp/user/1000/

>(si::use-fast-links nil) 

NIL

>(load "do-benchmarks.lisp")
...
... ;; lots of normal output here, from other functions being compiled
...
;; OPTIMIZE levels: Safety=0 (No runtime error checking), Space=0, Speed=3, 
(Debug quality ignored)
;; Finished compiling /tmp/user/1000/gazonk_12854_0.o.
;; Loading #P"/tmp/user/1000/gazonk_12854_0.o"

Error: 
Signalled by PROGN.
Condition in PROGN [or a callee]: INTERNAL-SIMPLE-ERROR: The assertion v && 
(unsigned long)(v+sz)<MAX_CODE_ADDRESS
 on line 1035 of alloc.c in function alloc_code_space
 failed: Success

Broken at SYSTEM::BREAK-LEVEL.  Type :H for Help.
    1  Return to top level. 
SPARTNS>> :bt

#0   INVOKE-DEBUGGER {loc0=#<conditions::internal-simple-error.0>} [ihs=21]
#1   LOAD-FASL {loc0=#P"/tmp/user/1000/gazonk_12854_0.o",loc1=nil} [ihs=18]
#2   LOAD-PATHNAME 
{loc0=#P"/tmp/user/1000/gazonk_12854_0.o",loc1=nil,loc2=:error,loc3=nil,loc4=nil...}
 [ihs=17]
#3   LOAD {loc0=#P"/tmp/user/1000/gazonk_12854_0.o"} [ihs=16]
#4   COMPILE {loc0=run-cvector-get,loc1=(nil),loc2=nil} [ihs=15]
#5   LOAD-STREAM {} [ihs=11]
#6   LOAD-PATHNAME 
{loc0=#P"benchmark.lisp",loc1=nil,loc2=:error,loc3=nil,loc4=nil,loc5=#<input 
str...} [ihs=10]
#7   LOAD {loc0="benchmark.lisp"} [ihs=9]
#8   LOAD-STREAM {} [ihs=7]
#9   LOAD-PATHNAME 
{loc0=#P"do-benchmarks.lisp",loc1=nil,loc2=:error,loc3=nil,loc4=nil,loc5=#<input...}
 [ihs=6]
#10   LOAD {loc0="do-benchmarks.lisp"} [ihs=5]

The benchmarks were written in a very lazy state of mind, so I have
a big macro that generates lots of functions. But I wasn't expecting this,
since the generated functions are actually simple (nested loops for accessing
vectors and hashtables, mostly)...

What does the error mean?
It's funny that the error happens not during the execution of the benchmark,
but when the function (which is quite simple actually) is being compiled!

That something called "MAX_CODE_ADDRESS" has been exceeded makes me worried! :-)

What could I possibly be doing to trigger that?

(Anyway -- ECL, SBCL, Clisp, ccl seem to compile and run the benchmarks with no
 problem)


The easy way to reproduce:

$ git clone https://gitlab.com/jpellegrini/spartns.git
$ cd spartns
$ GCL_ANSI=1 gcl
> (si::use-fast-links nil)

> (load "do-benchmarks.lisp")


Thanks,
J.




reply via email to

[Prev in Thread] Current Thread [Next in Thread]