On Mon, 25 Mar 2024, Richard Biener wrote:

> Add support for the gfx1036 RDNA2 APU integrated graphics devices.  The ROCm
> documentation warns that these may not be supported, but it seems to work
> at least partially.
> 
> x86 host bootstrap/regtest running, target-libgomp testing for the
> offload produces results comparable to those of gfx1030.  The nice
> thing is that gfx1036 is inside every Zen4 desktop CPU (Ryzen 7xxx)
> and testing on that doesn't interfere with a separate GPU used for
> your desktop (where I experienced crashes when using the GPU for both
> offload and graphics).
> 
> I'll note that while gfx1030 works with llvm14 gfx1036 needs llvm15
> as minimum version for the assembler.
> 
> OK for trunk?
> 
> I'll follow up with the libgomp testing test summary for archival
> purposes.

Here's the result of a

make -k -j4 check-target-libgomp 
RUNTESTFLAGS="--target_board=unix/-foffload-options=-march=gfx1036"

I had to manually kill some hung processes from the OACC offload
testsuite.  I'll try again later this week with your locking fix
applied to newlib (not sure if that's also employed for non-I/O).

Richard.


cat <<'EOF' |
Native configuration is x86_64-pc-linux-gnu

                === libgomp tests ===


Running target unix/-foffload-options=-march=gfx1036
FAIL: libgomp.c++/../libgomp.c-c++-common/icv-7.c execution test
FAIL: libgomp.c++/../libgomp.c-c++-common/teams-2.c execution test
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++/firstprivate-2.C (test for excess errors)
UNRESOLVED: libgomp.c++/firstprivate-2.C compilation failed to produce 
executable
XPASS: libgomp.c++/target-49.C execution test
FAIL: libgomp.c/../libgomp.c-c++-common/icv-7.c execution test
FAIL: libgomp.c/../libgomp.c-c++-common/teams-2.c execution test
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-gfx1030.c (test for excess errors)
FAIL: libgomp.c/declare-variant-4-gfx1100.c (test for excess errors)
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.oacc-c++/../libgomp.oacc-c-c++-common/deep-copy-10.c 
-DACC_DEVICE_TYPE_radeon=1 -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa  -O0  
execution test
FAIL: libgomp.oacc-c++/../libgomp.oacc-c-c++-common/deep-copy-10.c 
-DACC_DEVICE_TYPE_radeon=1 -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa  -O2  
execution test
FAIL: libgomp.oacc-c++/../libgomp.oacc-c-c++-common/parallel-dims.c 
-DACC_DEVICE_TYPE_radeon=1 -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa  -O0  
execution test
FAIL: libgomp.oacc-c++/../libgomp.oacc-c-c++-common/parallel-dims.c 
-DACC_DEVICE_TYPE_radeon=1 -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa  -O2  
execution test
FAIL: libgomp.oacc-c++/../libgomp.oacc-c-c++-common/private-atomic-1-gang.c 
-DACC_DEVICE_TYPE_radeon=1 -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa  -O0  
execution test
FAIL: libgomp.oacc-c++/../libgomp.oacc-c-c++-common/private-atomic-1-gang.c 
-DACC_DEVICE_TYPE_radeon=1 -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa  -O2  
execution test
FAIL: libgomp.oacc-c++/../libgomp.oacc-c-c++-common/static-variable-1.c 
-DACC_DEVICE_TYPE_radeon=1 -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa  -O0  
execution test
FAIL: libgomp.oacc-c++/../libgomp.oacc-c-c++-common/static-variable-1.c 
-DACC_DEVICE_TYPE_radeon=1 -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa  -O2  
execution test
FAIL: libgomp.oacc-c++/../libgomp.oacc-c-c++-common/vprop-2.c 
-DACC_DEVICE_TYPE_radeon=1 -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa  -O0  
execution test
FAIL: libgomp.oacc-c++/../libgomp.oacc-c-c++-common/vprop-2.c 
-DACC_DEVICE_TYPE_radeon=1 -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa  -O2  
execution test
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)
FAIL: libgomp.oacc-c/../libgomp.oacc-c-c++-common/deep-copy-10.c 
-DACC_DEVICE_TYPE_radeon=1 -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa  -O0  
execution test
FAIL: libgomp.oacc-c/../libgomp.oacc-c-c++-common/deep-copy-10.c 
-DACC_DEVICE_TYPE_radeon=1 -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa  -O2  
execution test
WARNING: libgomp.oacc-c/../libgomp.oacc-c-c++-common/parallel-dims.c 
-DACC_DEVICE_TYPE_radeon=1 -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa  -O0  
execution test program timed out.
FAIL: libgomp.oacc-c/../libgomp.oacc-c-c++-common/parallel-dims.c 
-DACC_DEVICE_TYPE_radeon=1 -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa  -O0  
execution test
FAIL: libgomp.oacc-c/../libgomp.oacc-c-c++-common/parallel-dims.c 
-DACC_DEVICE_TYPE_radeon=1 -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa  -O2  
execution test
FAIL: libgomp.oacc-c/../libgomp.oacc-c-c++-common/private-atomic-1-gang.c 
-DACC_DEVICE_TYPE_radeon=1 -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa  -O0  
execution test
WARNING: libgomp.oacc-c/../libgomp.oacc-c-c++-common/private-atomic-1-gang.c 
-DACC_DEVICE_TYPE_radeon=1 -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa  -O2  
execution test program timed out.
FAIL: libgomp.oacc-c/../libgomp.oacc-c-c++-common/private-atomic-1-gang.c 
-DACC_DEVICE_TYPE_radeon=1 -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa  -O2  
execution test
FAIL: libgomp.oacc-c/../libgomp.oacc-c-c++-common/static-variable-1.c 
-DACC_DEVICE_TYPE_radeon=1 -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa  -O0  
execution test
FAIL: libgomp.oacc-c/../libgomp.oacc-c-c++-common/static-variable-1.c 
-DACC_DEVICE_TYPE_radeon=1 -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa  -O2  
execution test
FAIL: libgomp.oacc-c/../libgomp.oacc-c-c++-common/vprop-2.c 
-DACC_DEVICE_TYPE_radeon=1 -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa  -O0  
execution test
FAIL: libgomp.oacc-c/../libgomp.oacc-c-c++-common/vprop-2.c 
-DACC_DEVICE_TYPE_radeon=1 -DACC_MEM_SHARED=0 -foffload=amdgcn-amdhsa  -O2  
execution test
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)

                === libgomp Summary ===

# of expected passes            30181
# of unexpected failures        43
# of unexpected successes       1
# of expected failures          705
# of unresolved testcases       1
# of unsupported tests          784

Compiler version: gcc libgomp 
Platform: x86_64-pc-linux-gnu
configure flags: --enable-languages=c,c++,fortran --disable-bootstrap 
--disable-libstdcxx-pch --enable-offload-targets=amdgcn-amdhsa 
--prefix=/abuild/rguenther/offload/install --host=x86_64-pc-linux-gnu 
--target=x86_64-pc-linux-gnu --build=x86_64-pc-linux-gnu
EOF
Mail -s "Results for gcc libgomp testsuite on x86_64-pc-linux-gnu" 
gcc-testresu...@gcc.gnu.org &&
mv 
/abuild/rguenther/offload/obj-x86/./x86_64-pc-linux-gnu/libgomp/testsuite/libgomp.sum
 
/abuild/rguenther/offload/obj-x86/./x86_64-pc-linux-gnu/libgomp/testsuite/libgomp.sum.sent
 &&
mv 
/abuild/rguenther/offload/obj-x86/./x86_64-pc-linux-gnu/libgomp/testsuite/libgomp.log
 
/abuild/rguenther/offload/obj-x86/./x86_64-pc-linux-gnu/libgomp/testsuite/libgomp.log.sent
 &&
true

Reply via email to