On Mon, May 24, 2010 at 5:15 PM, Gabriel Dos Reis <email@example.com>
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?
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?)
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.