[J3] (SC22WG5.6060) Draft 2018 minutes
Steve Lionel
steve at stevelionel.com
Thu Jul 12 09:03:23 EDT 2018
Attached is David's current draft minutes from the Berkeley meeting.
Please let David and myself know by the end of Monday if you see any
errors or omissions. Thanks.
Steve
-------------- next part --------------
ISO/IEC JTC1/SC22/WG5 N2158-4
Minutes of Meeting of ISO/IEC JTC1/SC22/WG5
Hosted by ANSI, the USA Member Body for JTC1/SC22
in Berkeley, CA, USA
June 11-15, 2018
List of Participants:
Steve Lionel (self, USA) convenor
Dan Nagle (NCAR, USA) PL22.3 chair
Reinhold Bader (Leibniz Supercomputing Centre, Germany and DIN)
Kiran Chandramohan (Arm, UK)
Daniel Chen (IBM, Canada)
Tom Clune (NASA, USA)
Malcolm Cohen (NAG, UK)
Bob Corbett (self, USA)
Salvatore Filippone (Cranfield University, UK)
Brian Friesen (Lawrence Berkeley National Laboratory, USA)
Gary Klimowicz (NVIDIA, USA)
Bill Long (Cray, USA)
Divya Mangudi (Intel, USA)
Jeanne Martin (former convenor, USA, Monday only)
Lorri Menard (Intel, USA)
David Muxworthy (British Standards Institution, UK)
Vipul Parekh (Resenex, USA, Tuesday to Thursday)
Craig Rasmussen (DOE, USA, Monday to Thursday)
Soren Rasmussen (Cranfield University, UK)
John Reid (JKR Associates, UK)
Larry Rolison (self, USA, Monday only)
Damian Rouson (Sourcery, USA)
Anton Shterenlikht (University of Bristol, UK)
Nathan Sircombe (Arm, UK)
Van Snyder (Caltech/JPL, USA)
Masayuki Takata (Edogawa University, Japan)
Notes:
1. This was a joint meeting of SC22/WG5 and INCITS/PL22.3. These
minutes record only the parts of the meeting in WG5 mode.
2. WG5 papers are referenced as Nnnnn. They are available from
https://wg5-fortran.org/documents.html
3. INCITS/PL22.3 is abbreviated throughout to PL22.3 and its papers
are referenced as J3/18-nnn. They are available from
https://j3-fortran.org/
1. Opening of the Meeting
The meeting opened at 09:00 on Monday, June 11th 2018.
2. Opening business
2.1 Introductory remarks from the Convenor
The convenor welcomed participants, especially those who were
attending WG5 for the first time. He noted that this was his first
meeting as WG5 convenor.
2.2 Welcome from the Host
Brian Friesen welcomed participants on behalf of Lawrence Berkeley
Laboratory.
2.3 Local arrangements
Brian Friesen as co-host described local arrangements including action
to be taken in the event of an earthquake. Damian Rouson, co-host,
described the social arrangements for the week and local possibilities
for dinner.
2.4 Appointments for this meeting
The drafting committee would be Reinhold Bader, Daniel Chen, David
Muxworthy (chair), Dan Nagle and Masayuki Takata. David Muxworthy
would act as secretary and Steve Lionel as librarian and as editor of
the Disposition of Comments document in response to the DIS ballot.
2.5 Adoption of the agenda [N2150]
The agenda was adopted.
3. Matters arising from the minutes of the Garching 2017 Meeting [N2132]
There were no items not otherwise on the agenda.
4. Status of Garching 2017 Resolutions [N2131]
No matters were raised.
5. Reports
5.1 SC22 Matters (Convenor)
The convenor reported that SC22 continued to disallow line numbers in
standards documents. An SC22 working party had recommended a more
timely procedure to distribute corrections and updates to existing
standards via a JTC1 website.
There was some concern about a possible delay in the provision of the
Summary of Voting in the SC22 DIS ballot but in fact the document
(SC22N5273) appeared on the SC22 website on the first morning of the
meeting and was copied for convenience to PL22.3 paper J3/18-168.
5.2 National Activity Reports
Canada: The quarterly SCC meeting was held in March with
representatives of other programming language working groups
such as C, C++, COBOL and ADA. The Fortran 2018 DIS was approved.
Germany: Reinhold Bader is a member of DIN NA 043-01-22 AA
"programming languages" subcommittee and participated in the
yearly meeting, held in Berlin on November 27, 2017. He gave
a talk about the state of Fortran standardization. Nine of
the 17 registered members were present at the meeting.
Japan: The chair of ITSCJ/SC22/Fortran WG has been changed from Minoru
Tanaka (Fujitsu) to Hidetoshi Iwashita (Fujitsu).
Translation of F2008 had been abandoned and that of F2018
would officially start, at the earliest, in April 2019.
Preparation for the 2019 Tokyo meeting was in progress, and
the preliminary local arrangements (N2151) would soon be
available.
UK: The BSI Fortran panel had 19 members, including observers,
having gained four new members and lost three during the
year. The UK voted "approval with comments" on the Fortran
2015/2018 second CD and DIS. The UK voted in favour of
Steve Lionel as WG5 convenor.
USA: The US had collected comments and requirements for future
developments from around the world. It was considering
criteria for the next revision, again open to world-wide
contributions. Steve Lionel had taken over as WG5 convenor
and established new WG5 (and PL22.3) websites.
5.3 Report from Primary Development Body (INCITS/PL22.3 Chair)
PL22.3 was charged with developing the draft standard and had done so.
5.4 Reports from other Development Bodies (Editors/Heads)
There were no contributing development bodies at present.
5.5 Liaison Reports:
NCITS/J11 (C): Dan Nagle
Work was proceeding as usual. CPLEX had been included in the
main standard.
MPI: Bill Long
MPI Forum was meeting in the same week - June 11-14
see https://www.mpi-forum.org/meetings/2018/06/agenda
The tickets concerning persistent collective operations were up
for a formal vote. It looks like this is going to make it this
time. There is some progress on MPI Sessions. Sessions is a very
large topic -- they are making slow progress on different pieces
for now. There is some talk about reviving ULFM by splitting it
some manner.
UPC: Damian Rouson
Nothing to add.
IFIP/WG2.5: Van Snyder
Van Snyder could not get funding to attend last year's meeting in
Oslo; the 2018 meeting was to be the following week in Sydney. He
believed that there were no new projects, or old projects upon
which new work has been done during the last two years, that
would affect Fortran.
A meeting had been proposed for this summer but would not take
place.
OpenMP: Bill Long
See Appendix A.
WG9 (Ada): Van Snyder
The primary organizations in the Ada community were WG9, the
Ada Rapporteur Group (primarily compiler vendors), and Ada
Europe. They usually met once per year in conjunction with the
International Conference on Reliable Software
Technologies. This year, 18-22 June in Lisbon, was the 23rd
conference. There were five presentations on reliable software
technology, three on Ada 202x, three on handling implicit
overhead, two vendor presentations, two on real-time
scheduling, and three on application domains -- on the first
day. There were at least thirteen sponsors (SigAda, SigPlan,
and eleven commercial sponsors).
Ada took a page out of the Fortran playbook and published a
corrigendum recently.
Further details are in http://ae2018.di.fc.ul.pt/meetings.html.
WG23 (Vulnerabilities): Dan Nagle
Dan Nagle would continue work in this project.
OpenACC: Gary Klimowicz
Information about OpenACC, including the current standard
document, training materials, and upcoming events can be found
at http://www.openacc.org/.
The current OpenACC 2.6 standard includes support for manual
deep copy of data structures to target processors. Discussions
have begun on "true" deep copy, which allows data movement
policies to be defined within the data types themselves, and
referenced when needed in the accelerated code. Users can
specify which parts of larger data structures are to be copied
to targets. There is a technical report
https://www.openacc.org/sites/default/files/inline-files/TR-16-1.pdf
that describes the "true" deep copy requirements, beginning in
Section 3.
There are over 110 applications in production or development using
OpenACC, including:
- Gaussian 16
- ANSYS Fluent
- VASP
- MPAS-A
- COSMO
- GAMERA for GPU
- Quantum Espresso
There are several "hackathons" coming up, where researchers
bring their codes to work alongside with OpenACC experts to
accelerate their applications. Event dates are posted at
https://www.openacc.org/events.
- September 10-14 NCSA
- September 17-21 Brookhaven
- October 1-5 CSCS
- October 22-26 OLCF
Flang: Gary Klimowicz
See Appendix B.
6. Consideration of the comments from the ballot of the DIS of the
Fortran standard and construction of responses.
This agenda item occupied most of the meeting. The ISO ballot
comments were discussed in PL22.3 mode and the detailed outcomes are
recorded in the PL22.3 minutes. These are summarized in the resulting
Disposition of Comments document, N2153.
There follows an outline record in chronological sequence of
discussions in WG5 mode.
[PL22.3 plenary and subgroup sessions from 09:55 to 16:35]
The meeting adjourned at 16:35
...........................................................................
Tuesday
The meeting resumed at 09:00.
[PL22.3 plenary and subgroup sessions from 09:00 to 16:30]
Vipul Parekh, attending as an observer, was introduced. He gave a short
description of his experience with Fortran.
The convenor reminded participants of the public survey on possible
new features in Fortran 202X which had run from September 2017 to
February 2018. The results were summarized in N2147 and PL22.3 had
undertaken a preliminary review which was recorded in J3/18-156. He
asked participants to review the documents over the following two days
with a view to discussing them on Thursday. He particularly asked
other countries to contribute, so that by the time of the Tokyo
meeting in 2019 it should be possible to define the features to be in
the next revision.
[PL22.3 plenary session from 16:37 to 16:55]
The meeting adjourned at 16:55.
...........................................................................
Wednesday
The meeting resumed at 09:00.
[PL22.3 plenary and subgroup sessions from 09:00 to 16:30]
A photographer attended to take images of the group at 10:00. The
photograph is at http://photos.lbl.gov/bp/#/folder/4398181/.
Brian Friesen led a tour of the Laboratory computing facilities at
lunchtime.
The Convenor again reminded members to read N2147 to facilitate a
discussion under agenda item 10 later in the week.
[PL22.3 plenary session from 16:33 to 16:55]
The meeting adjourned at 16:55 and was followed by the meeting social
event at the Lake Chalet in Oakland.
...........................................................................
Thursday
The meeting resumed at 09:00.
[PL22.3 plenary and subgroup sessions from 09:00 to 16:50]
Damian Rouson, co-host, invited members to an informal 'Pizza in the
Park' evening in Dorothy Bolte Park, Berkeley.
The meeting adjourned at 16:50.
...........................................................................
Friday
The meeting resumed at 09:00.
[PL22.3 plenary session from 09:00 to 09:45]
7. Decide whether the comments from the DIS ballot require construction
of a separate FDIS, or whether the FDIS step can be skipped.
There having been over 80 comments on the DIS, many of them generating
multiple edits to the document, it was clear that an FDIS would be
needed. The Project Editor was to incorporate the amendments made at
the meeting and to make the draft FDIS available to WG5 members. It
was anticipated that this would be done by July 7. In particular a
subgroup consisting of Steve Lionel, Bill Long, Dan Nagle and John
Reid was delegated to check the document for correctness. Other
members were welcome to contribute.
8. Consider the Fortran defect reports (interpretations) in J3/17-006.
Agenda item 8 was not pursued at this meeting.
9. WG5 Business and Strategic Plans
9.1 Goals for 2018-2021
A draft Strategic Plan (N2154) was approved. Members were asked to
comment on a draft Business Plan and Convener's Report for 2017-2018
which would be labelled N2156.
10. Start planning for the further revision of the Fortran standard.
It was noted that most input to the survey on future development of
the standard had come from the USA and other countries were encouraged
to make contributions.
There followed a series of straw votes on topics highlighted in N2147.
- whether generics should be considered
straw vote: yes: 14 - no: 4 - undecided: 3
- whether exceptions should be considered
straw vote: yes: 7 - no: 5 - undecided: 9
The following items from N2147 had been left undecided in the review
in J3/18-156.
- += and *= syntax
straw vote: yes: 3 - no: 11 - undecided: 5
- constructors for derived types
straw vote: yes: 1 - no: 8 - undecided: 12
- allow a specification section in some constructs without block/endblock
straw vote: yes: 4 - no: 8 - undecided: 7
- allow arrays in allocatables with coarray components
straw vote: yes: 8 - no: 5 - undecided: 7
11. Closing Business
11.1 Future meetings
Makki Takata, host for the 2019 meeting, asked for an indication
of the size of hotel rooms that members might prefer. A straw
vote went: spacious (and more expensive) 5 - smaller 8 - either 3.
Bill Long offered a meeting in Minneapolis, supported by Cray, and
described facilities. Van Snyder offered a meeting in Pasadena
and also described local facilities. A straw vote went:
Minneapolis 11 - Pasadena 2 - either 6. The Minneapolis
invitation was accepted.
Nathan Sircombe offered a meeting in Manchester, UK, in 2021,
supported by Arm. He gave a short presentation on Arm, local
facilities, and the city of Manchester. The invitation was
accepted.
11.2 Any other business
None was raised.
12. Adoption of Resolutions [N2152]
There was some discussion and minor editing of the draft proposed by
the Drafting Committee. After editing, resolutions B1 to B3 and B9 to
B11 were approved by unanimous acclaim and resolutions B4 to B8 were
approved by unanimous consent
13. Adjournment
Members congratulated Steve Lionel for successfully chairing his first
meeting as WG5 convenor.
The WG5 meeting adjourned at 12:50 on Friday, June 15, 2018.
...........................................................................
APPENDIX A
Open MP report by Bill Long
The OpenMP committee would release a comment draft for the OpenMP
5.0 specification (TR7) in early July, which would cover all the
new features that would be in the final specification. They have
been working on voting in final features and fixes to the
specification in the last three months, in preparation of that
draft. The final OpenMP 5.0 release was scheduled for November
this year.
Here is a list of the major new features since the last draft
release:
- What was called the "concurrent" construct in TR6 has been
renamed to the "loop" construct. It works similar to "acc loop
independent" in OpenACC. It may be used in place of a
distribute, worksharing-loop, or simd construct, and allows an
implementation more flexibility in parallelization since it
implies that the iterations of the loop are
independent. Related to this, an order(concurrent) clause was
added to distribute, worksharing-loop, and simd constructs to
give more flexibility to the implementation on parallelization
of the associated loops.
- Improved lambda support when executing code on a target device.
- Allow some flavours of non-rectangular loops to be parallelized.
- A scan directive was added to support inclusive/exclusive scan
(prefix sum) computations in a parallelizable loop.
- A modifier was added to the reduction clause to define task
reductions.
- Support "reverse offload" from a target device back to the host
(e.g. to do I/O or other things that a target device may not
support).
- Permit the teams construct to be used outside of a target
construct, on the host.
- API routines for defining task dependence objects.
- To allow external asynchronous activities to interact with
OpenMP synchronization primitives, a clause was added to allow
an OpenMP task to stay live (in a "detached" state) beyond the
completion of its structured block. The clause accepts a
pointer to an omp_event_t object, and an API routine was added
to satisfy that event, permitting the task to complete (and any
OpenMP synchronization constructs waiting on the task's
completion).
- Context-based selection of function variants or directive
variants. A directive was added for declaring function variants
for functions called in an OpenMP program. The compiler may
replace the call to a function with a call to its variant if it
appears in a specified enclosing context. A meta-directive was
added for specifying different directive variants that may be
selected from according to the enclosing context. Context may
be defined according to the enclosing OpenMP constructs, traits
for the current device, or other implementation-specific
traits.
- Non-contiguous array sections may now appear in a target update
directive (e.g. update an array with a non-unit stride that
resides in a target device). The array section syntax for C/C++
was updated to support a triplet notation.
- The base pointer used in an array section may now be shaped
with a new "pointer shaping" syntax.
- New memory allocator traits were added for pinned memory and
for specifying fallback behavior in case an allocation can not
be satisfied.
- Derived type variables with allocable components can now appear
in a map clause. Deep-copy semantic is implied.
...........................................................................
APPENDIX B
Flang report by Gary Klimowicz
Flang is an open source compiler for Fortran, sponsored by the
US Department of Energy (particularly, LLNL, Sandia and LANL).
The goals of the project are to
- Create a new, open source Fortran 2018 compiler with Apache 2.0
licensing,
- that can be used for language and parallelization
experimentation,
- that exists as a peer in the LLVM community of languages,
like Clang,
- that can rely on LLVM code generation and parallelism support
for CPUs and GPUs.
The initial version of Flang is derived from the PGI Fortran
compiler, with some proprietary features removed (OpenACC
support, inter-procedure analysis). It was published on GitHub
in May 2017 at github.com/flang-compiler, and consists of
several subprojects (including the Flang driver and compiler
itself, and changes to LLVM to be upstreamed). The current
compiler supports Fortran 2003 and some Fortran 2008
features. Improvements in the PGI compiler are added to Flang
as they pass NVIDIA QA.
Flang is available for Linux on x86-64, OpenPOWER and Arm
processors, and is the basis of the Arm commercial Fortran
compiler. Members of the community are also working on ports to
Windows and Mac OS X.
There are flang-dev and flang-announce mailing lists you can
join for discussion of Flang at
http://lists.flang-compiler.org/ and a Slack channel,
http://flang-compiler.slack.com/ for more interactive
communication with the Flang community.
The Flang project team recognizes that the older code base used
to seed Flang is not going to meet the long-term goals of the
project, and NVIDIA has begun a new project to rewrite the
Fortran front-end in C++ to better align with the LLVM and
Clang communities and to better leverage the existing tools and
techniques from these communities. This front-end is based on
parser combinators. It can currently parse all of Fortran 2018
as of the DIS, producing abstract syntax trees. We are
currently working on declaration and type processing,
expression evaluation for compile-time expressions, and OpenMP
directive parsing.
The source code for this compiler is available on
GitHub. NVIDIA and the DOE will produce a webinar in late June
or early July to walk through the repository, documentation and
code structure.
There is a biweekly half-hour conference call providing status
updates on Flang, every other Wednesday at 8:30 AM Pacific time
(the next is June 27, 2018). If you are interested in
participating in these calls, please let Gary Klimowicz
(gklimowicz at nvidia.com) know and he will forward the meeting
invitation.
...........................................................................
More information about the J3
mailing list