[gambit-list] Steps to bootstrap Git master from Gambit 4.9.3

Marc Feeley feeley at iro.umontreal.ca
Mon Apr 6 11:49:29 EDT 2020


Nice!

I tried it out to check performance, and I’m quite surprized that the docker Gambit is over 3 times slower than the “native” Gambit:


  % gsi -e "(define (f x) (if (< x 2) x (+ (f (- x 1)) (f (- x 2)))))(pp (time (f 30)))"
  (time (f 30))
      0.248934 secs real time
      0.248852 secs cpu time (0.247554 user, 0.001298 system)
      25 collections accounting for 0.001492 secs real time (0.001458 user, 0.000035 system)
      172322368 bytes allocated
      1580 minor faults
      no major faults
  832040
  % docker run -it schemers/gambit:head gsi -e "(define (f x) (if (< x 2) x (+ (f (- x 1)) (f (- x 2)))))(pp (time (f 30)))"
  (time (f 30))
      0.823593 secs real time
      0.830000 secs cpu time (0.830000 user, 0.000000 system)
      26 collections accounting for 0.003341 secs real time (0.010000 user, 0.000000 system)
      172322368 bytes allocated
      1589 minor faults
      no major faults
  832040
  % docker run -it schemers/gambit:head gsi -v
  v4.9.3 20200101213000 x86_64-pc-linux-gnu "./configure '--prefix=/usr/local' '--enable-single-host' '--enable-multiple-threaded-vms'"


3x is a “big deal”! Do you have an explanation for this?  Is this typical of docker apps?

Marc



> On Apr 6, 2020, at 9:53 AM, Lassi Kortela <lassi at lassi.io> wrote:
> 
>> I’m not sure I understand the problem you are having.  I just tried to build from a fresh clone (on linux) and everything built with no issues and the “make check” passed.
> 
> No matter what kind of gsc-boot I tried, it didn't work.
> 
> But finally managed to solve the problem: I had used a shallow clone (`git clone --depth 1`) which caused a mysterious build failure. An ordinary `git clone` with the full history works fine, even with no 4.9.3 gsc on the system.
> 
> Anyway, there is now finally a ready-to-run Docker container of Gambit's latest commit!
> 
> docker run -it schemers/gambit:head
> 
> Should probably add Git to that container so that remote modules work (`gsi github.com/gambit/hello`).
> 
> _______________________________________________
> Gambit-list mailing list
> Gambit-list at iro.umontreal.ca
> https://mailman.iro.umontreal.ca/cgi-bin/mailman/listinfo/gambit-list





More information about the Gambit-list mailing list