|
Revision tags: llvmorg-21-init, llvmorg-19.1.7, llvmorg-19.1.6, llvmorg-19.1.5, llvmorg-19.1.4, llvmorg-19.1.3, llvmorg-19.1.2, llvmorg-19.1.1, llvmorg-19.1.0, llvmorg-19.1.0-rc4, llvmorg-19.1.0-rc3 |
|
| #
9e0ee0e1 |
| 15-Aug-2024 |
Hansang Bae <hansang.bae@intel.com> |
[OpenMP] Add support for pause with omp_pause_stop_tool (#97100)
This patch adds support for pause resource with a new enumerator
omp_pause_stop_tool. The expected behavior of this enumerator is
*
[OpenMP] Add support for pause with omp_pause_stop_tool (#97100)
This patch adds support for pause resource with a new enumerator
omp_pause_stop_tool. The expected behavior of this enumerator is
* omp_pause_resource: not allowed
* omp_pause_resource_all: equivalent to omp_pause_hard
show more ...
|
|
Revision tags: llvmorg-19.1.0-rc2, llvmorg-19.1.0-rc1, llvmorg-20-init, llvmorg-18.1.8, llvmorg-18.1.7, llvmorg-18.1.6, llvmorg-18.1.5, llvmorg-18.1.4, llvmorg-18.1.3, llvmorg-18.1.2 |
|
| #
20f5bcfb |
| 18-Mar-2024 |
nicebert <110385235+nicebert@users.noreply.github.com> |
[OpenMP] Add OpenMP extension API to dump mapping tables (#85381)
This adds an API call ompx_dump_mapping_tables.
This allows users to debug the mapping tables and can be especially
useful for uni
[OpenMP] Add OpenMP extension API to dump mapping tables (#85381)
This adds an API call ompx_dump_mapping_tables.
This allows users to debug the mapping tables and can be especially
useful for unified shared memory applications to check if the code
behaves in the way it should. The implementation reuses code already
present to dump mapping tables (in a debug setting).
---------
Co-authored-by: Joseph Huber <huberjn@outlook.com>
show more ...
|
|
Revision tags: llvmorg-18.1.1, llvmorg-18.1.0, llvmorg-18.1.0-rc4, llvmorg-18.1.0-rc3, llvmorg-18.1.0-rc2, llvmorg-18.1.0-rc1, llvmorg-19-init |
|
| #
8b9a6af4 |
| 30-Nov-2023 |
Joseph Huber <huberjn@outlook.com> |
[OpenMP] Add an 'stddef.h' include to 'omp.h' (#73876)
Summary: We use `size_t` internally in the omp.h header, which is normally provided by `stdlib.h` which is already included. Howevever, some ca
[OpenMP] Add an 'stddef.h' include to 'omp.h' (#73876)
Summary: We use `size_t` internally in the omp.h header, which is normally provided by `stdlib.h` which is already included. Howevever, some cases when using `-ffreestanding` can result in this not being defined via `stdlib.h`. This patch simply adds an explicit inclusion of this header, which is provided by the `clang` resource directory, to resolve this in all cases.
show more ...
|
|
Revision tags: llvmorg-17.0.6, llvmorg-17.0.5, llvmorg-17.0.4 |
|
| #
84d8ace5 |
| 25-Oct-2023 |
Joseph Huber <jhuber6@vols.utk.edu> |
[OpenMP][Obvious] Fix function prototype when used in C mode
Summary: The `llvm_omp_target_dynamic_shared_alloc` prototype in `omp.h` accidentally left the void argument unspecified. This created un
[OpenMP][Obvious] Fix function prototype when used in C mode
Summary: The `llvm_omp_target_dynamic_shared_alloc` prototype in `omp.h` accidentally left the void argument unspecified. This created unintended code when called from the C language, causing some `nvlink` failures in certain scenarios.
show more ...
|
| #
f93a697e |
| 19-Oct-2023 |
Michael Klemm <michael.klemm@amd.com> |
[libomptarget][OpenMP] Initial implementation of omp_target_memset() and omp_target_memset_async() (#68706)
Implement a slow-path version of omp_target_memset*()
There is a TODO to implement a f
[libomptarget][OpenMP] Initial implementation of omp_target_memset() and omp_target_memset_async() (#68706)
Implement a slow-path version of omp_target_memset*()
There is a TODO to implement a fast path that uses an on-device
kernel instead of the host-based memory fill operation. This may
require some additional plumbing to have kernels in libomptarget.so
show more ...
|
|
Revision tags: llvmorg-17.0.3, llvmorg-17.0.2, llvmorg-17.0.1, llvmorg-17.0.0, llvmorg-17.0.0-rc4, llvmorg-17.0.0-rc3, llvmorg-17.0.0-rc2, llvmorg-17.0.0-rc1, llvmorg-18-init, llvmorg-16.0.6, llvmorg-16.0.5, llvmorg-16.0.4, llvmorg-16.0.3, llvmorg-16.0.2, llvmorg-16.0.1, llvmorg-16.0.0, llvmorg-16.0.0-rc4, llvmorg-16.0.0-rc3, llvmorg-16.0.0-rc2, llvmorg-16.0.0-rc1, llvmorg-17-init, llvmorg-15.0.7, llvmorg-15.0.6, llvmorg-15.0.5, llvmorg-15.0.4, llvmorg-15.0.3, working, llvmorg-15.0.2, llvmorg-15.0.1, llvmorg-15.0.0, llvmorg-15.0.0-rc3, llvmorg-15.0.0-rc2, llvmorg-15.0.0-rc1, llvmorg-16-init, llvmorg-14.0.6, llvmorg-14.0.5, llvmorg-14.0.4, llvmorg-14.0.3, llvmorg-14.0.2, llvmorg-14.0.1 |
|
| #
a3f423cf |
| 06-Apr-2022 |
Joseph Huber <jhuber6@vols.utk.edu> |
[OpenMP] Add dynamic memory function to omp.h and add documentation
This patch adds the `llvm_omp_target_dynamic_shared_alloc` function to the `omp.h` header file so users can access it by default.
[OpenMP] Add dynamic memory function to omp.h and add documentation
This patch adds the `llvm_omp_target_dynamic_shared_alloc` function to the `omp.h` header file so users can access it by default. Also changed the name to keep it consistent with the other target allocators. Added some documentation so users know how to use it. Didn't add the interface for Fortran since there's no way to test it right now.
Reviewed By: jdoerfert
Differential Revision: https://reviews.llvm.org/D123246
show more ...
|
| #
840c0404 |
| 06-Apr-2022 |
Joseph Huber <jhuber6@vols.utk.edu> |
[OpenMP] Change target memory tests to use allocators
The target allocators have been supported for NVPTX offloading for awhile. The tests should use the allocators instead of calling the functions
[OpenMP] Change target memory tests to use allocators
The target allocators have been supported for NVPTX offloading for awhile. The tests should use the allocators instead of calling the functions manually. Also the comments indicating these being a preview should be removed.
Reviewed By: jdoerfert
Differential Revision: https://reviews.llvm.org/D123242
show more ...
|
|
Revision tags: llvmorg-14.0.0, llvmorg-14.0.0-rc4, llvmorg-14.0.0-rc3 |
|
| #
1fbdb03b |
| 05-Mar-2022 |
AndreyChurbanov <andrey.churbanov@intel.com> |
[OpenMP] libomp: omp_in_explicit_task() implemented.
Differential Revision: https://reviews.llvm.org/D120671
|
|
Revision tags: llvmorg-14.0.0-rc2, llvmorg-14.0.0-rc1, llvmorg-15-init, llvmorg-13.0.1, llvmorg-13.0.1-rc3, llvmorg-13.0.1-rc2, llvmorg-13.0.1-rc1 |
|
| #
f5c0c917 |
| 11-Oct-2021 |
AndreyChurbanov <andrey.churbanov@intel.com> |
[OpenMP] libomp: add OpenMP 5.1 memory allocation routines.
Aligned allocation routines added. Fortran interfaces added for all allocation routines.
Differential Revision: https://reviews.llvm.org/
[OpenMP] libomp: add OpenMP 5.1 memory allocation routines.
Aligned allocation routines added. Fortran interfaces added for all allocation routines.
Differential Revision: https://reviews.llvm.org/D110923
show more ...
|
|
Revision tags: llvmorg-13.0.0, llvmorg-13.0.0-rc4, llvmorg-13.0.0-rc3, llvmorg-13.0.0-rc2, llvmorg-13.0.0-rc1, llvmorg-14-init, llvmorg-12.0.1, llvmorg-12.0.1-rc4, llvmorg-12.0.1-rc3, llvmorg-12.0.1-rc2 |
|
| #
cf5c94ef |
| 01-Jun-2021 |
Hansang Bae <hansang.bae@intel.com> |
[OpenMP] Define named constants for interop's foreign runtime ID
Also added missing Fortran definitions for interop support.
Differential Revision: https://reviews.llvm.org/D102883
|
|
Revision tags: llvmorg-12.0.1-rc1 |
|
| #
9b98497b |
| 13-Apr-2021 |
Hansang Bae <hansang.bae@intel.com> |
[OpenMP] Add omp_target_is_accessible() to header files
-- Added omp_target_is_accessible to the header files -- Added missing const qualifier to device memory routines
Differential Revision: https
[OpenMP] Add omp_target_is_accessible() to header files
-- Added omp_target_is_accessible to the header files -- Added missing const qualifier to device memory routines
Differential Revision: https://reviews.llvm.org/D100420
show more ...
|
|
Revision tags: llvmorg-12.0.0, llvmorg-12.0.0-rc5, llvmorg-12.0.0-rc4 |
|
| #
3da61dda |
| 25-Mar-2021 |
Hansang Bae <hansang.bae@intel.com> |
[OpenMP] Define omp_is_initial_device() variants in omp.h
omp_is_initial_device() is marked as a built-in function in the current compiler, and user code guarded by this call may be optimized away,
[OpenMP] Define omp_is_initial_device() variants in omp.h
omp_is_initial_device() is marked as a built-in function in the current compiler, and user code guarded by this call may be optimized away, resulting in undesired behavior in some cases. This patch provides a possible fix for such cases by defining the routine as a variant function and removing it from builtin list.
Differential Revision: https://reviews.llvm.org/D99447
show more ...
|
|
Revision tags: llvmorg-12.0.0-rc3, llvmorg-12.0.0-rc2 |
|
| #
b6c2f538 |
| 12-Feb-2021 |
Hansang Bae <hansang.bae@intel.com> |
[OpenMP] Add allocator support for target memory
This is a preview of allocator support for target memory that depends on the offload runtime API which allocates memory as described below.
llvm_omp
[OpenMP] Add allocator support for target memory
This is a preview of allocator support for target memory that depends on the offload runtime API which allocates memory as described below.
llvm_omp_target_alloc_host(size_t size, int device_num); -- Returns non-migratable memory owned by host. -- Memory is accessible by host and device(s).
llvm_omp_target_alloc_shared(size_t size, int device_num); -- Returns migratable memory owned by host and device. -- Memory is accessible by host and device.
llvm_omp_target_alloc_device(size_t size, int device_num); -- Returns memory owned by device. -- Memory is only accessible by device.
New memory space and predefined allocator names are -- llvm_omp_target_host_mem_space -- llvm_omp_target_shared_mem_space -- llvm_omp_target_device_mem_space -- llvm_omp_target_host_mem_alloc -- llvm_omp_target_shared_mem_alloc -- llvm_omp_target_device_mem_alloc
Differential Revision: https://reviews.llvm.org/D96669
show more ...
|
|
Revision tags: llvmorg-11.1.0, llvmorg-11.1.0-rc3 |
|
| #
d7b12004 |
| 01-Feb-2021 |
AndreyChurbanov <andrey.churbanov@intel.com> |
[OpenMP] libomp: implement nteams-var and teams-thread-limit-var ICVs
The change includes OMP_NUM_TEAMS, OMP_TEAMS_THREAD_LIMIT env variables, omp_set_num_teams, omp_get_max_teams, omp_set_teams_thr
[OpenMP] libomp: implement nteams-var and teams-thread-limit-var ICVs
The change includes OMP_NUM_TEAMS, OMP_TEAMS_THREAD_LIMIT env variables, omp_set_num_teams, omp_get_max_teams, omp_set_teams_thread_limit, omp_get_teams_thread_limit routines.
Differential Revision: https://reviews.llvm.org/D95003
show more ...
|
|
Revision tags: llvmorg-12.0.0-rc1, llvmorg-13-init, llvmorg-11.1.0-rc2, llvmorg-11.1.0-rc1 |
|
| #
6f0f0220 |
| 07-Jan-2021 |
Hansang Bae <hansang.bae@intel.com> |
[OpenMP] Update allocator trait key/value definitions
Use new definitions introduced in 5.1 specification.
Differential Revision: https://reviews.llvm.org/D94277
|
|
Revision tags: llvmorg-11.0.1, llvmorg-11.0.1-rc2 |
|
| #
82a29a62 |
| 18-Dec-2020 |
Hansang Bae <hansang.bae@intel.com> |
[OpenMP] Add definition/interface for target memory routines
The change includes new routines introduced in 5.1 and Fortran interface.
Differential Revision: https://reviews.llvm.org/D93505
|
| #
e1fd2024 |
| 17-Dec-2020 |
Hansang Bae <hansang.bae@intel.com> |
[OpenMP] Add definitions for 5.1 interop to omp.h
|
|
Revision tags: llvmorg-11.0.1-rc1 |
|
| #
5439db05 |
| 06-Nov-2020 |
Nawrin Sultana <nawrin.sultana@intel.com> |
[OpenMP] Add omp_realloc implementation
This patch adds omp_realloc function implementation according to OpenMP 5.1 specification.
Differential Revision: https://reviews.llvm.org/D90971
|
| #
938f1b85 |
| 06-Nov-2020 |
Nawrin Sultana <nawrin.sultana@intel.com> |
[OpenMP] Add omp_calloc implementation
This patch adds omp_calloc implementation according to OpenMP 5.1 specification.
Differential Revision: https://reviews.llvm.org/D90967
|
|
Revision tags: llvmorg-11.0.0, llvmorg-11.0.0-rc6, llvmorg-11.0.0-rc5, llvmorg-11.0.0-rc4, llvmorg-11.0.0-rc3, llvmorg-11.0.0-rc2, llvmorg-11.0.0-rc1, llvmorg-12-init, llvmorg-10.0.1, llvmorg-10.0.1-rc4, llvmorg-10.0.1-rc3, llvmorg-10.0.1-rc2, llvmorg-10.0.1-rc1, llvmorg-10.0.0, llvmorg-10.0.0-rc6, llvmorg-10.0.0-rc5, llvmorg-10.0.0-rc4 |
|
| #
95df6747 |
| 04-Mar-2020 |
AndreyChurbanov <andrey.churbanov@intel.com> |
[openmp] OpenMP 5.1 omp_display_env function implementation.
Patch by Michael Klemm.
Differential Revision: https://reviews.llvm.org/D74956
|
|
Revision tags: llvmorg-10.0.0-rc3, llvmorg-10.0.0-rc2, llvmorg-10.0.0-rc1 |
|
| #
ad24cf2a |
| 23-Jan-2020 |
Kelvin Li <kkwli0@gmail.com> |
[OpenMP] change omp_atk_* and omp_atv_* enumerators to lowercase [NFC]
The OpenMP spec defines the OMP_ATK_* and OMP_ATV_* to be lowercase.
Differential Revision: https://reviews.llvm.org/D73248
|
|
Revision tags: llvmorg-11-init, llvmorg-9.0.1, llvmorg-9.0.1-rc3, llvmorg-9.0.1-rc2, llvmorg-9.0.1-rc1, llvmorg-9.0.0, llvmorg-9.0.0-rc6, llvmorg-9.0.0-rc5, llvmorg-9.0.0-rc4, llvmorg-9.0.0-rc3, llvmorg-9.0.0-rc2, llvmorg-9.0.0-rc1, llvmorg-10-init |
|
| #
1ff55357 |
| 16-Jul-2019 |
Jonas Hahnfeld <hahnjo@hahnjo.de> |
[OpenMP] Move header inclusion out of 'extern "C"'
This leads to problems when compiling C++ code with libc++ for Nvidia GPUs because Clang now uses wrappers for math functions that might include C+
[OpenMP] Move header inclusion out of 'extern "C"'
This leads to problems when compiling C++ code with libc++ for Nvidia GPUs because Clang now uses wrappers for math functions that might include C++ templates not allowed in 'extern "C"'.
Differentiel Revision: https://reviews.llvm.org/D64625
llvm-svn: 366229
show more ...
|
| #
e4b4f994 |
| 12-Jul-2019 |
Jonathan Peyton <jonathan.l.peyton@intel.com> |
[OpenMP] Remove OMP spec versioning
Remove all older OMP spec versioning from the runtime and build system.
Patch by Terry Wilmarth
Differential Revision: https://reviews.llvm.org/D64534
llvm-svn
[OpenMP] Remove OMP spec versioning
Remove all older OMP spec versioning from the runtime and build system.
Patch by Terry Wilmarth
Differential Revision: https://reviews.llvm.org/D64534
llvm-svn: 365963
show more ...
|