On Thu, 1 Feb 2024, Thomas Schwinge wrote:
> Hi!
>
> On 2024-01-26T10:45:10+0100, Richard Biener <[email protected]> wrote:
> > On Fri, 26 Jan 2024, Richard Biener wrote:
> >> On Wed, 24 Jan 2024, Andrew Stubbs wrote:
> >> > [...] is enough to get gfx1100 working for most purposes, on top of the
> >> > patch that Tobias committed a week or so ago; there are still some test
> >> > failures to investigate, and probably some tuning to do.
> >> >
> >> > It might also get gfx1030 working too. @Richi, could you test it,
> >> > please?
> >>
> >> I can report partial success here. [...]
>
> >> I'll followup with a test summary once the (serial) run of libgomp
> >> testing finished.
>
> (Why serial, by the way?)
Just out of caution ... (I'm using the GPU for the desktop at the
same time and dmesg gets spammed with some not-so reassuring
"errors" during the offloading)
> >> At least there are quite some number of
> >> actual kernel executions and PASSing testcases.
> >
> > === libgomp Summary ===
> >
> > # of expected passes 29126
> > # of unexpected failures 697
> > # of unexpected successes 1
> > # of expected failures 703
> > # of unresolved testcases 318
> > # of unsupported tests 766
> >
> > full summary attached (compressed).
>
> Compating your old results ('| ' prefix in the following) with what I
> got with '-march=gfx1100' for AMD Radeon RX 7900 XTX. My GCC sources are
> a few weeks old, but have all the recent fix-up commits cherry-picked,
> and a work-around applied for:
>
> /tmp/ccfrKwEK.mkoffload.2.s:29:27: error: value out of range
> .amdhsa_next_free_vgpr 516
> ^~~
>
> (..., to be discussed later.)
>
> There are, I think, no compilation FAILs anymore; I'm only commenting on
> execution test FAILs. Not all FAILs appear all the time (so it follows
> that I may be missing a few), and 'libgomp.c++/../libgomp.c-c++-common'
> generally behaves similar to 'libgomp.c/../libgomp.c-c++-common', so
> omitting the former here.
>
> | FAIL: libgomp.c/../libgomp.c-c++-common/error-1.c output pattern test
>
> Not seeing that FAIL.
>
> I also see 'libgomp.c-c++-common/for-5.c' FAIL.
>
> | FAIL: libgomp.c/../libgomp.c-c++-common/icv-5.c execution test
> | FAIL: libgomp.c/../libgomp.c-c++-common/icv-6.c execution test
> | FAIL: libgomp.c/../libgomp.c-c++-common/icv-7.c execution test
> | FAIL: libgomp.c/../libgomp.c-c++-common/icv-9.c execution test
>
> I confirm 'libgomp.c-c++-common/icv-5.c', 'libgomp.c-c++-common/icv-9.c'
> FAIL, but 'libgomp.c-c++-common/icv-6.c', 'libgomp.c-c++-common/icv-7.c'
> PASS.
>
> | FAIL: libgomp.c/../libgomp.c-c++-common/non-rect-loop-1.c execution test
>
> Not seeing that FAIL.
>
> | FAIL: libgomp.c/../libgomp.c-c++-common/reduction-6.c execution test
>
> I confirm that FAIL, and also 'libgomp.c-c++-common/reduction-5.c'
> occasionally.
>
> | FAIL: libgomp.c/../libgomp.c-c++-common/requires-unified-addr-1.c
> execution test
> | FAIL: libgomp.c/../libgomp.c-c++-common/requires-unified-addr-2.c
> execution test
> | FAIL: libgomp.c/../libgomp.c-c++-common/target-45.c execution test
> | FAIL: libgomp.c/../libgomp.c-c++-common/target-implicit-map-3.c
> execution test
> | FAIL: libgomp.c/../libgomp.c-c++-common/target-is-accessible-1.c
> execution test
>
> Not seeing these FAILs.
>
> I also see 'libgomp.c-c++-common/reverse-offload-1.c' FAIL.
>
> | FAIL: libgomp.c/../libgomp.c-c++-common/task-detach-6.c execution test
> | WARNING: program timed out.
> | FAIL: libgomp.c/../libgomp.c-c++-common/task-in-explicit-1.c execution
> test
>
> I confirm these FAILs.
>
> | FAIL: libgomp.c/../libgomp.c-c++-common/teams-2.c execution test
>
> Known FAIL.
>
> | FAIL: libgomp.c/../libgomp.c-c++-common/teams-nteams-icv-1.c execution
> test
> | FAIL: libgomp.c/../libgomp.c-c++-common/teams-nteams-icv-2.c execution
> test
> | FAIL: libgomp.c/../libgomp.c-c++-common/teams-nteams-icv-3.c execution
> test
> | FAIL: libgomp.c/../libgomp.c-c++-common/teams-nteams-icv-4.c execution
> test
> | FAIL: libgomp.c/declare-variant-4-gfx900.c (test for excess errors)
> | FAIL: libgomp.c/declare-variant-4-gfx906.c (test for excess errors)
> | FAIL: libgomp.c/declare-variant-4-gfx908.c (test for excess errors)
> | FAIL: libgomp.c/declare-variant-4-gfx90a.c (test for excess errors)
> | FAIL: libgomp.c/declare-variant-4.c execution test
> | FAIL: libgomp.c/declare-variant-4.c
> scan-amdgcn-amdhsa-offload-tree-dump optimized "= gfx[^ ]+ \\\\(\\\\);"
> | FAIL: libgomp.c/examples-4/device-2.c execution test
> | WARNING: program timed out.
>
> Not seeing these FAILs.
>
> I also see 'libgomp.c/examples-4/teams-4.c', 'libgomp.c/target-31.c' FAIL.
>
> | FAIL: libgomp.c/target-teams-1.c execution test
>
> I confirm this FAIL.
>
> | FAIL: libgomp.fortran/[...] execution test
>
> You had a lot of FAILs there. I only see the following:
>
> | FAIL: libgomp.fortran/examples-4/teams-2.f90 -O0 execution test
> | [...]
>
> | FAIL: libgomp.fortran/examples-4/teams-4.f90 -O0 execution test
> | [...]
>
> | FAIL: libgomp.fortran/icv-6.f90 -O execution test
>
> | FAIL: libgomp.fortran/reverse-offload-1.f90 -O2 execution test
> | FAIL: libgomp.fortran/reverse-offload-1.f90 -O3 -fomit-frame-pointer
> -funroll-loops -fpeel-loops -ftracer -finline-functions execution test
> | FAIL: libgomp.fortran/reverse-offload-1.f90 -O3 -g (test for excess
> errors)
> | UNRESOLVED: libgomp.fortran/reverse-offload-1.f90 -O3 -g compilation
> failed to produce executable
>
> | FAIL: libgomp.fortran/reverse-offload-3.f90 -O execution test
> | FAIL: libgomp.fortran/reverse-offload-4.f90 -O execution test
>
> | FAIL: libgomp.fortran/task-detach-6.f90 -O0 execution test
> | [...]
>
> | FAIL: libgomp.fortran/task-in-explicit-1.f90 -O0 execution test
> | [...]
>
> You had a lot of FAILs for 'libgomp.oacc-c', 'libgomp.oacc-c++',
> 'libgomp.oacc-fortran'. For me:
>
> | FAIL:
> libgomp.oacc-c/../libgomp.oacc-c-c++-common/vector-length-128-10.c
> -DACC_DEVICE_TYPE_radeon=1 -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa -O2
> execution test
>
> I confirm this FAIL (also 'libgomp.oacc-c++').
>
> | FAIL: libgomp.oacc-c/../libgomp.oacc-c-c++-common/vprop.c
> -DACC_DEVICE_TYPE_radeon=1 -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa -O2
> (test for excess errors)
>
> Known FAIL (also 'libgomp.oacc-c++').
>
> | FAIL: libgomp.oacc-fortran/reduction-5.f90 -DACC_DEVICE_TYPE_radeon=1
> -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa -O0 execution test
>
> I confirm this FAIL.
>
>
> So, "not bad!", but also still some work to be done. :-)
I'm going to re-do the testing with all the fixes in on Monday and
will report back.
Richard.