Re:Crystal: Fast as C, Slick as Ruby
by munificent on Thursday August 04, 2016 @12:19PM
(#12226569)
Alas, "until the OS refuses to give you more" is also not a meaningful signal anymore.
Re:Crystal: Fast as C, Slick as Ruby
by dikaiosune on Thursday August 04, 2016 @12:29PM
(#12226653)
Tracing garbage collectors have to have some metric for when to trigger a stop-the-world collection. IIRC, many GCs track heap usage and trigger stop-the-world when it gets above a threshold. GC'd language runtimes which don't have a tracing/compacting collector (e.g. CPython with refcounting) don't need to configure a heap size because the behavior doesn't vary as you use up your heap.
That's still no good reason to throw all kinds of "Out Of Memory" errors when you're hitting 1GB out of the 16GB of physical memory on my system.
Re:Crystal: Fast as C, Slick as Ruby
by mike_hearn on Friday August 05, 2016 @08:57AM
(#12231903)
That's what most GCs do set the default max heap size to, assuming you don't have a swap file.
Just like every compiled, non-GC program gets. It's annoying af to fiddle with interpreter/VM "maximum heap sizes".