- Setup OMPT options and targets in libomptarget's CMakeLists.txt.
- Modify omp-tools.h.var according to the latest OpenMP specification (omp-tools.h.var).
- Add additional fields into ompt_task_info_t and ompt_thread_info_t to support target-data, target-task-data, and host-op-id (ompt-internal.h).
- Set corresponding flags correctly when initializing a target task (kmp_tasking.cpp).
- Add wrappers for target-emi callbacks (ompt-general.cpp).
- Add callback interfaces for libomptarget in the runtime. The details of OMPT callbacks are transparent to libomptarget and libomptarget only invokes these interfaces when encountering corresponding events (ompt-general.cpp and exports_so.txt).
Details
- Reviewers
jdoerfert hbae protze.joachim
Diff Detail
- Repository
- rG LLVM Github Monorepo
Event Timeline
openmp/runtime/src/include/omp-tools.h.var | ||
---|---|---|
320 | The use case for this flag is for omp_target_memcpy and similar functions, where it is possible to copy from one device to another device. |
openmp/runtime/src/include/omp-tools.h.var | ||
---|---|---|
320 | OK. |
The commit is put on hold as discussed in 10/6 OpenMP in LLVM call. Someone from AMD (@dhruvachak ?) will work on upstreaming an alternative implementation, which will most probably result in reverting D99803 as well.
Is this an extension?
I could not find it in 5.1, TR10, or in any open ticket.