Back to home page

Project CMSSW displayed by LXR

 
 

    


Warning, /HeterogeneousTest/ROCmWrapper/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/ROCmWrapper`
0011 
0012 The package `HeterogeneousTest/ROCmWrapper` implements a library that defines and exports host-side
0013 wrappers that launch the kernels defined in the `HeterogeneousTest/ROCmKernel` library:
0014 ```c++
0015 namespace cms::rocmtest {
0016 
0017   void wrapper_add_vectors_f(...);
0018   void wrapper_add_vectors_d(...);
0019 
0020 }  // namespace cms::rocmtest
0021 ```
0022 These wrappers can be used from host-only, non-ROCm aware libraries, plugins and applications. They
0023 can be linked with the standard host linker.
0024 
0025 The `plugins` directory implements the `ROCmTestWrapperAdditionModule` `EDAnalyzer` that calls the
0026 wrappers defined in this library. This plugin shows how the wrappers can be used directly from a
0027 host-only, non-ROCm aware plugin.
0028 
0029 The `test` directory implements the `testRocmDeviceAdditionWrapper` test binary that calls the
0030 wrappers defined in this library, and shows how they can be used directly from a host-only, non-ROCm
0031 aware application.
0032 It also contains the `testROCmTestWrapperAdditionModule.py` python configuration to exercise the
0033 `ROCmTestWrapperAdditionModule` module.
0034 
0035 
0036 # Other packages
0037 
0038 For various ways in which this library and plugin can be tested, see also the other
0039 `HeterogeneousTest/ROCm...` packages:
0040   - [`HeterogeneousTest/ROCmDevice/README.md`](../../HeterogeneousTest/ROCmDevice/README.md)
0041   - [`HeterogeneousTest/ROCmKernel/README.md`](../../HeterogeneousTest/ROCmKernel/README.md)
0042   - [`HeterogeneousTest/ROCmOpaque/README.md`](../../HeterogeneousTest/ROCmOpaque/README.md)
0043 
0044 
0045 # Combining plugins
0046 
0047 `HeterogeneousTest/ROCmOpaque/test` contains the `testROCmTestAdditionModules.py` python
0048 configuration that exercise all four plugins in a single application.