[Openmp-commits] Switch to TLS for POWER
alexe at us.ibm.com
Mon Jul 6 07:50:00 PDT 2015
Yes, they need to go in sync
From: Hal Finkel <hfinkel at anl.gov>
To: Alexandre Eichenberger/Watson/IBM at IBMUS
Cc: <openmp-commits at dcs-maillist2.engr.illinois.edu>
Date: 07/02/2015 06:53 PM
Subject: Re: [Openmp-commits] Switch to TLS for POWER
This needs to be committed at the same time as the Clang patch to keep
everything working, correct?
----- Original Message -----
> From: "Alexandre Eichenberger" <alexe at us.ibm.com>
> To: openmp-commits at dcs-maillist2.engr.illinois.edu
> Sent: Thursday, June 4, 2015 7:40:46 AM
> Subject: [Openmp-commits] Switch to TLS for POWER
> I would like to request switching the threadprivate scheme to TLS
> Level Storage) for POWER before we get legacy code out there.
> measurements has shown TLS to have about 10x lower overhead (number
> change depending to the TLS scheme). TLS is also used by other
> (e.g. XL) and thus provide better interoperability.
> Approach is relatively simple: compiler still generate a call to
> the constructors and the destructors, but the functions calling the
> constructor/destructors have been changed a bit so that the compiler
> the constructor on the TLS version of the object (not the global one,
> as it
> currently is in KMP). Then, prior to starting a parallel function,
> workers check if there are no new constructors/destructors that have
> registered; if there are, they will call the constructors prior to
> the parallel region. Destructors are called when killing a worker
> KMP code change have been done (exclusively under #def for power
> architecture), LLVM changes have been done, code has been tested.
> will need to be coordinated with the LLVM changes, which must go at
> same time.
> If there is interest, and no code legacy issue, this patch could also
> applied for other architectures that have TLS support.
> (See attached file: june3-threadprivate-patch)
> Openmp-commits mailing list
> Openmp-commits at dcs-maillist2.engr.illinois.edu
Assistant Computational Scientist
Leadership Computing Facility
Argonne National Laboratory
More information about the Openmp-commits