public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Thomas Schwinge <tschwinge@baylibre.com>
To: Richard Biener <rguenther@suse.de>,
	Andrew Stubbs <ams@baylibre.com>,
	Tobias Burnus <tburnus@baylibre.com>
Cc: gcc-patches@gcc.gnu.org
Subject: libgomp GCN gfx1030/gfx1100 offloading status (was: [PATCH] amdgcn: additional gfx1100 support)
Date: Thu, 01 Feb 2024 15:41:49 +0100	[thread overview]
Message-ID: <878r44l00i.fsf@euler.schwinge.ddns.net> (raw)
In-Reply-To: <56rn2n3n-n340-n6on-6prr-soqpr9r7083q@fhfr.qr>

Hi!

On 2024-01-26T10:45:10+0100, Richard Biener <rguenther@suse.de> 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?)

>> 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.  :-)


Grüße
 Thomas

  parent reply	other threads:[~2024-02-01 14:41 UTC|newest]

Thread overview: 25+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2024-01-24 12:43 [PATCH] amdgcn: additional gfx1100 support Andrew Stubbs
2024-01-24 16:01 ` [patch] amdgcn: config.gcc - enable gfx1100 multilib; add gfx1100 to docs (was: [PATCH] amdgcn: additional gfx1100 support) Tobias Burnus
2024-01-26 12:26   ` [patch] amdgcn: config.gcc - enable gfx1030 and gfx1100 multilib; add them to the docs (was: [patch] amdgcn: config.gcc - enable gfx1100 multilib; add gfx1100 to docs) Tobias Burnus
2024-01-26 12:32     ` [patch] amdgcn: config.gcc - enable gfx1030 and gfx1100 multilib; add them to the docs Tobias Burnus
2024-01-26 12:40       ` Richard Biener
2024-01-26 12:59         ` Tobias Burnus
2024-01-26 16:21       ` Thomas Schwinge
2024-01-26 16:36         ` Richard Biener
2024-01-26 16:45         ` [patch] install.texi: For gcn, recommend LLVM 15, unless gfx1100 is disabled (was: [patch] amdgcn: config.gcc - enable gfx1030 and gfx1100 multilib; add them to the docs) Tobias Burnus
2024-01-29 10:01           ` [patch] install.texi: For gcn, recommend LLVM 15, unless gfx1100 is disabled Andrew Stubbs
2024-01-26  8:56 ` [PATCH] amdgcn: additional gfx1100 support Richard Biener
2024-01-26  9:45   ` Richard Biener
2024-01-26 10:19     ` Andrew Stubbs
2024-01-26 10:22       ` Richard Biener
2024-01-26 10:31         ` Andrew Stubbs
2024-02-01 14:41     ` Thomas Schwinge [this message]
2024-02-01 14:49       ` libgomp GCN gfx1030/gfx1100 offloading status (was: [PATCH] amdgcn: additional gfx1100 support) Richard Biener
2024-02-21 12:34         ` Stabilizing flaky libgomp GCN target/offloading testing (was: libgomp GCN gfx1030/gfx1100 offloading status) Thomas Schwinge
2024-02-21 16:32           ` Richard Biener
2024-03-06 12:09             ` Stabilize flaky GCN target/offloading testing Thomas Schwinge
2024-03-06 12:39               ` Andrew Stubbs
2024-03-06 13:29                 ` Richard Biener
2024-03-08 10:34           ` GCN, nvptx: Errors during device probing are fatal (was: Stabilizing flaky libgomp GCN target/offloading testing) Thomas Schwinge
2024-03-06 13:49 ` amdgcn: additional gfx1030/gfx1100 support: adjust test cases (was: [PATCH] amdgcn: additional gfx1100 support) Thomas Schwinge
2024-03-06 14:03   ` amdgcn: additional gfx1030/gfx1100 support: adjust test cases Andrew Stubbs

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to=878r44l00i.fsf@euler.schwinge.ddns.net \
    --to=tschwinge@baylibre.com \
    --cc=ams@baylibre.com \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=rguenther@suse.de \
    --cc=tburnus@baylibre.com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).