public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [gomp4 0/8] NVPTX: initial OpenMP offloading
@ 2015-09-23 17:43 Alexander Monakov
  2015-09-23 17:22 ` [gomp4 8/8] libgomp: provide ICVs via env.c on nvptx Alexander Monakov
                   ` (8 more replies)
  0 siblings, 9 replies; 27+ messages in thread
From: Alexander Monakov @ 2015-09-23 17:43 UTC (permalink / raw)
  To: gcc-patches; +Cc: Jakub Jelinek, Arutyun Avetisyan, Alexander Monakov

Hello,

This patch series implements some minimally required changes to have OpenMP
offloading working for NVPTX target on the gomp4 branch.  '#pragma omp target'
and data updates should work, but all parallel execution functionality remains
stubbed out (uses of '#pragma omp parallel' in target regions yield a link
error).

I'd like to get feedback on the patches, and approval for the gomp-4_0-branch
where possible.

Patches 1-2 unbreak compilation with offloading, patch 4 allows to invoke a
target region on the accelerator, patches 5-8 unbreak libgomp.h and allow
env.c to be compiled for the accelerator.

  nvptx: remove assumption of OpenACC attrs presence
  nvptx mkoffload: do not restrict to OpenACC
  libgomp: provide target-to-host fallback diagnostic
  libgomp: minimal OpenMP support in plugin-nvptx.c
  libgomp: provide sem.h, mutex.h, ptrlock.h on nvptx
  libgomp: provide stub bar.h on nvptx
  libgomp: work around missing pthread_attr_t on nvptx
  libgomp: provide ICVs via env.c on nvptx

 gcc/config/nvptx/mkoffload.c   |   7 +-
 gcc/config/nvptx/nvptx.c       |  19 ++--
 libgomp/config/nvptx/bar.h     |  38 +++++++
 libgomp/config/nvptx/env.c     | 219 +++++++++++++++++++++++++++++++++++++++++
 libgomp/config/nvptx/mutex.h   |  67 +++++++++++++
 libgomp/config/nvptx/ptrlock.h |  73 ++++++++++++++
 libgomp/config/nvptx/sem.h     |  65 ++++++++++++
 libgomp/libgomp.h              |   5 +
 libgomp/plugin/plugin-nvptx.c  |  30 +++++-
 libgomp/target.c               |   1 +
 10 files changed, 508 insertions(+), 16 deletions(-)
 create mode 100644 libgomp/config/nvptx/bar.h
 create mode 100644 libgomp/config/nvptx/mutex.h
 create mode 100644 libgomp/config/nvptx/ptrlock.h
 create mode 100644 libgomp/config/nvptx/sem.h

^ permalink raw reply	[flat|nested] 27+ messages in thread

end of thread, other threads:[~2015-10-02 19:29 UTC | newest]

Thread overview: 27+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-09-23 17:43 [gomp4 0/8] NVPTX: initial OpenMP offloading Alexander Monakov
2015-09-23 17:22 ` [gomp4 8/8] libgomp: provide ICVs via env.c on nvptx Alexander Monakov
2015-09-24  8:15   ` Jakub Jelinek
2015-09-24 13:25     ` Alexander Monakov
2015-09-24 13:45       ` Jakub Jelinek
2015-09-23 17:22 ` [gomp4 4/8] libgomp: minimal OpenMP support in plugin-nvptx.c Alexander Monakov
2015-09-24  7:34   ` Jakub Jelinek
2015-09-23 17:22 ` [gomp4 2/8] nvptx mkoffload: do not restrict to OpenACC Alexander Monakov
2015-09-24  7:29   ` Jakub Jelinek
2015-10-02 19:29     ` [PR target/67822] OpenMP offloading to nvptx fails (was: [gomp4 2/8] nvptx mkoffload: do not restrict to OpenACC) Thomas Schwinge
2015-09-23 17:22 ` [gomp4 6/8] libgomp: provide stub bar.h on nvptx Alexander Monakov
2015-09-24  8:09   ` Jakub Jelinek
2015-09-23 17:22 ` [gomp4 1/8] nvptx: remove assumption of OpenACC attrs presence Alexander Monakov
2015-09-24  7:26   ` Jakub Jelinek
2015-09-24  7:27     ` Jakub Jelinek
2015-09-23 17:22 ` [gomp4 7/8] libgomp: work around missing pthread_attr_t on nvptx Alexander Monakov
2015-09-24  8:15   ` Jakub Jelinek
2015-09-24 15:33     ` Alexander Monakov
2015-09-24 16:13       ` Jakub Jelinek
2015-09-23 17:40 ` [gomp4 3/8] libgomp: provide target-to-host fallback diagnostic Alexander Monakov
2015-09-24  7:33   ` Jakub Jelinek
2015-09-23 17:43 ` [gomp4 5/8] libgomp: provide sem.h, mutex.h, ptrlock.h on nvptx Alexander Monakov
2015-09-24  7:43   ` Jakub Jelinek
2015-09-23 18:44 ` [gomp4 0/8] NVPTX: initial OpenMP offloading Bernd Schmidt
2015-09-23 21:44   ` Alexander Monakov
2015-09-24  7:26     ` Jakub Jelinek
2015-09-24 14:31       ` Nathan Sidwell

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