-
Notifications
You must be signed in to change notification settings - Fork 183
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Build alpaka code in GPU-only mode #9121
Build alpaka code in GPU-only mode #9121
Conversation
Build alpaka device code for the CUDA and ROCm back-ends in "GPU only" mode. In this mode, functions marked as ALPAKA_FN_ACC are marked as __device__ functions, and are compiled only for the corresponding GPU device back-ends. Currently, functions marked as ALPAKA_FN_ACC are marked as __host__ __device__ functions, and may be compiled for both device and host back-ends. The latter leads to linker errors in kernels that use device symbols like threadIdx, blockIdx, etc. that are compiled for the ROCm back-end.
enable gpu |
A new Pull Request was created by @fwyzard for branch IB/CMSSW_14_1_X/master. @smuzaffar, @aandvalenzuela, @cmsbuild, @iarspider can you please review it and eventually sign? Thanks. |
cms-bot internal usage |
test parameters:
|
please test |
-1 Failed Tests: Build The following merge commits were also included on top of IB + this PR after doing git cms-merge-topic:
You can see more details here: BuildI found compilation error when building: Copying tmp/el8_amd64_gcc12/src/HeterogeneousCore/AlpakaInterface/test/alpakaTestKernelROCmAsync/libalpakaTestKernelROCmAsync_rocm.a to productstore area: Copying tmp/el8_amd64_gcc12/src/HeterogeneousCore/AlpakaInterface/test/alpakaTestOneHistoContainerROCmAsync/libalpakaTestOneHistoContainerROCmAsync_rocm.a to productstore area: Copying tmp/el8_amd64_gcc12/src/HeterogeneousCore/AlpakaInterface/test/alpakaTestOneRadixSortROCmAsync/libalpakaTestOneRadixSortROCmAsync_rocm.a to productstore area: cp: cannot stat 'tmp/el8_amd64_gcc12/src/HeterogeneousCore/AlpakaInterface/test/alpakaTestOneRadixSortROCmAsync/libalpakaTestOneRadixSortROCmAsync_rocm.a': No such file or directory >> Deleted: tmp/el8_amd64_gcc12/src/HeterogeneousCore/AlpakaInterface/test/alpakaTestOneRadixSortROCmAsync/libalpakaTestOneRadixSortROCmAsync_rocm.a gmake: *** [config/SCRAM/GMake/Makefile.rules:1838: tmp/el8_amd64_gcc12/src/HeterogeneousCore/AlpakaInterface/test/alpakaTestOneRadixSortROCmAsync/libalpakaTestOneRadixSortROCmAsync_rocm.a] Error 1 Copying tmp/el8_amd64_gcc12/src/HeterogeneousCore/AlpakaInterface/test/alpakaTestOneToManyAssocROCmAsync/libalpakaTestOneToManyAssocROCmAsync_rocm.a to productstore area: cp: cannot stat 'tmp/el8_amd64_gcc12/src/HeterogeneousCore/AlpakaInterface/test/alpakaTestOneToManyAssocROCmAsync/libalpakaTestOneToManyAssocROCmAsync_rocm.a': No such file or directory >> Deleted: tmp/el8_amd64_gcc12/src/HeterogeneousCore/AlpakaInterface/test/alpakaTestOneToManyAssocROCmAsync/libalpakaTestOneToManyAssocROCmAsync_rocm.a gmake: *** [config/SCRAM/GMake/Makefile.rules:1838: tmp/el8_amd64_gcc12/src/HeterogeneousCore/AlpakaInterface/test/alpakaTestOneToManyAssocROCmAsync/libalpakaTestOneToManyAssocROCmAsync_rocm.a] Error 1 Copying tmp/el8_amd64_gcc12/src/HeterogeneousCore/AlpakaInterface/test/alpakaTestPrefixScanROCmAsync/libalpakaTestPrefixScanROCmAsync_rocm.a to productstore area: |
please test with cms-sw/cmssw#44640 |
-1 Failed Tests: UnitTests Unit TestsI found 1 errors in the following unit tests: ---> test runtestPhysicsToolsPatAlgos had ERRORS Comparison SummarySummary:
GPU Comparison SummarySummary:
|
I take it this error is unrelated to the Alpaka changes ? |
please test with cms-sw/cmssw#44640 |
-1 Failed Tests: UnitTests RelVals RelVals-INPUT AddOn Unit TestsI found 29 errors in the following unit tests: ---> test test_ZMuMuMassConstraintParameterFinder had ERRORS ---> test testAlignmentStats had ERRORS ---> test PrimaryVertex had ERRORS and more ... RelVals
Expand to see more relval errors ...RelVals-INPUT
AddOn Tests
Expand to see more addon errors ...GPU Comparison SummarySummary:
|
please test |
-1 Failed Tests: UnitTests The following merge commits were also included on top of IB + this PR after doing git cms-merge-topic:
You can see more details here: Unit TestsI found 1 errors in the following unit tests: ---> test runtestPhysicsToolsPatAlgos had ERRORS Comparison SummarySummary:
GPU Comparison SummarySummary:
|
Independent from this PR ? |
Yes |
+externals |
f4a1a43
into
cms-sw:IB/CMSSW_14_1_X/master
This pull request is fully signed and it will be integrated in one of the next IB/CMSSW_14_1_X/master IBs (but tests are reportedly failing). This pull request will now be reviewed by the release team before it's merged. @antoniovilela, @rappoccio, @sextonkennedy (and backports should be raised in the release meeting by the corresponding L2) |
Build alpaka device code for the CUDA and ROCm back-ends in "GPU only" mode. In this mode, functions marked as ALPAKA_FN_ACC are marked as
__device__
functions, and are compiled only for the corresponding GPU device back-ends.Currently, functions marked as ALPAKA_FN_ACC are marked as
__host__ __device__
functions, and may be compiled for both device and host back-ends. The latter leads to linker errors in kernels that use device symbols likethreadIdx
,blockIdx
, etc. that are compiled for the ROCm back-end.