gcl-devel
[Top][All Lists]
Advanced

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

[Gcl-devel] Re: Shootout


From: Camm Maguire
Subject: [Gcl-devel] Re: Shootout
Date: 26 Feb 2006 15:51:04 -0500
User-agent: Gnus/5.09 (Gnus v5.9.0) Emacs/21.2

Greetings, and thanks for the pointer to the shootout!

We have been approached for a GCL entry therein, and I intend to work
on this once 2.7.0 is finalized.

What I would really love is a set of concise benchmarks that point out
critical performance characteristics of the existing applications,
acl2/nqthm, maxima and axiom.  This way I can tell quickly when I've
spoiled the performance, etc.  I have a benchmarks subdirectory for
this purpose.  Right now it has the gabriel benchmarks, one of which
has your name attached.  Are these still key?  For example, GCL does a
poor job on flet right now -- there is no inlining, and a compiled
closure is built -- primarily because it is not critical to anyone as
far as I can see.  It should be quite simple however to replace with a
(funcall (lambda ...)) at the lisp level for full inlining, though
I've not tested this.

Take care,

Robert Boyer <address@hidden> writes:

> > If anyone ever comes across an example function which shows this weakness
> > clearly, I'd be most interested.
> 
> I have never built or used OCAML so you can distrust practically anything I
> might say about it, but the results posted at the Debian "shootout" are
> remarkable to me, considering that OCAML is a version of ML.
> 
> The following URL is one showing OCAML quite a bit better than SBCL on a
> prime sieve.
> 
>   
> http://shootout.alioth.debian.org/gp4/benchmark.php?test=all&lang=ocaml&lang2=sbcl
> 
> A lot of languages and implementations are compared, as you can see at:
> 
>   
> http://shootout.alioth.debian.org/old/benchmark.php?test=all&lang=all&xfullcpu=1&xmem=1&xloc=1&ackermann=1&ary=3&echo=5&except=1&fibo=2&hash=1&hash2=4&heapsort=4&hello=0&lists=3&matrix=3&methcall=5&moments=2&nestedloop=0&objinst=5&prodcons=1&random=3&regexmatch=4&reversefile=4&sieve=4&spellcheck=4&strcat=2&sumcol=3&wc=3&wordfreq=5&calc=Calculate
> 
> OCAML seems to be up there with GCC and Intel's C compiler, considerably
> better than CMU, SBCL, Scheme, and several Lisps I don't know about.
> 
> I don't see any GCL entries there today.  I seem to recall, there were some a
> few months ago in this vicinity.  Or maybe I'm just confusing it with CMU.  A
> nice number of examples of short little programs to play with, e.g.,
> 
>    ;;; The Great Computer Language Shootout
>    ;;; http://shootout.alioth.debian.org/
>    ;;; contributed by Dima Dorfman, 2005
> 
>    (defun nsievebits (m)
>      (declare (fixnum m))
>      (let ((a (make-array m :initial-element 1
>                         :element-type 'bit)))
>        (flet ((clear (i)
>               (loop for j fixnum from (+ i i) to (1- m) by i
>                     do (setf (aref a j) 0))))
>        (loop for i fixnum from 2 to (1- m)
>              when (= 1 (aref a i)) do (clear i)
>              count (= 1 (aref a i))))))
> 
>    (defun test (n)
>      (let ((m (* 10000 (expt 2 n))))
>        (format t "Primes up to~T~8<~d~>~T~8<~d~>~%" m (nsievebits m))))
> 
>    (defun main ()
>      (let* ((args #+sbcl sb-ext:*posix-argv*
>                 #+cmu extensions:*command-line-strings*
>                 #+gcl si::*command-args*)
>           (n (parse-integer (car (last args)))))
>        (when (>= n 0) (test n))
>        (when (>= n 1) (test (- n 1)))
>        (when (>= n 2) (test (- n 2)))))
> 
> 
> 

-- 
Camm Maguire                                            address@hidden
==========================================================================
"The earth is but one country, and mankind its citizens."  --  Baha'u'llah




reply via email to

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