diff --git a/docs/data/understand/programming_interface/runtimes.drawio b/docs/data/understand/programming_interface/runtimes.drawio index 67b09530f1..11c8cd5762 100644 --- a/docs/data/understand/programming_interface/runtimes.drawio +++ b/docs/data/understand/programming_interface/runtimes.drawio @@ -1,6 +1,6 @@ - + @@ -10,11 +10,11 @@ - + - - + + @@ -23,13 +23,13 @@ - + - + - + @@ -38,13 +38,13 @@ - + - + - + @@ -52,28 +52,28 @@ - + - + - - + + - + - + - - + + - + - + @@ -86,13 +86,13 @@ - + - - + + - + @@ -108,7 +108,7 @@ - + diff --git a/docs/data/understand/programming_interface/runtimes.svg b/docs/data/understand/programming_interface/runtimes.svg index a69f6619dc..b9134eb455 100644 --- a/docs/data/understand/programming_interface/runtimes.svg +++ b/docs/data/understand/programming_interface/runtimes.svg @@ -1,2 +1,2 @@ -Runtimes
HIP Runtime
HIP Runtime
CUDA Driver API
CUDA Driver API
CUDA runtime
CUDA runtime
ROCr runtime
ROCr runtime
PAL
PAL
CLR
CLR
AMD Platform
AMD Platform +Runtimes
HIP Runtime API
HIP Runtime API
CUDA Driver API
CUDA Driver API
CUDA runtime
CUDA runtime
ROCr runtime
ROCr runtime
PAL
PAL
CLR
CLR
AMD Platform
AMD Platform
NVIDIA Platform
NVIDIA Platform
Text is not SVG - cannot display
\ No newline at end of file diff --git a/docs/understand/programming_interface.rst b/docs/understand/programming_interface.rst index ff6e333611..181da92a94 100644 --- a/docs/understand/programming_interface.rst +++ b/docs/understand/programming_interface.rst @@ -70,6 +70,22 @@ For example of compiling from command line, check the :ref:` SAXPY tutorial comp HIP runtime API =============== +For the AMD ROCm platform, HIP provides headers and a runtime library built on +top of HIP-Clang compiler in the repository +:doc:`Common Language Runtime (CLR) `. The HIP runtime +implements HIP streams, events, and memory APIs, and is an object library that +is linked with the application. The source code for all headers and the library +implementation is available on GitHub. + +For the NVIDIA CUDA platform, HIP provides headers that translate from the +HIP runtime API to the CUDA runtime API. The host-side contains mostly inlined +wrappers or even just preprocessor defines, with no additional overhead. +The device-side code is compiled with ``nvcc``, just like normal CUDA kernels, +and therefore one can expect the same performance as if directly coding in CUDA. +The CUDA specific headers can be found in the `hipother repository `_. + +For further details, check `HIP Runtime API Reference `_. + .. _driver_api_understand: Driver API