Back to home page

Project CMSSW displayed by LXR

 
 

    


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.