I'm trying out different CLs and I can't figure out how to consistently invoke with valgrind. With cmucl I can't even see how to invoke a cl program as a script. I guess CLs often have an interpreted vs compiled mode, too; so my approach may be incongruous to CLs in general?
I also tried timings, but the one example I found just returns 0 for the execution time; so that's not helpful.
For something that was just a curiosity, this is really killing my interest.

For what I could run, here's the info:

- 576 bytes at exit
- 20 allocs
- 18 frees
- 5408 bytes allocated

- 488k bytes at exit
- 31 allocs
- 16 frees
- 534k bytes allocated

That puts ECL squarely in the same ballpark as Go, and SBCL roughly between Go and Python. If /deallocs is more important, then clearly these CLs outperform Go here.

Of course I have no runtimes here and this is just one poorly implemented micro benchmark.

More microbenchmark results!

(x): Bytes in use at exit
(m): Bytes allocated
(a): Allocs
(f): Frees

1.145 ms
(x) 576 b (m) 5.28 kb (a) 20 (f) 18

0.0031 ms
(x) 1.7 kb (m) 12.9 kb (a) 70 (f) 64

0.00093 ms
(x) 291 kb (m) 3.4 mb (a) 4,152 (f) 4,016

0.071 ms
(x) 488 kb (m) 533 kb (a) 31 (f) 16

Sign in to participate in the conversation

A instance dedicated - but not limited - to people with an interest in the GNU+Linux ecosystem and/or general tech. Sysadmins to enthusiasts, creators to movielovers - Welcome!