Date: Mon, 16 Jun 2003 23:09:39 -0700 (PDT) From: Julian Elischer <julian@elischer.org> To: Terry Lambert <tlambert2@mindspring.com> Cc: Andy Ritger <ARitger@nvidia.com> Subject: Re: NVIDIA and TLS Message-ID: <Pine.BSF.4.21.0306162304070.5566-100000@InterJet.elischer.org> In-Reply-To: <3EEEADF5.6DC76F9F@mindspring.com>
next in thread | previous in thread | raw e-mail | index | archive | help
Terry, don't go overboard.. I think we can work with this.. I have some ideas.. We may be able to cut it down to 2 instructions in general and one for the N:N case using linker relaxation. It depends on how much we can hack teh linker to do similar stuff to what linux does, but notice tht on a fully dynamically linked object it looks like the Optimised 1 instruction version can't be used anyhow. (well it needs a bit more thinking but it may not be as bad as it seemed at first.) In the M:N case we can probably have the Userland thread scheduler set a pointer to the TLD blocks into the KSE mailox each time a new thread is scheduled.. %gs would be left the same but what it points to could be changed cheaply. On Mon, 16 Jun 2003, Terry Lambert wrote: > Gareth Hughes wrote: > > On Mon, 16 Jun 2003, Daniel Eischen wrote: > > > Right. It just seems wrong to me to be able to insert __thread > > > after every global variable in a library and instantly make > > > it thread-safe. > > > > Why, exactly? Surely, from a programming point of view, this is > > exactly what you want -- a transparent way to access your thread > > local data. > > No, what you want first and foremost is your code to compile and > run on all platforms, without limiting your market by relying on > defacto language extensions that have not been explicitly and > intentionally standardized by a recognized standards body. > > -- Terry > _______________________________________________ > freebsd-threads@freebsd.org mailing list > http://lists.freebsd.org/mailman/listinfo/freebsd-threads > To unsubscribe, send any mail to "freebsd-threads-unsubscribe@freebsd.org" >
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?Pine.BSF.4.21.0306162304070.5566-100000>