Warning, /HeterogeneousTest/ROCmKernel/README.md is written in an unsupported language. File is not indexed.
0001 # Introduction
0002
0003 The packages `HeterogeneousTest/ROCmDevice`, `HeterogeneousTest/ROCmKernel`,
0004 `HeterogeneousTest/ROCmWrapper` and `HeterogeneousTest/ROCmOpaque` implement a set of libraries,
0005 plugins and tests to exercise the build rules for ROCm.
0006 In particular, these tests show what is supported and what are the limitations implementing
0007 ROCm-based libraries, and using them from multiple plugins.
0008
0009
0010 # `HeterogeneousTest/ROCmKernel`
0011
0012 The package `HeterogeneousTest/ROCmKernel` implements a library that defines and exports ROCm
0013 kernels that call the device functions defined in the `HeterogeneousTest/ROCmDevice` library:
0014 ```c++
0015 namespace cms::rocmtest {
0016
0017 __global__ void kernel_add_vectors_f(...);
0018 __global__ void kernel_add_vectors_d(...);
0019
0020 } // namespace cms::rocmtest
0021 ```
0022
0023 The `plugins` directory implements the `ROCmTestKernelAdditionModule` `EDAnalyzer` that launches the
0024 ROCm kernels defined in this library. As a byproduct this plugin also shows how to split an
0025 `EDAnalyzer` or other framework plugin into a host-only part (in a `.cc` file) and a device part (in
0026 a `.hip.cc` file).
0027
0028 The `test` directory implements the `testRocmKernelAddition` test binary that launches the ROCm
0029 kernel defined in this library.
0030 It also contains the `testROCmTestKernelAdditionModule.py` python configuration to exercise the
0031 `ROCmTestKernelAdditionModule` module.
0032
0033
0034 # Other packages
0035
0036 For various ways in which this library and plugin can be tested, see also the other
0037 `HeterogeneousTest/ROCm...` packages:
0038 - [`HeterogeneousTest/ROCmDevice/README.md`](../../HeterogeneousTest/ROCmDevice/README.md)
0039 - [`HeterogeneousTest/ROCmWrapper/README.md`](../../HeterogeneousTest/ROCmWrapper/README.md)
0040 - [`HeterogeneousTest/ROCmOpaque/README.md`](../../HeterogeneousTest/ROCmOpaque/README.md)
0041
0042
0043 # Combining plugins
0044
0045 `HeterogeneousTest/ROCmOpaque/test` contains the `testROCmTestAdditionModules.py` python
0046 configuration that exercise all four plugins in a single application.