Sure, the limitation exists. We can broke it even with older
interfaces, but now we have quite pessimistic approach and don't use
even a quarter of it. I do not suggest to keep everything there, just
the most performance critical fields. With that interface we have much
flexibility there and can do fine tuning for better performance.
--
Ivan

On 10/25/06, Evgueni Brevnov <[EMAIL PROTECTED]> 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.

Thanks
Evgueni

On 10/25/06, Ivan Volosyuk <[EMAIL PROTECTED]> wrote:
> Well, AFAIU this part of Mikhail's proposal is not mandatory for all
> GCs. You can use original interface functions for GCv5: malloc GC TLS
> structure and install only one pointer into TLS.
>
> The only thing we need to change is to make GC to access and allocate
> its data by itself (for greater modularity).
> --
> Ivan
>
> On 10/25/06, Xiao-Feng Li <[EMAIL PROTECTED]> wrote:
> > Yes, this can be an optimization.
> >
> > I am not very sure if we can get obvious performance improvement with
> > this. I am usually conservative with interface change. :-)  Since
> > neither Windows nor Linux provides this kind of native support, I am
> > guessing they have their rationality.
> >
> > We probably want to delay this optimization in TM until we have
> > evidance for it, since what Mikhail wants is just to inline GC tls
> > data access easily.
> >
> > Thanks,
> > xiaofeng
> >
> > On 10/25/06, Ivan Volosyuk <[EMAIL PROTECTED]> wrote:
> > > Xiao-Feng, I think there should be no problem to get this to work.
> > > But, I also agree with Mikhail that it could be benefitial to have
> > > data directly available in TLS without additional pointer dereference.
> > > If we will have corresponding interface function to allocate more then
> > > one void pointer at once in TLS it can be used as optimization.
> > > --
> > > Ivan

Reply via email to