Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Re-add 2x missing CMake IMPL_ flags to the Wiki #585

Merged
merged 15 commits into from
Sep 28, 2024
26 changes: 25 additions & 1 deletion docs/source/keywords.rst
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,15 @@ CMake Keywords

Recall that to set a keyword in CMake you used the syntax ``-Dkeyword_name=value``.

.. note::
The ``ccmake`` graphical user interface offers a convenient way to explore
available CMake options and their current values. It may be more up to date
with the Kokkos version that you are using.
**A word of warning:** variables with names containing ``IMPL`` are private
implementation detailis. Avoid modifying these unless you have a deep
understanding of their implications and are aware that they might change
without notice.


This page is organized in four sections:

Expand Down Expand Up @@ -206,6 +215,13 @@ Backend-specific options
* Use unified memory (UM) by default for CUDA
* ``OFF``

* * ``Kokkos_ENABLE_IMPL_CUDA_MALLOC_ASYNC``
* Use ``cudaMallocAsync`` (requires CUDA Toolkit version 11.2 or higher). This
optimization may improve performance in applications with multiple CUDA streams per device, but it
is known to be incompatible with MPI distributions built on older versions of UCX
and many Cray MPICH instances. See `known issues <known-issues.html#cuda>`_.
* (see below)

* * ``Kokkos_ENABLE_HIP_MULTIPLE_KERNEL_INSTANTIATIONS``
* Instantiate multiple kernels at compile time - improve performance but increase compile time
* ``OFF``
Expand All @@ -217,10 +233,18 @@ Backend-specific options
* * ``Kokkos_ENABLE_ATOMICS_BYPASS``
* Disable atomics when no host parallel nor device backend is enabled for Serial only builds (since Kokkos 4.3)
* ``OFF``


* * ``Kokkos_ENABLE_IMPL_HPX_ASYNC_DISPATCH``
* Enable asynchronous dispatch for the HPX backend
* ``ON``


``Kokkos_ENABLE_CUDA_LAMBDA`` default value is ``OFF`` until 3.7 and ``ON`` since 4.0

``Kokkos_ENABLE_IMPL_CUDA_MALLOC_ASYNC`` default value is ``OFF`` except in 4.2, 4.3, and 4.4



Development
-----------
These are intended for developers of Kokkos. If you are a user, you probably
Expand Down
Loading