[libomptarget] Add support for target memory allocators to cuda RTLSummary:The allocator interface added in D97883 allows the RTL to allocate shared andhost-pinned memory from the cuda plugin. Th
[libomptarget] Add support for target memory allocators to cuda RTLSummary:The allocator interface added in D97883 allows the RTL to allocate shared andhost-pinned memory from the cuda plugin. This patch adds support for these tothe runtime.Reviewed By: grokosDifferential Revision: https://reviews.llvm.org/D102000
show more ...
[OpenMP] Fixed the link error that cannot find static data memberConstant static data member can be defined in the class without anotherdefine after the class in C++17. Although it is C++17, Clang
[OpenMP] Fixed the link error that cannot find static data memberConstant static data member can be defined in the class without anotherdefine after the class in C++17. Although it is C++17, Clang can still handle iteven w/o the flag for C++17. Unluckily, GCC cannot handle that.Reviewed By: jhuber6Differential Revision: https://reviews.llvm.org/D94541
[OpenMP] Move memory manager to plugin and make it a common interfaceThe lifetime of `libomptarget` and its opened plugins are not alignedand it's hard for `libomptarget` to determine when the plu
[OpenMP] Move memory manager to plugin and make it a common interfaceThe lifetime of `libomptarget` and its opened plugins are not alignedand it's hard for `libomptarget` to determine when the plugins are destroyed.As a result, some issues (see D94256 for details) occur on some platforms.Actually, if we take target memory as target resources, same as other resources,such as CUDA streams, in each plugin, then the memory manager should also be inthe plugin. Also considering some platforms may want to opt out the feature, itmakes sense to move the memory manager to plugin, make it a common interface, andlet plguin developers determine whether they need it. This is what this patch does.CUDA plugin is taken as example to show how to integrate it. In this way, we canalso get a bonus that different thresholds can be set for different platforms.Reviewed By: jdoerfert, JonChesterfieldDifferential Revision: https://reviews.llvm.org/D94379