Failure to dlopen libgomp due to static TLS data

Andrew Haley
Thu Feb 12 18:23:00 GMT 2015

On 02/12/2015 04:16 PM, Rich Felker wrote:
> On Thu, Feb 12, 2015 at 05:11:45PM +0100, Jakub Jelinek wrote:
>> On Thu, Feb 12, 2015 at 11:09:59AM -0500, Rich Felker wrote:
>>> This usage is supposed to be deprecated. Why isn't libgomp using
>>> TLSDESC/gnu2 model?
>> Because it is significantly slower.
> Seems very unlikely. If storage is allocated in static TLS, TLSDESC is
> almost indistinguishable from IE in performance, even when you run
> artificial benchmarks that do nothing but hammer TLS access. When it
> gets allocated in dynamic TLS, it's somewhat slower, but still
> unlikely to matter for most usage IMO.

The problem I'm seeing is that dynamic TLS is always used even when not
necessary, and that hurts Java (which accesses TLS 128k times in the first
500ms or so of execution).  According to lxo his patch fixes that.


More information about the Gcc mailing list