On Tue, Jul 16, 2013 at 9:52 AM, Sandro Magi <[email protected]> wrote:
>
> This isn't true of on-the-fly collectors.


Correct. The only production ready on-the-fly collector implementation I'm
aware of is Azul-Zing. Is there another?

I also don't mean any of this to sound like our current GC systems are not
amazingly capable. They certainly are. I'm personally very excited about
Typescript+V8 for reasons unrelated to GC. However, they won't address this
huge benefit keeping C/C++ and now Objective-C in widespread use until the
pauses are gone.

The CHICKEN, CLOVER and STOPLESS collectors I previously linked also
> have pauses on the order of hundreds of microseconds, which is an
> acceptable latency for just about any application I can think of.
>

I agree those collectors demonstrated low-pause in research tests. However,
they are research collectors and not available for us to test and evaluate
in real world scenerios. I personally believe they have problems for real
world practical use related to their "dual code-paths" strategy, if for no
other reason than the complexity of managing JIT/PIC + dual-code-paths is
quite a challenge. However, if one of them was delivered in a production GC
that actually worked, I'd certainly be excited to try it.

Speaking more generally, because on-the-fly collectors require a
write-barrier, they have generally been thought to create an undesirable
tradeoff between pauses and efficiency. I think for a brief time there was
a hotspot "treadmill" collector which tried this but was dropped. Azul-Zing
tries to "beat" this problem by using hardware-MMU support for cheaper
write-barriers.

Here is something interesting I hadn't seen before.. a 2006 research
on-the-fly JVM collector using refcount+cycle-finding-GC (like Python).
Their Figure 15 throughput+latency results look promising. I've always felt
there were legs in this technique because the pathological cases of this
design are easier for application programmers to work around than the
stop-the-world pause. Sadly it doesn't compact, and AFAIK it's not
available.

http://www.cs.ucsb.edu/~ckrintz/racelab/gc/papers/levanoni-on-the-fly-rc.pdf
_______________________________________________
bitc-dev mailing list
[email protected]
http://www.coyotos.org/mailman/listinfo/bitc-dev

Reply via email to