harmony-dev mailing list archives

Site index · List index
Message view « Date » · « Thread »
Top « Date » · « Thread »
From "Ivan Volosyuk" <ivan.volos...@gmail.com>
Subject Re: [drlvm][gc] TLS access from GC: a proposal to refactor the code
Date Wed, 25 Oct 2006 13:11:31 GMT
On 10/25/06, Salikh Zakirov <Salikh.Zakirov@intel.com> wrote:
> Evgueni Brevnov wrote:
> > Hi Guys,
> >
> > Just one little note from me... AFAIK Window and Linux have limitation
> > on the number of TLS slots which can be allocated for any particular
> > thread. I believe here is strong (probably performance) reasons for
> > doing so. It can be a problem to implement arbitrary size TLS which
> > seems to be required in case we want to allocate memory for keeping
> > whole structures in it.
>
> Currently TM provides this service by using just *1* OS-level TLS slot.
> The keys are allocated from a hythread_t structure:
>
> thread/src/thread_private.h
>    166  typedef struct HyThread {
>
>    312      /**
>    313       * Array representing thread local storage
>    314       */
>    315      void *thread_local_storage[10];
>
>
> So, it seems reasonable to use 3 of them for GC, 1 for VM and 1 for JIT.

GCv5 may have different demand for the TLS data, but IMHO some of
performance critical data can be made directly available in TLS and
some less signicant may be accessed indirectly.

-- 
Ivan
Intel Enterprise Solutions Software Division

Mime
View raw message