Add a test for ROCm libraries and build rules#40637
Conversation
|
-code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-40637/33932 ERROR: Build errors found during clang-tidy run. |
5005752 to
90dcb0d
Compare
90dcb0d to
9bf3433
Compare
|
-code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-40637/33941 ERROR: Build errors found during clang-tidy run. |
9bf3433 to
a6f10dc
Compare
|
-code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-40637/33954 ERROR: Build errors found during clang-tidy run. |
| ) | ||
|
|
||
| process.path = cms.Path( | ||
| process.rocmTestDeviceAdditionModule + |
There was a problem hiding this comment.
@makortel note that this one works with ROCm, while it does not work with CUDA.
a6f10dc to
85e936f
Compare
b242e04 to
879f836
Compare
|
please test |
|
+heterogeneous |
|
unhold |
|
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-40637/33992
|
|
Pull request #40637 was updated. can you please check and sign again. |
|
-1 Failed Tests: RelVals-INPUT RelVals-INPUTThe relvals timed out after 4 hours. Comparison SummarySummary:
|
|
+1
|
|
merge |
PR description:
This PR adds new packages to test the implementation and usage of ROCm libraries for device code in CMSSW plugins and executables.
The package
HeterogeneousTest/ROCmDeviceimplements a library that defines and exports ROCm device-only functions, and a plugin and test that use them.The package
HeterogeneousTest/ROCmKernelimplements a library that imports device functions fromHeterogeneousTest/ROCmDeviceto define and export ROCm kernels, and a plugin and test that use them.The package
HeterogeneousTest/ROCmWrapperimplements a library that imports kernels fromHeterogeneousCTest/ROCmKernelto define and export host-only wrappers around them, usable by non-ROCm libraries, plugins and applications, and implements a plugin and test that use them.The package
HeterogeneousTest/ROCmOpaqueimplements a library that use the wrappers fromHeterogeneousTest/ROCmWrapperto define and export host-only functions around the whole ROCm section, usable by libraries, plugins and applications that are not ROCm-aware, and implements a plugin and test that use them.The PR builds on top of and includes:
PR validation:
The new unit tests compile and pass.