[gomp4] force global locks for nvptx targets
Chung-Lin Tang
cltang@codesourcery.com
Wed Sep 9 08:08:00 GMT 2015
On 2015/9/9 04:02 AM, Cesar Philippidis wrote:
> This patch forces GOACC_LOCK to use locks in global memory regardless if
> the lock us for a worker or a gang. We were using a shared memory for
> worker locks, but we ran into an issue with that would sporadically
> involve deadlocks in worker reductions. We're still investigating that
> issue, but for the time being, global locks appear to work albeit with a
> lock contention penalty.
>
> I've applied this patch to gomp-4_0-branch.
>
> Cesar
>
Fixed typo, committed as obvious.
Chung-Lin
2015-09-09 Chung-Lin Tang <cltang@codesourcery.com>
* config/nvptx/nvptx.c (nvptx_xform_lock): Correct typo
of variable 'force_global_locks'.
-------------- next part --------------
Index: config/nvptx/nvptx.c
===================================================================
--- config/nvptx/nvptx.c (revision 227582)
+++ config/nvptx/nvptx.c (working copy)
@@ -3744,7 +3744,7 @@ nvptx_xform_lock (gimple stmt, const int *ARG_UNUS
return mode > GOMP_DIM_WORKER;
case IFN_GOACC_LOCK_INIT:
- return force_global_lock || mode != GOMP_DIM_WORKER;
+ return force_global_locks || mode != GOMP_DIM_WORKER;
default: gcc_unreachable();
}
More information about the Gcc-patches
mailing list