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:

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

Sbcl:
- 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.

Follow

More microbenchmark results!

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

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

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

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

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

· · Web · 0 · 1 · 1
Sign in to participate in the conversation
Linux.Pizza

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!