On 01/30/2017 02:26 AM, Thomas Schwinge wrote:
> On Fri, 27 Jan 2017 08:06:22 -0800, Cesar Philippidis
> <[email protected]> wrote:
>> This is probably because CloverLeaf makes use
>> of ACC DATA regions in the critical sections, so all of those PSETs and
>> POINTERs are already preset on the accelerator.
>>
>> One thing I don't like about this patch is that I'm updating the host's
>> copy of the PSET prior to uploading it. The host's PSET does get
>> restored prior to returning from gomp_map_vars, however that might
>> impact things if the host were to run in multi-threaded applications.
>> Maybe I'll drop this patch from gomp4 since it's not very effective.
>
> ... also there is some bug somewhere; I see:
>
> PASS: libgomp.fortran/examples-4/async_target-2.f90 -O0 (test for
> excess errors)
> [-PASS:-]{+FAIL:+} libgomp.fortran/examples-4/async_target-2.f90 -O0
> execution test
> PASS: libgomp.fortran/examples-4/async_target-2.f90 -O1 (test for
> excess errors)
> [-PASS:-]{+FAIL:+} libgomp.fortran/examples-4/async_target-2.f90 -O1
> execution test
> PASS: libgomp.fortran/examples-4/async_target-2.f90 -O2 (test for
> excess errors)
> [-PASS:-]{+FAIL:+} libgomp.fortran/examples-4/async_target-2.f90 -O2
> execution test
> PASS: libgomp.fortran/examples-4/async_target-2.f90 -O3
> -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions
> (test for excess errors)
> [-PASS:-]{+FAIL:+} libgomp.fortran/examples-4/async_target-2.f90 -O3
> -fomit-frame-pointer -funroll-loops -fpeel-loops -ftracer -finline-functions
> execution test
> PASS: libgomp.fortran/examples-4/async_target-2.f90 -O3 -g (test for
> excess errors)
> [-PASS:-]{+FAIL:+} libgomp.fortran/examples-4/async_target-2.f90 -O3 -g
> execution test
> PASS: libgomp.fortran/examples-4/async_target-2.f90 -Os (test for
> excess errors)
> [-PASS:-]{+FAIL:+} libgomp.fortran/examples-4/async_target-2.f90 -Os
> execution test
>
> ..., and:
>
> PASS: libgomp.fortran/target3.f90 -O0 (test for excess errors)
> [-PASS:-]{+FAIL:+} libgomp.fortran/target3.f90 -O0 execution test
> PASS: libgomp.fortran/target3.f90 -O1 (test for excess errors)
> [-PASS:-]{+FAIL:+} libgomp.fortran/target3.f90 -O1 execution test
> PASS: libgomp.fortran/target3.f90 -O2 (test for excess errors)
> [-PASS:-]{+FAIL:+} libgomp.fortran/target3.f90 -O2 execution test
> PASS: libgomp.fortran/target3.f90 -O3 -fomit-frame-pointer
> -funroll-loops -fpeel-loops -ftracer -finline-functions (test for excess
> errors)
> [-PASS:-]{+FAIL:+} libgomp.fortran/target3.f90 -O3 -fomit-frame-pointer
> -funroll-loops -fpeel-loops -ftracer -finline-functions execution test
> PASS: libgomp.fortran/target3.f90 -O3 -g (test for excess errors)
> [-PASS:-]{+FAIL:+} libgomp.fortran/target3.f90 -O3 -g execution test
> PASS: libgomp.fortran/target3.f90 -Os (test for excess errors)
> [-PASS:-]{+FAIL:+} libgomp.fortran/target3.f90 -Os execution test
>
> In all cases, the run-time error message is:
>
> libgomp: Pointer target of array section wasn't mapped
I'm not seeing any of these failures on power8 and x86_64 with multilibs
disabled. How did you configure gcc? And those are OpenMP tests. Are you
testing OpenMP target offloading, if so how?
> For reference, I'm appending the patch, which wasn't included in the
> original email.
Whoops. Thanks!
Cesar