[phobos] Gcx: Would we ever want more than one?
Jonathan M Davis
jmdavisProg at gmx.com
Sat May 14 20:38:36 PDT 2011
On 2011-05-14 20:12, Brad Roberts wrote:
> On 5/14/2011 7:44 PM, Jonathan M Davis wrote:
> > On 2011-05-14 19:09, Brad Roberts wrote:
> >> On 5/14/2011 7:02 PM, David Simcha wrote:
> >>> On 5/14/2011 8:28 PM, Sean Kelly wrote:
> >>>> Technically, you want a free list per core. I don't know how practical
> >>>> it is to figure that out though.
> >>>>
> >>>> Sent from my iPhone
> >>>
> >>>> On May 12, 2011, at 8:14 PM, David Simcha<dsimcha at gmail.com> wrote:
> >>> The idea being that, if you have a free list per core, there will
> >>> almost never be any contention in practice, even if you have way more
> >>> threads than cores?
> >>
> >> Ideally neither contention nor cache swapping. It'd stay in the l1 or
> >> l2 of the core directly involved with the allocations. By being thread
> >> centric even if not contended it could still wander between cores and
> >> thus the caches associated with them.
> >>
> >> A serious micro-optimization, but..
> >
> > But we're always serious about our micro-optimizations! ;)
> >
> > Yes, anything which we can reasonably do to make the GC more efficient is
> > a good thing. Java already gets enough flak for its GC (most
> > undeservedly at this point), and it has an efficient one. We don't. So,
> > anything we can reasonably do to improve how well the GC performs is
> > definitely desirable.
> >
> > - Jonathan M Davis
>
> Macro before micro though.
Oh, definitely. But in this case, it sounds like we're talking about a fairly
major design decision with regards to thread pools, and we do want to consider
all of the various ramifications when making a decision about what best to do,
and such micro-optimizations factor in, though obviously any macro
optimizations which the decision affects take precedence.
- Jonathan M Davis
More information about the phobos
mailing list