Skip site navigation (1)Skip section navigation (2)
Date:      Wed, 18 Jun 2003 01:53:28 -0700
From:      Terry Lambert <tlambert2@mindspring.com>
To:        David Xu <davidxu@viatech.com.cn>
Cc:        Marcel Moolenaar <marcel@xcllnt.net>
Subject:   Re: Nvidia, TLS and __thread keyword -- an observation
Message-ID:  <3EF02888.4E72CE7F@mindspring.com>
References:  <20030617071810.GA2451@dhcp01.pn.xcllnt.net><Pine.BSF.4.21.0306171433060.31025-100000@InterJet.elischer.org> <002101c3352a$e931a7f0$0701a8c0@tiger>

next in thread | previous in thread | raw e-mail | index | archive | help
David Xu wrote:
[ ... implicit TLS initialization and destruction ... ]

> I believe this will add overhead to thread creating and destroying,

Yes.  It will.  See my other posting for the tradeoffs.  The
complexity is not as bad as Marcel makes out, but it's still
a bad tradeoff for most existing threaded applications and
libraries, even if we thing more people will use implict TLS
as time goes on.

I think it's the wrong tradeoff, too.  I would make them burn
a general purpose register -- one that they are allowed to burn,
as an application -- on FreeBSD.  I have a hard time believing
that any of their functions use up all the registers, even on
a register-poor CISC architecture like x86; if they are that
complex, then they are doing so much stuff that explicit TLS
access overhead would be lost in the noise.

-- Terry



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?3EF02888.4E72CE7F>