public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
From: Andrew Stubbs <ams@codesourcery.com>
To: <gcc-patches@gcc.gnu.org>, Jakub Jelinek <jakub@redhat.com>
Subject: Re: [PATCH 0/7 libgomp,amdgcn] AMD GCN Offloading Support
Date: Wed, 13 Nov 2019 13:05:00 -0000	[thread overview]
Message-ID: <793cd4c5-b233-1814-3680-8e28b2495aa4@codesourcery.com> (raw)
In-Reply-To: <cover.1573560401.git.ams@codesourcery.com>

These patches are now all committed. I've adjusted the changelogs to 
list all the proper authors (apologies if I missed anyone).

Thank you for the quick reviews, Jakub. :-)

Andrew

On 12/11/2019 13:29, Andrew Stubbs wrote:
> Hi all,
> 
> This patch series contributes initial OpenMP and OpenACC support for AMD
> GCN GPUs.
> 
> The test results are not yet perfect, but there are many more passes than
> failures, so this is a good starting point.  The rest of the issues can
> be addressed as bugs during stage 3.
> 
> I have another, unfinished, patch to massage the testsuite itself.  I'll
> post this shortly, once I've finished checking the forward port is
> appropriate.
> 
> This series implements only single-worker support for OpenACC.  Julian
> Brown may post the multiple-worker support soon, if it isn't too
> difficult to forward-port.  Otherwise that will have to wait for GCC 11.
> 
> Andrew
> 
> Andrew Stubbs (7):
>    Move generic libgomp files from nvptx to accel
>    GCN mkoffload
>    Add device number to GOMP_OFFLOAD_openacc_async_construct
>    GCN libgomp port
>    Optimize GCN OpenMP malloc performance
>    Use a single worker for OpenACC on AMD GCN
>    GCN Libgomp Plugin
> 
>   gcc/config/gcn/gcn.c                          |    4 +-
>   gcc/config/gcn/gcn.opt                        |    2 +-
>   gcc/config/gcn/mkoffload.c                    |  694 +++
>   gcc/config/gcn/offload.h                      |   35 +
>   include/gomp-constants.h                      |    2 +
>   libgomp/Makefile.am                           |    2 +-
>   libgomp/Makefile.in                           |   61 +-
>   libgomp/config.h.in                           |    3 +
>   .../config/{nvptx => accel}/libgomp-plugin.c  |    0
>   libgomp/config/{nvptx => accel}/lock.c        |    0
>   libgomp/config/{nvptx => accel}/mutex.c       |    0
>   libgomp/config/{nvptx => accel}/mutex.h       |    0
>   libgomp/config/{nvptx => accel}/oacc-async.c  |    0
>   libgomp/config/{nvptx => accel}/oacc-cuda.c   |    0
>   libgomp/config/{nvptx => accel}/oacc-host.c   |    0
>   libgomp/config/{nvptx => accel}/oacc-init.c   |    0
>   libgomp/config/{nvptx => accel}/oacc-mem.c    |    0
>   libgomp/config/{nvptx => accel}/oacc-plugin.c |    0
>   libgomp/config/{nvptx => accel}/omp-lock.h    |    0
>   libgomp/config/{nvptx => accel}/openacc.f90   |    1 +
>   libgomp/config/{nvptx => accel}/pool.h        |    0
>   libgomp/config/{nvptx => accel}/proc.c        |    0
>   libgomp/config/{nvptx => accel}/ptrlock.c     |    0
>   libgomp/config/{nvptx => accel}/ptrlock.h     |    0
>   libgomp/config/{nvptx => accel}/sem.c         |    0
>   libgomp/config/{nvptx => accel}/sem.h         |    0
>   .../{nvptx => accel}/thread-stacksize.h       |    0
>   libgomp/config/gcn/affinity-fmt.c             |   51 +
>   libgomp/config/gcn/bar.c                      |  232 +
>   libgomp/config/gcn/bar.h                      |  168 +
>   libgomp/config/gcn/doacross.h                 |   58 +
>   libgomp/config/gcn/icv-device.c               |   72 +
>   libgomp/config/gcn/oacc-target.c              |   31 +
>   libgomp/config/gcn/simple-bar.h               |   61 +
>   libgomp/config/gcn/target.c                   |   67 +
>   libgomp/config/gcn/task.c                     |   39 +
>   libgomp/config/gcn/team.c                     |  212 +
>   libgomp/config/gcn/time.c                     |   52 +
>   libgomp/configure                             |   61 +-
>   libgomp/configure.ac                          |    2 +-
>   libgomp/configure.tgt                         |    6 +-
>   libgomp/libgomp-plugin.h                      |    5 +-
>   libgomp/libgomp.h                             |   74 +
>   libgomp/oacc-async.c                          |    3 +-
>   libgomp/oacc-host.c                           |    2 +-
>   libgomp/oacc-int.h                            |    9 +-
>   libgomp/oacc-target.c                         |    1 +
>   libgomp/openacc.f90                           |    1 +
>   libgomp/openacc.h                             |    1 +
>   libgomp/plugin/Makefrag.am                    |   14 +
>   libgomp/plugin/configfrag.ac                  |   35 +
>   libgomp/plugin/plugin-gcn.c                   | 3985 +++++++++++++++++
>   libgomp/plugin/plugin-nvptx.c                 |    2 +-
>   libgomp/team.c                                |   15 +-
>   libgomp/work.c                                |    4 +-
>   55 files changed, 6035 insertions(+), 32 deletions(-)
>   create mode 100644 gcc/config/gcn/mkoffload.c
>   create mode 100644 gcc/config/gcn/offload.h
>   rename libgomp/config/{nvptx => accel}/libgomp-plugin.c (100%)
>   rename libgomp/config/{nvptx => accel}/lock.c (100%)
>   rename libgomp/config/{nvptx => accel}/mutex.c (100%)
>   rename libgomp/config/{nvptx => accel}/mutex.h (100%)
>   rename libgomp/config/{nvptx => accel}/oacc-async.c (100%)
>   rename libgomp/config/{nvptx => accel}/oacc-cuda.c (100%)
>   rename libgomp/config/{nvptx => accel}/oacc-host.c (100%)
>   rename libgomp/config/{nvptx => accel}/oacc-init.c (100%)
>   rename libgomp/config/{nvptx => accel}/oacc-mem.c (100%)
>   rename libgomp/config/{nvptx => accel}/oacc-plugin.c (100%)
>   rename libgomp/config/{nvptx => accel}/omp-lock.h (100%)
>   rename libgomp/config/{nvptx => accel}/openacc.f90 (98%)
>   rename libgomp/config/{nvptx => accel}/pool.h (100%)
>   rename libgomp/config/{nvptx => accel}/proc.c (100%)
>   rename libgomp/config/{nvptx => accel}/ptrlock.c (100%)
>   rename libgomp/config/{nvptx => accel}/ptrlock.h (100%)
>   rename libgomp/config/{nvptx => accel}/sem.c (100%)
>   rename libgomp/config/{nvptx => accel}/sem.h (100%)
>   rename libgomp/config/{nvptx => accel}/thread-stacksize.h (100%)
>   create mode 100644 libgomp/config/gcn/affinity-fmt.c
>   create mode 100644 libgomp/config/gcn/bar.c
>   create mode 100644 libgomp/config/gcn/bar.h
>   create mode 100644 libgomp/config/gcn/doacross.h
>   create mode 100644 libgomp/config/gcn/icv-device.c
>   create mode 100644 libgomp/config/gcn/oacc-target.c
>   create mode 100644 libgomp/config/gcn/simple-bar.h
>   create mode 100644 libgomp/config/gcn/target.c
>   create mode 100644 libgomp/config/gcn/task.c
>   create mode 100644 libgomp/config/gcn/team.c
>   create mode 100644 libgomp/config/gcn/time.c
>   create mode 100644 libgomp/oacc-target.c
>   create mode 100644 libgomp/plugin/plugin-gcn.c
> 

      parent reply	other threads:[~2019-11-13 12:46 UTC|newest]

Thread overview: 44+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2019-11-12 13:29 Andrew Stubbs
2019-11-12 13:29 ` [PATCH 1/7 libgomp,nvptx] Move generic libgomp files from nvptx to accel Andrew Stubbs
2019-11-12 13:43   ` Jakub Jelinek
2019-11-12 13:29 ` [PATCH 2/7 amdgcn] GCN mkoffload Andrew Stubbs
2019-11-12 13:29 ` [PATCH 3/7 libgomp,nvptx] Add device number to GOMP_OFFLOAD_openacc_async_construct Andrew Stubbs
2019-11-12 13:46   ` Jakub Jelinek
2019-11-12 13:30 ` [PATCH 4/7 libgomp,amdgcn] GCN libgomp port Andrew Stubbs
2019-11-12 13:48   ` Jakub Jelinek
2019-11-12 14:21     ` Andrew Stubbs
2019-12-02 14:43   ` Thomas Schwinge
2019-12-02 14:50     ` Julian Brown
2019-12-03  9:33       ` Which OpenACC 'acc_device_t' to use for AMD GPU offloading (was: [PATCH 4/7 libgomp,amdgcn] GCN libgomp port) Thomas Schwinge
2019-12-03 14:20         ` Julian Brown
2019-12-03 14:42           ` Which OpenACC 'acc_device_t' to use for AMD GPU offloading Thomas Schwinge
2019-12-03 15:00             ` Tobias Burnus
2019-12-03 13:13     ` [PATCH 4/7 libgomp,amdgcn] GCN libgomp port Andrew Stubbs
2019-12-03 14:07       ` "gcn" vs. "amdgcn" etc. (was: [PATCH 4/7 libgomp,amdgcn] GCN libgomp port) Thomas Schwinge
2019-12-03 15:53         ` Julian Brown
2020-01-17 19:20     ` [committed, amdgcn/openacc] Rename acc_device_gcn to acc_device_radeon Andrew Stubbs
2020-04-21 12:24       ` [AMD GCN] Use 'radeon' for the environment variable 'ACC_DEVICE_TYPE' (was: [committed, amdgcn/openacc] Rename acc_device_gcn to acc_device_radeon) Thomas Schwinge
2020-04-23 16:27         ` [AMD GCN] Use 'radeon' for the environment variable 'ACC_DEVICE_TYPE' Andrew Stubbs
2020-04-29  8:08           ` Thomas Schwinge
2019-12-16 22:28   ` [PATCH 4/7 libgomp,amdgcn] GCN libgomp port Thomas Schwinge
2019-11-12 13:30 ` [PATCH 7/7 libgomp,amdgcn] GCN Libgomp Plugin Andrew Stubbs
2019-11-12 14:11   ` Jakub Jelinek
2019-11-12 14:42     ` Andrew Stubbs
2021-01-14 19:19   ` [gcn offloading] Only supported in 64-bit configurations (was: [PATCH 7/7 libgomp,amdgcn] GCN Libgomp Plugin) Thomas Schwinge
2024-03-07 11:29   ` GCN: Even with 'GCN_SUPPRESS_HOST_FALLBACK' set, failure to 'init_hsa_runtime_functions' is not fatal " Thomas Schwinge
2024-03-07 11:38     ` GCN: Even with 'GCN_SUPPRESS_HOST_FALLBACK' set, failure to 'init_hsa_runtime_functions' is not fatal Andrew Stubbs
2024-03-07 13:37       ` Thomas Schwinge
2024-03-07 13:47         ` Andrew Stubbs
2024-03-07 11:43     ` Tobias Burnus
2024-03-07 13:37       ` Thomas Schwinge
2024-03-07 14:07         ` Tobias Burnus
2024-03-08 10:21           ` Thomas Schwinge
2024-03-08 10:16         ` GCN: The original meaning of 'GCN_SUPPRESS_HOST_FALLBACK' isn't applicable (non-shared memory system) (was: GCN: Even with 'GCN_SUPPRESS_HOST_FALLBACK' set, failure to 'init_hsa_runtime_functions' is not fatal) Thomas Schwinge
2024-03-08 12:42           ` GCN: The original meaning of 'GCN_SUPPRESS_HOST_FALLBACK' isn't applicable (non-shared memory system) Andrew Stubbs
2019-11-12 13:30 ` [PATCH 5/7 libgomp,amdgcn] Optimize GCN OpenMP malloc performance Andrew Stubbs
2019-11-12 14:02   ` Jakub Jelinek
2019-11-12 17:54     ` Andrew Stubbs
2019-11-12 22:51       ` Jakub Jelinek
2019-11-12 13:31 ` [PATCH 6/7 amdgcn] Use a single worker for OpenACC on AMD GCN Andrew Stubbs
2021-06-08 10:07   ` Thomas Schwinge
2019-11-13 13:05 ` Andrew Stubbs [this message]

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=793cd4c5-b233-1814-3680-8e28b2495aa4@codesourcery.com \
    --to=ams@codesourcery.com \
    --cc=gcc-patches@gcc.gnu.org \
    --cc=jakub@redhat.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).