Re: [gomp4.5] depend nowait support for target

2015-11-13 Thread Ilya Verbin
On Fri, Nov 13, 2015 at 17:41:53 +0100, Jakub Jelinek wrote: > On Fri, Nov 13, 2015 at 07:37:17PM +0300, Ilya Verbin wrote: > > I don't know which interface to implement to maintain compatibility in the > > future. > > Anyway, currently it's impossible that a process will use the same > > libofflo

Re: [gomp4.5] depend nowait support for target

2015-11-13 Thread Jakub Jelinek
On Fri, Nov 13, 2015 at 07:37:17PM +0300, Ilya Verbin wrote: > I don't know which interface to implement to maintain compatibility in the > future. > Anyway, currently it's impossible that a process will use the same > liboffloadmic > for 2 different offloading paths (say GCC's in exec and ICC's i

Re: [gomp4.5] depend nowait support for target

2015-11-13 Thread Ilya Verbin
On Fri, Nov 13, 2015 at 16:11:50 +0100, Jakub Jelinek wrote: > On Fri, Nov 13, 2015 at 11:18:41AM +0100, Jakub Jelinek wrote: > > For the offloading case, I actually see a problematic spot, namely that > > GOMP_PLUGIN_target_task_completion could finish too early, and get the > > task_lock before t

Re: [gomp4.5] depend nowait support for target

2015-11-13 Thread Jakub Jelinek
On Fri, Nov 13, 2015 at 11:18:41AM +0100, Jakub Jelinek wrote: > For the offloading case, I actually see a problematic spot, namely that > GOMP_PLUGIN_target_task_completion could finish too early, and get the > task_lock before the thread that run the gomp_target_task_fn doing map_vars > + async_r

Re: [gomp4.5] depend nowait support for target

2015-11-13 Thread Jakub Jelinek
On Thu, Nov 12, 2015 at 11:51:33PM +0300, Ilya Verbin wrote: > I'm unable to reproduce the hang (have tried various values of > OMP_NUM_THREADS). > The testcase just aborts at (a != 50 || b != 4 || c != 20), because > a == 37, b == 12, c == 40. The hang has been with a fprintf (stderr, "...\n");

Re: [gomp4.5] depend nowait support for target

2015-11-12 Thread Ilya Verbin
On Thu, Nov 12, 2015 at 18:45:09 +0100, Jakub Jelinek wrote: > But the testcase I wrote (target-33.c) hangs, the problem is in the > #pragma omp target nowait map (tofrom: a, b) depend(out: d[3]) > { > #pragma omp atomic update > a = a + 9; > b -= 8; > } > #pragma omp target now

Re: [gomp4.5] depend nowait support for target

2015-11-12 Thread Ilya Verbin
On Thu, Nov 12, 2015 at 18:58:22 +0100, Jakub Jelinek wrote: > > Unfortunately, target-32.c fails for me using emulation mode: > > I haven't managed to get it stuck yet (unlike the target-33.c one, see > another mail), what OMP_NUM_THREADS you are using > and how many cores/threads? OMP_NUM_THREA

Re: [gomp4.5] depend nowait support for target

2015-11-12 Thread Jakub Jelinek
On Thu, Nov 12, 2015 at 08:43:53PM +0300, Ilya Verbin wrote: > > Can you please try to cleanup the liboffloadmic side of this, so that > > a callback instead of hardcoded __gomp_offload_intelmic_async_completed call > > is used? > > Do you mean something like the patch bellow? I'll discuss it wit

Re: [gomp4.5] depend nowait support for target

2015-11-12 Thread Jakub Jelinek
Hi! Here is updated patch with the team == NULL case hopefully handled. But the testcase I wrote (target-33.c) hangs, the problem is in the #pragma omp target nowait map (tofrom: a, b) depend(out: d[3]) { #pragma omp atomic update a = a + 9; b -= 8; } #pragma omp target nowait

Re: [gomp4.5] depend nowait support for target

2015-11-12 Thread Ilya Verbin
On Wed, Nov 11, 2015 at 17:52:22 +0100, Jakub Jelinek wrote: > On Mon, Oct 19, 2015 at 10:47:54PM +0300, Ilya Verbin wrote: > > So, here is what I have for now. Attached target-29.c testcase works fine > > with > > MIC emul, however I don't know how to (and where) properly check for > > completi

[gomp4.5] depend nowait support for target

2015-11-11 Thread Jakub Jelinek
Hi! On Mon, Oct 19, 2015 at 10:47:54PM +0300, Ilya Verbin wrote: > So, here is what I have for now. Attached target-29.c testcase works fine > with > MIC emul, however I don't know how to (and where) properly check for > completion > of async execution on target. And, similarly, where to do un