[LLVMdev] 2.2 garbage collector questions

Jon Harrop jon at ffconsultancy.com
Tue Feb 5 14:31:41 PST 2008


On Tuesday 05 February 2008 21:15:16 Carl Friedrich Bolz wrote:
> In my opinion this is exactly what LLVM _should_ provide. If you try to
> implement an exact GC one of the most annoying bits is getting
> information about your stack roots. Using a shadow stack is possible but
> there are costs attached to it (in PyPy we observed slowdowns of around
> 5%) as well as implementation complexity.
>
> http://morepypy.blogspot.com/2008/01/finding-gc-roots-using-llvm-or-parsing
>.html

To put this into perspective, the difference in allocation performance (which 
is also due to different run-times between OCaml and F#) is up to 500%, so 
the 5% difference you've observed is tiny and (IMHO) well within the "no 
significant difference" region. Moreover, I'd be amazed if that 5% were not 
tremendously architecture and platform specific.

How many CPU designs and compilers have you tried this on?

-- 
Dr Jon D Harrop, Flying Frog Consultancy Ltd.
http://www.ffconsultancy.com/products/?e



More information about the llvm-dev mailing list