[Ecls-list] Slow bignums

Juan Jose Garcia-Ripoll juanjose.garciaripoll at googlemail.com
Sat Jan 30 22:47:31 UTC 2010

On Sat, Jan 30, 2010 at 5:16 PM, Waldek Hebisch <hebisch at math.uni.wroc.pl>wrote:

> Here is what oprofile tells me on my machine (this is not
> the newest ECL, if register change is commited I can retest
> with newest version):

Thanks for providing new evidence. I did not know about oprofile -- seems to
do a similar job as OS X's Shark, which is good.

> Top symbols:
> 8276     45.3479  5423     57.2530  libgc.so.1.0.3   ecl  GC_mark_from

This is what I do not understand and what I also see in the Mac.
GC_mark_from is taking too much time. I have the feeling that the garbage
collector is too eager in marking, looking at regions of memory that have
not really changed between garbage collections and misidentifying too many
pointers. Part of this may be due to ECL's mark routine. Maybe this can be
improved by using dedicated mark routines, as gcj does.

> 3149     17.2548  738       7.7914  libgmp.so.3.4.2  ecl  __gmpn_add_n
> 1699      9.3096  349       3.6845  libc-2.8.so      ecl  memcpy
> 1130      6.1918  688       7.2635  libgc.so.1.0.3   ecl
>  GC_header_cache_miss
> 1046      5.7315  932       9.8395  libgmp.so.3.4.2  ecl  __gmpn_mul_1
> Gc part looks bad.  But 10% in memcpy is not negligibe compared to 25%
> in libgmp.so.3.4.2.

That would be mostly absent in the latest version.


Instituto de Física Fundamental, CSIC
c/ Serrano, 113b, Madrid 28006 (Spain)
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <https://mailman.common-lisp.net/pipermail/ecl-devel/attachments/20100130/4e943e50/attachment.html>

More information about the ecl-devel mailing list