Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added openmp-wg/meeting-minutes/images/image1.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added openmp-wg/meeting-minutes/images/image2.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added openmp-wg/meeting-minutes/images/image3.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added openmp-wg/meeting-minutes/images/image4.jpg
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
Binary file added openmp-wg/meeting-minutes/images/image5.png
Loading
Sorry, something went wrong. Reload?
Sorry, we cannot display this file.
Sorry, this file is invalid so it cannot be displayed.
123 changes: 123 additions & 0 deletions openmp-wg/meeting-minutes/openmp-minutes-2020-08-12.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,123 @@
### 2020, August 12

### Agenda

1. Roll Call Put your name in the participants list below (if you want)
2. administrative things: weekly meetings, google docs,



Need regular backups of the document

3. Open :



Plugin : …

Jon made AMD plugin runtime. About 6000 lines, only builds if a cmake variable ROCM_DIR is set. Would like to check in as is.

Johannes prefers to work on enabling testing (after merge)

Order plugin table in chronological order.

Greg wants libomptarget to look in current directory for plugin to avoid using LD_LIBRARY_PATH

Greg also want some early check for device availability before loading plugin

4. present clause (Joel)



Done. target update, target data. For target regions checked on entry and exit.

Need clarification about map and present clause ordering.

Alexey is working on reordering mapping clauses based on 5.0 requirements.

5. Status of failures when switching OpenMP version to 50 (Saiyed)


1. https://reviews.llvm.org/D84844
2. https://reviews.llvm.org/D85150
3. https://reviews.llvm.org/D85214



360 tests need to be updated.. Hopefully it will be done by next week.

Split test to run in parallel. ([https://reviews.llvm.org/D85695](https://www.google.com/url?q=https://reviews.llvm.org/D85695&sa=D&source=editors&ust=1778600246610329&usg=AOvVaw2Y90P3veFiBgtp5XOZw-5v) & [https://reviews.llvm.org/D85551](https://www.google.com/url?q=https://reviews.llvm.org/D85551&sa=D&source=editors&ust=1778600246610411&usg=AOvVaw0xYVA--OGRTvph_BW8th0f))

6. target memory manager & pool allocator (Shilei)



Patches are [https://reviews.llvm.org/D81054](https://www.google.com/url?q=https://reviews.llvm.org/D81054&sa=D&source=editors&ust=1778600246610586&usg=AOvVaw32u-2qHDL8h3KrrbZHQ60Q) and [https://reviews.llvm.org/D85274](https://www.google.com/url?q=https://reviews.llvm.org/D85274&sa=D&source=editors&ust=1778600246610658&usg=AOvVaw0i2EWBI40yLrTpCoMSWnGI)

7. unshackled task / async support (Shilei)
8. Heterogeneous LLVM-IR Modules (Johannes)
9. Support fat static library
10. Libomptarget dependency handling (Shilei)
11. OpenMP IRBuilder status, Flang + OpenMP
12. OpenMP optimization command center (Johannes)
13. Automatic detection of target pragmas without user command line -fopenmp-targets=
14. DeviceRTL redesign to support sharing code
15. OpenMP feature tracking status ( https://clang.llvm.org/docs/OpenMPSupport.html)
16. LTO for fat binary linking



### Open Bugs

* [https://bugs.llvm.org/show_bug.cgi?id=47063](https://www.google.com/url?q=https://bugs.llvm.org/show_bug.cgi?id%3D47063&sa=D&source=editors&ust=1778600246611456&usg=AOvVaw3IsUdgxQJU4sMJojIIBF36)
* [https://bugs.llvm.org/show_bug.cgi?id=47122](https://www.google.com/url?q=https://bugs.llvm.org/show_bug.cgi?id%3D47122&sa=D&source=editors&ust=1778600246611577&usg=AOvVaw2Nb7ihdADoUFdrry6Jtb6P)



### Patches to look at

* [https://reviews.llvm.org/D80816](https://www.google.com/url?q=https://reviews.llvm.org/D80816&sa=D&source=editors&ust=1778600246611720&usg=AOvVaw2DQYK6NlKpZV9C93JXYEbd) \- clang-offload-bundler (SDL) - needs approval/review.



### Participants (voluntary/incomplete listing)

* Ravi Narayanaswamy (Intel)
* Johannes Doerfert (ANL)
* George Rokos (Intel)
* Joel Denny, Valentin Clement (ORNL)
* Kelvin Li (IBM)
* Shilei Tian (SBU)
* Lukas Sommer (TU Darmstadt)
* Roger Ferrer Ibañez (Barcelona Supercomputing Center)
* Saiyedul Islam, Raghu Maddhipatla, Rich Bleikamp, Greg Rodgers, Jan Sjodin (AMD)
* Ye Luo(ANL)
* Michael Kruse (ANL)
* Andrey Churbanov (Intel)



* * *

## Meeting Template (to be copied into next meeting)

### <Date>

### Agenda

*


### Open Bugs

*


### Patches to look at

*


### Participants (voluntary/incomplete listing)

* * * * * * * * * * *
45 changes: 45 additions & 0 deletions openmp-wg/meeting-minutes/openmp-minutes-2020-08-19.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,45 @@
### 2020, August 19

### Agenda

* Shilei Tian, `nowait` support (=async, unshakled tasks, …) [D77609](https://www.google.com/url?q=https://reviews.llvm.org/D77609&sa=D&source=editors&ust=1778600246607531&usg=AOvVaw1QDwK5hvHi4aEVPWW7F2G_)


* Presented unshackled implementations support. [Slides](https://www.google.com/url?q=https://drive.google.com/file/d/1d1kQBY_1ZGz-O3z3Q5drBJCa1E5pF3GZ/view?usp%3Dsharing&sa=D&source=editors&ust=1778600246607672&usg=AOvVaw0mkWUzVxk79BVrzctFoqI6)
* How should the array list be handled when the pool of threads are increased?



### Open Bugs

* Lookup plugins in libomptarget directory.


* Greg to investigate and provide details on why this is necessary for their implementation.


* [https://bugs.llvm.org/show_bug.cgi?id=47122](https://www.google.com/url?q=https://bugs.llvm.org/show_bug.cgi?id%3D47122&sa=D&source=editors&ust=1778600246608051&usg=AOvVaw3g1SJUbfg8d5nBleaQ7rvq)



### Patches to look at

* [https://reviews.llvm.org/D77609](https://www.google.com/url?q=https://reviews.llvm.org/D77609&sa=D&source=editors&ust=1778600246608193&usg=AOvVaw2SpGsoNwRbudhyB3iwJAow)
* [https://reviews.llvm.org/D81054](https://www.google.com/url?q=https://reviews.llvm.org/D81054&sa=D&source=editors&ust=1778600246608291&usg=AOvVaw0ZObYjfwzhZB_V_vQV6svD)



### Participants (voluntary/incomplete listing)

* Johannes Doerfert (ANL)
* Ravi Narayanaswamy (Intel)
* George Rokos (Intel)
* Kelvin Li (IBM)
* Valentin Clement, Joel Denny (ORNL)
* Greg Rodgers(AMD)
* Ye Luo (ANL)
* Saiyedul Islam (AMD)
* Shilei Tian (SBU)
* Andrey Churbanov (Intel)
* Jan Sjodin (AMD)
* Jon Chesterfield (AMD)
57 changes: 57 additions & 0 deletions openmp-wg/meeting-minutes/openmp-minutes-2020-08-26.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,57 @@
### 2020, August 26

### Agenda

* Communicating OMP_TGT_MAPTYPE_LITERAL to plugins


* Overload offset field by setting it to MAXINT to communicate literals


* Search location of plugin libraries
* Test update status


* Salyedul is waiting for 2 reviews. Alexey will review the patches


* Questions from Alex Duran on unshackled threads ([https://reviews.llvm.org/D77609](https://www.google.com/url?q=https://reviews.llvm.org/D77609&sa=D&source=editors&ust=1778600246605335&usg=AOvVaw0EFc6XCZk_YxSpPTsG1OPW))
* Release Notes for OpenMP in LLVM/Clang 11, collected right now ([https://reviews.llvm.org/D86562](https://www.google.com/url?q=https://reviews.llvm.org/D86562&sa=D&source=editors&ust=1778600246605496&usg=AOvVaw3aUpt0q74aGM4aGUlezSSV))
* Target memory manager (merged)
* Pack first private (merged)
* Plugin lifetime
* Emit more errors to users ([https://reviews.llvm.org/D86483](https://www.google.com/url?q=https://reviews.llvm.org/D86483&sa=D&source=editors&ust=1778600246605739&usg=AOvVaw2wf67Lgl3bJcHETSYKQjeK)) ([https://docs.google.com/document/d/1nvQANWODnsCszGLDdqsbNkQokOolxBVXlFfvk2tHxU4/edit?usp=sharing](https://www.google.com/url?q=https://docs.google.com/document/d/1nvQANWODnsCszGLDdqsbNkQokOolxBVXlFfvk2tHxU4/edit?usp%3Dsharing&sa=D&source=editors&ust=1778600246605893&usg=AOvVaw3Z_KQ0lxfvvEjaL-Q_7Ybu))
*


Target Memory Manager effect on SU(3)xSU(3) (grid mini app), it is patched below, includes the -fopenmp-cuda-mode flag in the plot:

![](images/image2.png)

### Open Bugs

*


### Patches to look at

* [https://reviews.llvm.org/D77609](https://www.google.com/url?q=https://reviews.llvm.org/D77609&sa=D&source=editors&ust=1778600246606500&usg=AOvVaw1rOkSwD9Dm6x9jYc9o6Fge)
* [https://reviews.llvm.org/D81054](https://www.google.com/url?q=https://reviews.llvm.org/D81054&sa=D&source=editors&ust=1778600246606593&usg=AOvVaw35YTFOK16VbyQBL8I22Wic)
* [https://reviews.llvm.org/D80816](https://www.google.com/url?q=https://reviews.llvm.org/D80816&sa=D&source=editors&ust=1778600246606681&usg=AOvVaw1Oo0TlMTKca3HYGpS-B5l_)



### Participants (voluntary/incomplete listing)

* Ravi Narayanaswamy (Intel)
* Jan Sjodin (AMD)
* George Rokos (Intel)
* Saiyedul Islam (AMD)
* Johannes Doerfert (ANL)
* Jon Chesterfield (AMD)
* Andrey Churbanov (Intel)
* Shilei Tian (SBU)
* Valentin Clement (ORNL)
* Joel Denny (ORNL)
* Ye Luo (ANL)
* Hal Finkel (ANL)
71 changes: 71 additions & 0 deletions openmp-wg/meeting-minutes/openmp-minutes-2020-09-02.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
### 2020, September 2

### Agenda

* Support struct mapping : #pragma omp target map(alloc:S) map(S.p[:N]) map(to:S.a, S.b) where S is a struct with 3 fields p,a,b
[https://reviews.llvm.org/D86119](https://www.google.com/url?q=https://reviews.llvm.org/D86119&sa=D&source=editors&ust=1778600246602343&usg=AOvVaw01Hf7iUxWL1o9Hf012IJvU)
* OpenMP device runtime build setup


* 1) Remove the non .bc support, this is largely untested and unhelpful, also unneeded after we do step 2) and 3)
* 2) Setup cmake to build the .bc device runtimes with the clang that was created in the build, if any. We have some precedence here I was told. (nb: LLVM_ENABLE_RUNTIMES didn't work for this out of the box)
* 3) Setup cmake to build all supported .bc device runtimes and let the user opt-out of that. Building a device runtime is basically free compared to the rest of LLVM, having out-of-the-box support for all devices is worth it (IMHO).



Have a default clang which could be the one just built and then have an option to choose a different clang.

Please respond by next week so a decision can be made.

A related patch has been on the Phabricator in a blocked state: [https://reviews.llvm.org/D46842](https://www.google.com/url?q=https://reviews.llvm.org/D46842&sa=D&source=editors&ust=1778600246603274&usg=AOvVaw0TRISRDj1mLpIj9DMQ9sIp)

* Unshackled task


* All issues have been addressed in the review.


* Target nowait is broken (Ye)


* Mapper change introduced wrong arguments which results in seg fault.
* George said there is a patch.[https://reviews.llvm.org/D84470](https://www.google.com/url?q=https://reviews.llvm.org/D84470&sa=D&source=editors&ust=1778600246603684&usg=AOvVaw10Ua9Qvcl7xvM9v0FGAiMN) which should address the issue



* Fat archive


* Patch for offload bundler is waiting to be reviewed
* Hope to get the driver change to accept device archive


* Runtime debug generation


* Better support to print info to user
* Ye: Errors common to all the plugins captured by libomptarget by number.
* Ye: not sure all the plugins should be forced to use numbers instead of ad-hoc printing messages.



### Open Bugs

*


### Patches to look at

* [https://reviews.llvm.org/D80816](https://www.google.com/url?q=https://reviews.llvm.org/D80816&sa=D&source=editors&ust=1778600246604400&usg=AOvVaw3lGb0Nt8eD-UpBom2OQoT5) \- offload-bundler archives patch



### Participants (voluntary/incomplete listing)

* Ravi Narayanaswamy, George Rokos(Intel)
* Jan Sjodin (AMD)
* Ye Luo (Argonne)
* Johannes Doerfert (ANL)
* Jon Chesterfield
* Andrey Churbanov (Intel)
* Kelvin Li (IBM)
83 changes: 83 additions & 0 deletions openmp-wg/meeting-minutes/openmp-minutes-2020-09-09.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,83 @@
### 2020, September 9

### Agenda

* FE optimization : if (omp_is_initial_device())



d

Results in d passed as arg on host compilation and not for device compilation

Proposed solution:

#omp begin declare variant match(device={kind(host)})

Int omp_is_initial_device() { return 1; }

#omp end declare variant

#omp begin declare variant match(device={kind(nohost)})

Int omp_is_initial_device() { return 0; }

#omp end declare variant

[https://clang.godbolt.org/z/cnhe6G](https://www.google.com/url?q=https://clang.godbolt.org/z/cnhe6G&sa=D&source=editors&ust=1778600246599430&usg=AOvVaw0w1CBtf20asnO5Us0iz6hd)

[https://clang.godbolt.org/z/Wqo9hM](https://www.google.com/url?q=https://clang.godbolt.org/z/Wqo9hM&sa=D&source=editors&ust=1778600246599553&usg=AOvVaw3zDES4ZhDCHHwMS0L3ZtEm)

* Using Clang to compile openmp device code
* Change the default linkage for OpenMP kernels (and such) to `weak_odr` (from `weak`)
* Target nowait is broken. Has the mapper fixed uploaded?


* Have patch which fixes the problem.
* Need LIT test. George or Alexey will add it
* Declare mapper is unstable. Should we disable it?


* Clean revert is problematic
* Seems like disabling in 11 is the right choice


* Support struct mapping : #pragma omp target map(alloc:S) map(S.p[:N]) map(to:S.a, S.b) where S is a struct with 3 fields p,a,b
[https://reviews.llvm.org/D86119](https://www.google.com/url?q=https://reviews.llvm.org/D86119&sa=D&source=editors&ust=1778600246600271&usg=AOvVaw1kO1VvRAyMsF_Pxz-yjYXu)
* OpenMP device runtime build setup [from last week]
* Runtime debug generation


* https://reviews.llvm.org/D87165



###

### Open Bugs

*


### Patches to look at

* [https://reviews.llvm.org/D80816](https://www.google.com/url?q=https://reviews.llvm.org/D80816&sa=D&source=editors&ust=1778600246600671&usg=AOvVaw1GuYyfokOyfXq5JyttSflB) \- offload-bundler archives patch
* [https://reviews.llvm.org/D84470](https://www.google.com/url?q=https://reviews.llvm.org/D84470&sa=D&source=editors&ust=1778600246600792&usg=AOvVaw0PfqioPZPai8a2ybIRtFku) Mapper bug fix
* [https://reviews.llvm.org/D86558](https://www.google.com/url?q=https://reviews.llvm.org/D86558&sa=D&source=editors&ust=1778600246600893&usg=AOvVaw0EN2QvbxNjyGGfIv86LIcC) \- Support for allocated locals in untied tasks.
* [https://reviews.llvm.org/D86119](https://www.google.com/url?q=https://reviews.llvm.org/D86119&sa=D&source=editors&ust=1778600246601018&usg=AOvVaw2NFcPgPV0s7LBuOEBQJu7w) \- support for overlapped mappings
* [https://reviews.llvm.org/D85762](https://www.google.com/url?q=https://reviews.llvm.org/D85762&sa=D&source=editors&ust=1778600246601166&usg=AOvVaw2k1M0_QXBZwKQVOjQZzuQR) \- [Do not allow threadprivates as base for array-like reduction.](https://www.google.com/url?q=https://reviews.llvm.org/D85762&sa=D&source=editors&ust=1778600246601272&usg=AOvVaw3PDXPf5R0WUSHIhoYWIQXo)
* [https://reviews.llvm.org/D84887](https://www.google.com/url?q=https://reviews.llvm.org/D84887&sa=D&source=editors&ust=1778600246601363&usg=AOvVaw3TzZGQ8jijVVS9UnzPxkeX) \- [Fix codegen for is_device_ptr component, captured by reference.](https://www.google.com/url?q=https://reviews.llvm.org/D84887&sa=D&source=editors&ust=1778600246601509&usg=AOvVaw1O36gck2EL9fj39lmr_Uwo)



### Participants (voluntary/incomplete listing)

* Ravi Narayanaswamy (Intel)
* Valentin Clement (ORNL)
* Shilei Tian (SBU)
* Joel Denny (ORNL)
* George Rokos (Intel)
* Saiyedul Islam (AMD)
* Johannes Doerfert, Ye Luo (ANL)
* Andrey Churbanov (Intel)
* Kelvin Li (IBM)
Loading