public inbox for gcc-patches@gcc.gnu.org
 help / color / mirror / Atom feed
* [wwwdocs] gcc-14/changes.html + projects/gomp/: OpenMP + OpenACC update
@ 2024-02-27 19:16 Tobias Burnus
  2024-02-27 21:52 ` Gerald Pfeifer
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: Tobias Burnus @ 2024-02-27 19:16 UTC (permalink / raw)
  To: gcc-patches, Gerald Pfeifer, Jakub Jelinek, Thomas Schwinge


[-- Attachment #1.1: Type: text/plain, Size: 67 bytes --]

Minor update for older and more recent changes.

Comments?

Tobias

[-- Attachment #2: oacc-omp.diff --]
[-- Type: text/x-patch, Size: 4076 bytes --]

gcc-14/changes.html + projects/gomp/: OpenMP + OpenACC update

Update OpenMP for two meanwhile implemented features (lvalue-expr in map,
indirect now also in Fortran).
Update OpenACC for one new feature (Fortran interface to exisiting
C/C++ routines).

diff --git a/htdocs/gcc-14/changes.html b/htdocs/gcc-14/changes.html
index 85ccc54d..1c2059b6 100644
--- a/htdocs/gcc-14/changes.html
+++ b/htdocs/gcc-14/changes.html
@@ -79,7 +79,8 @@ a work-in-progress.</p>
     </li>
     <li>OpenMP 5.0: The <code>allocate</code> directive is now
       supported for stack variables in C and Fortran, including the OpenMP 5.1
-      <code>align</code> modifier. For Fortran, OpenMP allocators can now be
+      <code>align</code> modifier. In C and C++, the <code>map</code> clause now
+      accepts lvalue expressions. For Fortran, OpenMP allocators can now be
       used for allocatables and pointers using the <code>allocate</code>
       directive and its OpenMP 5.2 replacement, the <code>allocators</code>
       directive; files using this allocator and all files that might directly
@@ -91,8 +92,8 @@ a work-in-progress.</p>
     <li>
       OpenMP 5.1: Support was added for collapsing imperfectly nested loops and
       using <code>present</code> as map-type modifier and in
-      <code>defaultmap</code>. The <code>indirect</code> clause is now supported
-      for C and C++.  The performance of copying strided data from or to nvptx
+      <code>defaultmap</code>. The <code>indirect</code> clause is now
+      supported. The performance of copying strided data from or to nvptx
       and AMD GPU devices using the OpenMP 5.1 routine
       <code>omp_target_memcpy_rect</code> has been improved.
     </li>
@@ -117,6 +118,14 @@ a work-in-progress.</p>
     <li>OpenACC 2.7: The <code>self</code> clause was added to be used on
       compute constructs and the <code>default</code> clause for data
       constructs.</li>
+    <li>OpenACC 3.2: The following API routines are now available in
+      Fortran using the <code>openacc</code> module or the
+      <code>open_lib.h</code> header file: <code>acc_alloc</code>,
+      <code>acc_free</code>, <code>acc_hostptr</code>,
+      <code>acc_deviceptr</code>, <code>acc_memcpy_to_device</code>,
+      <code>acc_memcpy_to_device_async</code>,
+      <code>acc_memcyp_from_device</code> and
+      <code>acc_memcyp_from_device_async</code>.
   </ul>
   </li>
   <li>For offload-device code generated via OpenMP and OpenACC, the math
diff --git a/htdocs/projects/gomp/index.html b/htdocs/projects/gomp/index.html
index bf20bb88..8fdfb95a 100644
--- a/htdocs/projects/gomp/index.html
+++ b/htdocs/projects/gomp/index.html
@@ -489,7 +489,7 @@ than listed, depending on resolved corner cases and optimizations.</p>
   </tr>
   <tr>
     <td>C/C++'s lvalue expressions in <code>to</code>, <code>from</code> and <code>map</code> clauses</td>
-    <td class="unsupported">No</td>
+    <td class="supported"><a href="../../gcc-14/changes.html#languages">GCC&nbsp;14</a></td>
     <td></td>
   </tr>
   <tr>
@@ -714,8 +714,8 @@ than listed, depending on resolved corner cases and optimizations.</p>
   </tr>
   <tr>
     <td>Indirect calls to the device version of a procedure or function in target regions</td>
-    <td class="partial"><a href="../../gcc-14/changes.html#languages">GCC&nbsp;14</a></td>
-    <td>Only C and C++</td>
+    <td class="supported"><a href="../../gcc-14/changes.html#languages">GCC&nbsp;14</a></td>
+    <td></td>
   </tr>
   <tr>
     <td><code>interop</code> directive</td>
@@ -756,8 +756,8 @@ than listed, depending on resolved corner cases and optimizations.</p>
   </tr>
   <tr>
     <td><code>indirect</code> clause in <code>declare target</code></td>
-    <td class="partial"><a href="../../gcc-14/changes.html#languages">GCC&nbsp;14</a></td>
-    <td>Only C and C++</td>
+    <td class="supported"><a href="../../gcc-14/changes.html#languages">GCC&nbsp;14</a></td>
+    <td></td>
   </tr>
   <tr>
     <td><code>device_type(nohost)</code>/<code>device_type(host)</code> for variables</td>

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

* Re: [wwwdocs] gcc-14/changes.html + projects/gomp/: OpenMP + OpenACC update
  2024-02-27 19:16 [wwwdocs] gcc-14/changes.html + projects/gomp/: OpenMP + OpenACC update Tobias Burnus
@ 2024-02-27 21:52 ` Gerald Pfeifer
  2024-02-28  8:31 ` Bernhard Reutner-Fischer
  2024-03-01 14:08 ` Update GCC 14 OpenACC changes some more (was: [wwwdocs] gcc-14/changes.html + projects/gomp/: OpenMP + OpenACC update) Thomas Schwinge
  2 siblings, 0 replies; 4+ messages in thread
From: Gerald Pfeifer @ 2024-02-27 21:52 UTC (permalink / raw)
  To: Tobias Burnus; +Cc: gcc-patches, Jakub Jelinek, Thomas Schwinge

On Tue, 27 Feb 2024, Tobias Burnus wrote:
> Minor update for older and more recent changes.

>       supported for stack variables in C and Fortran, including the OpenMP 5.1
> -      <code>align</code> modifier. For Fortran, OpenMP allocators can now be
> +      <code>align</code> modifier. In C and C++, the <code>map</code> clause now
> +      accepts lvalue expressions. For Fortran, OpenMP allocators can now be

I would omit the comma after "C and C++".

+      <code>acc_memcpy_to_device_async</code>,
+      <code>acc_memcyp_from_device</code> and
+      <code>acc_memcyp_from_device_async</code>.

Oxford comma (i.e., comma before "and")?

Looks good to me (with or without my recommendations).

Thanks,
Gerald

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

* Re: [wwwdocs] gcc-14/changes.html + projects/gomp/: OpenMP + OpenACC update
  2024-02-27 19:16 [wwwdocs] gcc-14/changes.html + projects/gomp/: OpenMP + OpenACC update Tobias Burnus
  2024-02-27 21:52 ` Gerald Pfeifer
@ 2024-02-28  8:31 ` Bernhard Reutner-Fischer
  2024-03-01 14:08 ` Update GCC 14 OpenACC changes some more (was: [wwwdocs] gcc-14/changes.html + projects/gomp/: OpenMP + OpenACC update) Thomas Schwinge
  2 siblings, 0 replies; 4+ messages in thread
From: Bernhard Reutner-Fischer @ 2024-02-28  8:31 UTC (permalink / raw)
  To: Tobias Burnus; +Cc: gcc-patches, Gerald Pfeifer, Jakub Jelinek, Thomas Schwinge

On Tue, 27 Feb 2024 at 20:17, Tobias Burnus <tburnus@baylibre.com> wrote:
>
> Minor update for older and more recent changes.
>
> Comments?

Nit:

+    <li>OpenACC 3.2: The following API routines are now available in
+      Fortran using the <code>openacc</code> module or the
+      <code>open_lib.h</code> header file: <code>acc_alloc</code>,

s/open_lib.h/openacc_lib.h/

thanks

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

* Update GCC 14 OpenACC changes some more (was: [wwwdocs] gcc-14/changes.html + projects/gomp/: OpenMP + OpenACC update)
  2024-02-27 19:16 [wwwdocs] gcc-14/changes.html + projects/gomp/: OpenMP + OpenACC update Tobias Burnus
  2024-02-27 21:52 ` Gerald Pfeifer
  2024-02-28  8:31 ` Bernhard Reutner-Fischer
@ 2024-03-01 14:08 ` Thomas Schwinge
  2 siblings, 0 replies; 4+ messages in thread
From: Thomas Schwinge @ 2024-03-01 14:08 UTC (permalink / raw)
  To: Tobias Burnus, gcc-patches
  Cc: Gerald Pfeifer, Jakub Jelinek, Bernhard Reutner-Fischer

[-- Attachment #1: Type: text/plain, Size: 1229 bytes --]

Hi!

On 2024-02-27T20:16:52+0100, Tobias Burnus <tburnus@baylibre.com> wrote:
> Minor update for older and more recent changes.
>
> Comments?

> gcc-14/changes.html + projects/gomp/: OpenMP + OpenACC update

> Update OpenACC for one new feature (Fortran interface to exisiting
> C/C++ routines).

> --- a/htdocs/gcc-14/changes.html
> +++ b/htdocs/gcc-14/changes.html

> +    <li>OpenACC 3.2: The following API routines are now available in
> +      Fortran using the <code>openacc</code> module or the
> +      <code>open_lib.h</code> header file: <code>acc_alloc</code>,
> +      <code>acc_free</code>, <code>acc_hostptr</code>,
> +      <code>acc_deviceptr</code>, <code>acc_memcpy_to_device</code>,
> +      <code>acc_memcpy_to_device_async</code>,
> +      <code>acc_memcyp_from_device</code> and
> +      <code>acc_memcyp_from_device_async</code>.

Thanks -- but you have to improve your copy'n'paste skills.  ;-P

On top of your wwwdocs commit f92f353bb0e932edba7d063b2609943683cf0a36
"gcc-14/changes.html + projects/gomp/: OpenMP + OpenACC update", I've
pushed commit df2bc49fc018c2b1aeb27030fe1967470d0d4ec3
"Update GCC 14 OpenACC changes some more", see attached.


Grüße
 Thomas



[-- Warning: decoded text below may be mangled, UTF-8 assumed --]
[-- Attachment #2: 0001-Update-GCC-14-OpenACC-changes-some-more.patch --]
[-- Type: text/x-diff, Size: 1760 bytes --]

From df2bc49fc018c2b1aeb27030fe1967470d0d4ec3 Mon Sep 17 00:00:00 2001
From: Thomas Schwinge <tschwinge@baylibre.com>
Date: Fri, 1 Mar 2024 15:01:54 +0100
Subject: [PATCH] Update GCC 14 OpenACC changes some more

Follow-up to commit f92f353bb0e932edba7d063b2609943683cf0a36
"gcc-14/changes.html + projects/gomp/: OpenMP + OpenACC update":

  - 's%acc_alloc%acc_malloc'
  - add 'acc_map_data' and 'acc_unmap_data'
  - swap 'acc_deviceptr' and 'acc_hostptr'
  - 's%memcyp%memcpy%g'
---
 htdocs/gcc-14/changes.html | 12 +++++++-----
 1 file changed, 7 insertions(+), 5 deletions(-)

diff --git a/htdocs/gcc-14/changes.html b/htdocs/gcc-14/changes.html
index e8004d4a..d88fbc96 100644
--- a/htdocs/gcc-14/changes.html
+++ b/htdocs/gcc-14/changes.html
@@ -120,12 +120,14 @@ a work-in-progress.</p>
       constructs.</li>
     <li>OpenACC 3.2: The following API routines are now available in
       Fortran using the <code>openacc</code> module or the
-      <code>openacc_lib.h</code> header file: <code>acc_alloc</code>,
-      <code>acc_free</code>, <code>acc_hostptr</code>,
-      <code>acc_deviceptr</code>, <code>acc_memcpy_to_device</code>,
+      <code>openacc_lib.h</code> header file:
+      <code>acc_malloc</code>, <code>acc_free</code>,
+      <code>acc_map_data</code>, <code>acc_unmap_data</code>,
+      <code>acc_deviceptr</code>, <code>acc_hostptr</code>,
+      <code>acc_memcpy_to_device</code>,
       <code>acc_memcpy_to_device_async</code>,
-      <code>acc_memcyp_from_device</code>, and
-      <code>acc_memcyp_from_device_async</code>.
+      <code>acc_memcpy_from_device</code>, and
+      <code>acc_memcpy_from_device_async</code>.
   </ul>
   </li>
   <li>For offload-device code generated via OpenMP and OpenACC, the math
-- 
2.43.0


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

end of thread, other threads:[~2024-03-01 14:08 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-02-27 19:16 [wwwdocs] gcc-14/changes.html + projects/gomp/: OpenMP + OpenACC update Tobias Burnus
2024-02-27 21:52 ` Gerald Pfeifer
2024-02-28  8:31 ` Bernhard Reutner-Fischer
2024-03-01 14:08 ` Update GCC 14 OpenACC changes some more (was: [wwwdocs] gcc-14/changes.html + projects/gomp/: OpenMP + OpenACC update) Thomas Schwinge

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