On Nov 19, 10:03 pm, Jon Harrop <[email protected]> wrote:
> On Friday 20 November 2009 02:30:13 Daniel Hicks wrote:
>
> > On Nov 16, 7:33 pm, Jon Harrop <[email protected]> wrote:
> > > I see allocation as contention because the heap is a global shared
> > > resource. If you want to recover the performance of the previous
> > > generation of standalone languages with GCs optimized for rapid recycling
> > > on a single thread (e.g. OCaml) then you need to reimplement a mini-heap
> > > local to your thread and that is left up to the user on VMs like the JVM
> > > and CLR.
>
> > I don't know of any JVM that doesn't implement a thread-local heap, at
> > least in the "server" implementations.
>
> You mean a thread-local first generation, not a thread local heap.

The two most critical factors are having a lock-free allocation
protocol, and maintaining cache locality for relatively "new"
objects.  Sun's algorithms do both of these fairly well, and there are
other algorithms in use that probably do them better.  True local
heaps with read barriers to "promote" objects to global when globally
referenced have been implemented experimentally, but I don't think
there are any practical implementations.

--

You received this message because you are subscribed to the Google Groups "JVM 
Languages" group.
To post to this group, send email to [email protected].
To unsubscribe from this group, send email to 
[email protected].
For more options, visit this group at 
http://groups.google.com/group/jvm-languages?hl=.


Reply via email to