[Ecls-list] Changes in sequences

Gabriel Dos Reis gdr at integrable-solutions.net
Mon May 24 18:25:12 UTC 2010


On Mon, May 24, 2010 at 1:06 PM, Juan Jose Garcia-Ripoll
<juanjose.garciaripoll at googlemail.com> wrote:
> On Mon, May 24, 2010 at 5:15 PM, Gabriel Dos Reis
> <gdr at integrable-solutions.net> wrote:
>>
>> this begs a question I have had a for a while:  Is there anything that
>> can be done
>> to improve ECL's performance on programs that cons a lot? (e.g. OpenAxiom)
>
> Do you mean improving ECL or improving your program?

I meant ECL :-)


> Regarding the first topic, we should understand better how to optimize the
> garbage collector. I believe this has a lot of potential for optimization,
> in particular with the use of thread-local or inlined allocation, plus
> improvements in the mark phase to make it more efficient (packing the
> pointers in the C structures? simpler mark phases?)

I'm ignorant of what ECL's collector works.  I have so far assumed that
it just reuses the defaul H-W collector; but apparently, that is not the case?

> Regarding the second, I do not know. I realize that ECL's library deserves
> some study for many functions are sub-optimal in terms of consing,
> asymptotic efficiency, etc. I mean that even if your program conses a lot,
> it might be the case that the "consing" is not the performance sink per se,
> but rather inefficient implementations or algorithms.

I understand that second point.  Even if the client's algorithms are
suboptimal (in terms of theoretical complexity), should we still expect
order of magnitude between runs with ECL and other Lisps on the same
algorithm implementation?

-- Gaby




More information about the ecl-devel mailing list