[wwwdocs] gcc-12/changes.html: Update OpenMP status

Message ID a65859d8-a71f-21f4-524a-179fa4c52520@codesourcery.com
State New
Headers
Series [wwwdocs] gcc-12/changes.html: Update OpenMP status |

Commit Message

Tobias Burnus Nov. 10, 2021, 10:33 a.m. UTC
  Cumulative update of the OpenMP 5.x changes in GCC 12.

I hope it covers all essential changes. Of course,
some other could be added like 'omp target in_reduction',
which was missing before (oversight) and possibly other
things, which I have missed.

For the last bullet: the implementation-status documentation
is new – but even if it were not, linking to it makes sense.
I kept adding and removing a 'full' after the "The",
which sounds better but while the list in libgomp.texi is
extensive, it does not have "full" coverage of all changes.
Additionally, as it is new, a "now" could be added after
"can".

Suggestions, additions, wording changes?

Tobias
-----------------
Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955
  

Comments

Jakub Jelinek Nov. 10, 2021, 11:07 a.m. UTC | #1
On Wed, Nov 10, 2021 at 11:33:09AM +0100, Tobias Burnus wrote:
> Cumulative update of the OpenMP 5.x changes in GCC 12.
> 
> I hope it covers all essential changes. Of course,
> some other could be added like 'omp target in_reduction',
> which was missing before (oversight) and possibly other
> things, which I have missed.
> 
> For the last bullet: the implementation-status documentation
> is new – but even if it were not, linking to it makes sense.
> I kept adding and removing a 'full' after the "The",
> which sounds better but while the list in libgomp.texi is
> extensive, it does not have "full" coverage of all changes.
> Additionally, as it is new, a "now" could be added after
> "can".
> 
> Suggestions, additions, wording changes?
> 
> Tobias
> -----------------
> Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955

> gcc-12/changes.html: Update OpenMP status
> 
> diff --git a/htdocs/gcc-12/changes.html b/htdocs/gcc-12/changes.html
> index 81f62fe3..bbb8f2ac 100644
> --- a/htdocs/gcc-12/changes.html
> +++ b/htdocs/gcc-12/changes.html
> @@ -70,20 +70,36 @@ a work-in-progress.</p>
>  <h2 id="languages">New Languages and Language specific improvements</h2>
>  
>  <ul>
> -  <li>OpenMP 5.0 support has been extended: The <code>close</code> map modifier
> +  <li>OpenMP
> +  <ul>
> +    <li>OpenMP 5.0 support has been extended: The <code>close</code> map modifier
>        and the <code>affinity</code> clause are now supported and for Fortran
>        additionally the following features which were available in C and C++
> -      before:  <code>depobj</code>, <code>mutexinoutset</code> and
> -       <code>iterator</code> can now also be used with the <code>depend</code>
> -      clause, <code>defaultmap</code> has been updated for OpenMP 5.0, and the
> -      <code>loop</code> directive and combined directives
> -      involving <code>master</code> directive have been added. Additionally,
> -      the following OpenMP 5.1 feature have been added: support for expressing
> +      before: <code>declare variant</code> is now available,
> +      <code>depobj</code>, <code>mutexinoutset</code> and <code>iterator</code>
> +      can now also be used with the <code>depend</code> clause,
> +      <code>defaultmap</code> has been updated for OpenMP 5.0, and the
> +      <code>loop</code> directive and combined directives involving
> +      <code>master</code> directive have been added.</li>
> +    <li>The following OpenMP 5.1 feature have been added: support for expressing
>        OpenMP directives as C++ 11 attributes, the <code>masked</code> and
>        <code>scope</code> construct, the <code>nothing</code> and
>        <code>error</code> directives, and using <code>primary</code> with the
>        <code>proc_bind</code> clause and <code>OMP_PROC_BIND</code> environment
> -      variable.
> +      variable, the <code>reproducible</code> and <code>unconstrained</code>
> +      modifiers to the <code>order</code> clause, and, for C/C++ only, the
> +      align- and allocate-modifiers to the <code>allocate</code> clause and
> +      the <code>atomic</code> extensions are now available. The
> +      <code>OMP_PLACE</code> environment variable supports the OpenMP 5.1
> +      features and the <code>OMP_NUM_TEAMS</code> and
> +      <code>OMP_TEAMS_THREAD_LIMIT</code> environement variables and their

environment

> +      associated API routines are now supported as well as the memory-allocation
> +      routines added for Fortran and extended for C/C++ in OpenMP 5.1. In
> +      Fortran code, strictly-structured blocks can be used.</li>
> +    <li>The <a
> +      href="https://gcc.gnu.org/onlinedocs/libgomp/OpenMP-Implementation-Status.html"
> +      >OpenMP Implementation Status</a> can be found in the libgomp manual.</li>
> +  </ul>
>    </li>
>    <li>The new warning flag <code>-Wopenacc-parallelism</code> was added for
>        OpenACC. It warns about potentially suboptimal choices related to

Otherwise LGTM.

	Jakub
  
Gerald Pfeifer Nov. 10, 2021, 11:12 p.m. UTC | #2
On Wed, 10 Nov 2021, Tobias Burnus wrote:
> Cumulative update of the OpenMP 5.x changes in GCC 12.

Wow - quite a bit! 

> For the last bullet: the implementation-status documentation is new – 
> but even if it were not, linking to it makes sense. I kept adding and 
> removing a 'full' after the "The", which sounds better but while the 
> list in libgomp.texi is extensive, it does not have "full" coverage of 
> all changes. Additionally, as it is new, a "now" could be added after 
> "can".

gcc-12/changes.html: Update OpenMP status

       and the <code>affinity</code> clause are now supported and for Fortran
       additionally the following features which were available in C and C++
-      before:  <code>depobj</code>, <code>mutexinoutset</code> and

How about something like: "...supported. In addition Fortran gained...",
breaking up the long sentence?

+      <code>loop</code> directive and combined directives involving
+      <code>master</code> directive have been added.</li>

...involving the <code>master</code> directive 
             ^^^

+    <li>The following OpenMP 5.1 feature have been added: support for expressing

...features... (plural)

+      variable, the <code>reproducible</code> and <code>unconstrained</code>
+      modifiers to the <code>order</code> clause, and, for C/C++ only, the
+      align- and allocate-modifiers to the <code>allocate</code> clause and

<code>...</code> for align and allocate?

+      features and the <code>OMP_NUM_TEAMS</code> and
+      <code>OMP_TEAMS_THREAD_LIMIT</code> environement variables and their
+      associated API routines are now supported as well as the memory-allocation
+      routines added for Fortran and extended for C/C++ in OpenMP 5.1.

How about "...features. Finally..." or "...features. In addition..." to
break this long beast?

+      Fortran code, strictly-structured blocks can be used.</li>

Is there really a dash in "strictly structured"?

Hope this helps (and Jakub already approved, so please just consider
those additional suggestions).

Gerald
  
Tobias Burnus Nov. 11, 2021, 7:47 a.m. UTC | #3
Hi Gerald,

thanks for the comments, I have incorporated them all.

On 11.11.21 00:12, Gerald Pfeifer wrote:
> +      variable, the <code>reproducible</code> and <code>unconstrained</code>
> +      modifiers to the <code>order</code> clause, and, for C/C++ only, the
> +      align- and allocate-modifiers to the <code>allocate</code> clause and

Actually either 'align' and 'allocator' (as) modifiers ('-or') or
'allocate-modifier' (-te). I use now <code>, align/allocator also
removed the hyphen.

→ https://gcc.gnu.org/gcc-12/changes.html

Thanks,

Tobias

-----------------
Siemens Electronic Design Automation GmbH; Anschrift: Arnulfstraße 201, 80634 München; Gesellschaft mit beschränkter Haftung; Geschäftsführer: Thomas Heurung, Frank Thürauf; Sitz der Gesellschaft: München; Registergericht München, HRB 106955
  

Patch

gcc-12/changes.html: Update OpenMP status

diff --git a/htdocs/gcc-12/changes.html b/htdocs/gcc-12/changes.html
index 81f62fe3..bbb8f2ac 100644
--- a/htdocs/gcc-12/changes.html
+++ b/htdocs/gcc-12/changes.html
@@ -70,20 +70,36 @@  a work-in-progress.</p>
 <h2 id="languages">New Languages and Language specific improvements</h2>
 
 <ul>
-  <li>OpenMP 5.0 support has been extended: The <code>close</code> map modifier
+  <li>OpenMP
+  <ul>
+    <li>OpenMP 5.0 support has been extended: The <code>close</code> map modifier
       and the <code>affinity</code> clause are now supported and for Fortran
       additionally the following features which were available in C and C++
-      before:  <code>depobj</code>, <code>mutexinoutset</code> and
-       <code>iterator</code> can now also be used with the <code>depend</code>
-      clause, <code>defaultmap</code> has been updated for OpenMP 5.0, and the
-      <code>loop</code> directive and combined directives
-      involving <code>master</code> directive have been added. Additionally,
-      the following OpenMP 5.1 feature have been added: support for expressing
+      before: <code>declare variant</code> is now available,
+      <code>depobj</code>, <code>mutexinoutset</code> and <code>iterator</code>
+      can now also be used with the <code>depend</code> clause,
+      <code>defaultmap</code> has been updated for OpenMP 5.0, and the
+      <code>loop</code> directive and combined directives involving
+      <code>master</code> directive have been added.</li>
+    <li>The following OpenMP 5.1 feature have been added: support for expressing
       OpenMP directives as C++ 11 attributes, the <code>masked</code> and
       <code>scope</code> construct, the <code>nothing</code> and
       <code>error</code> directives, and using <code>primary</code> with the
       <code>proc_bind</code> clause and <code>OMP_PROC_BIND</code> environment
-      variable.
+      variable, the <code>reproducible</code> and <code>unconstrained</code>
+      modifiers to the <code>order</code> clause, and, for C/C++ only, the
+      align- and allocate-modifiers to the <code>allocate</code> clause and
+      the <code>atomic</code> extensions are now available. The
+      <code>OMP_PLACE</code> environment variable supports the OpenMP 5.1
+      features and the <code>OMP_NUM_TEAMS</code> and
+      <code>OMP_TEAMS_THREAD_LIMIT</code> environement variables and their
+      associated API routines are now supported as well as the memory-allocation
+      routines added for Fortran and extended for C/C++ in OpenMP 5.1. In
+      Fortran code, strictly-structured blocks can be used.</li>
+    <li>The <a
+      href="https://gcc.gnu.org/onlinedocs/libgomp/OpenMP-Implementation-Status.html"
+      >OpenMP Implementation Status</a> can be found in the libgomp manual.</li>
+  </ul>
   </li>
   <li>The new warning flag <code>-Wopenacc-parallelism</code> was added for
       OpenACC. It warns about potentially suboptimal choices related to