This is the mail archive of the gcc@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

Re: gomp slowness


On Fri, 2007-11-02 at 07:39 -0700, Ian Lance Taylor wrote:
> skaller <skaller@users.sourceforge.net> writes:

> In a C executable, TLS requires one extra machine register.  

You mean gcc?

> TLS
> variables are accessed via offsets from that register.  So what's the
> significant difference between that and your proposal?

I wasn't making a proposal. 

> The only way I can interpret your comments is that you are assuming
> that all TLS is Global Dynamic (e.g., accessed from a dlopen'ed shared
> library).  But stack based thread local storage won't work for
> dlopen'ed shared libraries at all.

No, I was assuming implementation of a call like:

	void *pthread_getspecific(pthread_key_t key);


> I think you need to look at the TLS access code before deciding that
> it has bad performance. 

You already said it costs a register? That's a REALLY high cost
to pay to support badly designed software.

-- 
John Skaller <skaller at users dot sf dot net>
Felix, successor to C++: http://felix.sf.net


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]