The heap-size experimental branch

Matthew Mondor mm_lists at pulsar-zone.net
Fri Aug 28 23:15:56 UTC 2015


An experimental branch has been created called heap-size.  The goal is
for ECL to automatically resize the requested heap smaller, or to raise
the soft OS process RLIMIT_DATA to satisfy the heap size.  Without
this, it's possible for ECL to freeze if it reaches the OS-imposed
limit.

The latest commit includes a message on how to test it:
https://gitlab.com/embeddable-common-lisp/ecl/commit/a9f0539cea3f3b451007f84e396edcf43b6827c0

Code testing and review is welcome.  Notably hackish is heap_gap, which
is a guess on the heap size ECL already needs other than the
boehm-gc/general heap we're configuring with --heap-size.  If it's
always large enough, all should be fine, but if it's not, the freezing
issue could still occur.

There might be other ways to solve the freeze at the allocator or
boehm-gc levels.  However, it will still be useful for ECL to adapt the
heap to the OS-imposed limit, and to adapt the soft OS limit to the
heap ECL wants to use.

This is unrelated to the new ECL release; once considered stable enough
the heap-size branch should be merged on the develop branch.

Thanks,

-- 
Matt



More information about the ecl-devel mailing list