[Openmcl-devel] Performance of N-Body Test

Brent Fulgham bfulg at pacbell.net
Mon Nov 6 03:27:41 UTC 2006


I ran OpenMCL 32-bit PPC, 64-bit PPC, and SBCL 0.9.17 against the  
NBody test (http://shootout.alioth.debian.org/sandbox/benchmark.php? 
test=nbody&lang=sbcl&id=0).  While there is a significant performance  
difference (around 5-fold), I am concerned about the amount of memory  
consed (139,200,006,408 bytes for OpenMCL versus 8,192 bytes for SBCL).

Thanks,

-Brent

-------------- next part --------------
A non-text attachment was scrubbed...
Name: n-body.lisp
Type: application/octet-stream
Size: 4925 bytes
Desc: not available
URL: <http://lists.clozure.com/pipermail/openmcl-devel/attachments/20061105/067594c3/attachment.obj>
-------------- next part --------------

Case 1:  SBCL
===========
* (load "n-body.lisp")
STYLE-WARNING: redefining MAIN in DEFUN

T
* (time (nbody 20000000))
-0.169075164
-0.169031665
Evaluation took:
   343.263 seconds of real time
   52.304485 seconds of user run time
   0.581547 seconds of system run time
   0 calls to %EVAL
   0 page faults and
   8,192 bytes consed.
NIL
*


Case 2: OpenMCL 32-bit
====================
? (load "n-body.lisp")
; Warning: Error: "Too few arguments in call to #<Compiled-function  
LAST #x805A9FE>:
;          0 arguments provided, at least 1 required. "
;          signalled during compile-time evaluation of (LAST) .
; While executing: CCL::NX-CONSTANT-FOLD, in process listener(1).
;Compiler warnings :
;   Function call arguments don't match current definition of LAST,  
in MAIN.
#P"/Users/brent/Projects/Lisp/shootout/n-body.lisp"
? (time (nbody 20000000))
-0.169075164
-0.169031665
(NBODY 20000000) took 1,686,146 milliseconds (1686.146 seconds) to run.
Of that, 522,879 milliseconds (522.879 seconds) were spent in user mode
          143,716 milliseconds (143.716 seconds) were spent in system  
mode
          1,019,551 milliseconds (1019.551 seconds) were spent  
executing other OS processes.
204,707 milliseconds (204.707 seconds) was spent in GC.
139,200,006,376 bytes of memory allocated.
NIL
?


Case 3:  OpenMCL 64-bit
====================
? (load "n-body.lisp")
; Warning: Error: "Too few arguments in call to #<Compiled-function  
LAST #x805A9FE>:
;          0 arguments provided, at least 1 required. "
;          signalled during compile-time evaluation of (LAST) .
; While executing: CCL::NX-CONSTANT-FOLD, in process listener(1).
;Compiler warnings :
;   Function call arguments don't match current definition of LAST,  
in MAIN.
#P"/Users/brent/Projects/Lisp/shootout/n-body.lisp"
? (nbody 2)
-0.169075164
-0.169074743
NIL
? (time (nbody 20000000))
-0.169289783
-0.169237442
(NBODY 20000000) took 1,689,008 milliseconds (1689.008 seconds) to run.
Of that, 524,355 milliseconds (524.355 seconds) were spent in user mode
          143,928 milliseconds (143.928 seconds) were spent in system  
mode
          1,020,725 milliseconds (1020.725 seconds) were spent  
executing other OS processes.
200,581 milliseconds (200.581 seconds) was spent in GC.
139,200,006,408 bytes of memory allocated.
NIL
?



More information about the Openmcl-devel mailing list