-
Notifications
You must be signed in to change notification settings - Fork 4.3k
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
Tools for CUDA modules #28537
Tools for CUDA modules #28537
Conversation
The code-checks are being triggered in jenkins. |
+code-checks Logs: https://cmssdt.cern.ch/SDT/code-checks/cms-sw-PR-28537/13010
|
enable GPU |
A new Pull Request was created by @makortel (Matti Kortelainen) for master. It involves the following packages: CUDADataFormats/Common The following packages do not have a category, yet: CUDADataFormats/Common @cmsbuild, @smuzaffar, @Dr15Jones can you please review it and eventually sign? Thanks. cms-bot commands are listed here |
@cmsbuild, please test |
The tests are being triggered in jenkins. |
@smuzaffar With "enable GPU", will the tests be run only on GPU-equipped machines? Is it possible to run the tests also in machines without a GPU? |
@Dr15Jones @fwyzard Please review. |
@makortel , it will run on both (GPU and non-GPU) |
@smuzaffar Thanks. And how does the system distinguish which tests to run on GPU machines and which on non-GPU machines? (pardon my ignorance) |
-1 Tested at: 3854fbb You can see the results of the tests here: I found follow errors while testing this PR Failed tests: UnitTests RelVals
I found errors in the following unit tests: ---> test testHeterogeneousCoreCUDACoreStreamEvent had ERRORS
|
Comparison not run due to runTheMatrix errors (RelVals and Igprof tests were also skipped) |
based on the validation at cms-patatrack#429 . |
+1 |
Comparison not run due to Build errors/Fireworks only changes/No short matrix requested (RelVals and Igprof tests were also skipped) |
Gpu tests were also run, can you check if it actually run on gpu #28537 (comment) |
The matrix workflows did run, but since they are a clone of the cpu ones for the moment, I cannot check much. The unit test did run on a machine with a GPU:
|
+core |
This pull request is fully signed and it will be integrated in one of the next master IBs (tests are also fine). This pull request will now be reviewed by the release team before it's merged. @davidlange6, @silviodonato, @fabiocos (and backports should be raised in the release meeting by the corresponding L2) |
+1 |
Hi @makortel and all, it seems this PR is breaking the compatibility with ARM in several unit tests I think we can discuss about this issue tomorrow during the ORP or Core Software meeting. |
The problem might be that on ARM we have an older version of CUDA that does not support GCC 8. |
No, we do not have GCC7 ARM builds |
To my knowledge we are currently running a specific GPU subset of tests on a GPU machine for amd64 (not sure about aarch64 where we have CUDA, on ppc64le not until we get CUDA runtime included). I hope @smuzaffar @fwyzard can correct/elaborate.
Right, this is something to think about. |
I agree this is probably the root cause
and the rest (TBB and ROOT header include failures) are somehow knock-on effects. Assuming we're going to stick with GCC 8 on ARM, how feasible would be updating the CUDA? Or could we consider dropping |
@silviodonato , yes the core issue is that we have an old version of CUDA for ARM which does not support gcc8. This is known issue. I am working on improving the test suit so that we can run PR tests for all possible architectures. As we do not have GPU resources for ARM and Power, so for now GPU tests can only be run on AMD64. |
PR description:
This PR imports the tools for CUDA modules (or "CUDA framework" or "heterogeneous framework") from Patatrack. There is documentation in
HeterogeneousCore/CUDACore/README.md
and examples inHeterogeneousCore/CUDATest
(that get run along unit tests). Here are also two talks with higher-level descriptionPR validation:
Unit tests run on both GPU and non-GPU machines.