|
From: | Vadim V. Zhytnikov |
Subject: | Re: [Gcl-devel] Re: [Maxima] Re: Lisp vs. Java vs. C++ speed comparison time? [LONG] |
Date: | Sun, 11 Jul 2004 15:36:30 +0400 |
User-agent: | Mozilla/5.0 (Windows; U; Windows NT 5.1; ru-RU; rv:1.6) Gecko/20040407 |
Camm Maguire writes:
Greetings! "Vadim V. Zhytnikov" <address@hidden> writes:Valery Pipin writes:On Saturday 03 July 2004 01:42, Camm Maguire wrote: <snipped>All lisps here are the latest versions in Debian unstable. GCL was run in ANSI mode. The machine was a dual Xeon 2.4Ghz. We already know that the relative GCL/CMUCL performance can vary somewhat by machine, presumably influenced by cache size and cpu/memory bandwidth ratios. It is clear for example that CMUCL is doing a better job on the memory layout/access times which predominate in the gc time component.Is that the reason why I do not observe the memory leakage with maxima computations that done with cmucl implementation. In opposite, the gcl implementation can consume so much memory that I force to restart the x-session or even to reboot PC.I don't think this is memory leak. Gcl memory layout is less compact compared to one of cmucl. The same computation on GCL require more RAM and it starts swapping earlier.This is an interesting observation. If you can quantify this withsome reproducible examples, we might be able to take a look at it.
It's actually very simple observation. Start lisp, and make 10000000 long list. Something like (progn (setq w (make-list 10000000)) nil) For clisp and cmucl this operation extends RAM by ~80Mb while for GCL it requires ~120Mb. It is clear that GCL uses 3 words for one cons cell while cmucl and clisp use 2 words. I wonder what is gcl cons cell size on 64bit machines? -- Vadim V. Zhytnikov <address@hidden>
[Prev in Thread] | Current Thread | [Next in Thread] |