Description
PR #28537 introduces CUDAService
that needs to be loaded in any configuration that may include CUDA EDModules. The service works also on machines without GPUs, and is used to communicate that fact to elsewhere in CMSSW.
The question is then where exactly the process.load("HeterogeneousCore.CUDAServices.CUDAService_cfi")
should be placed? In the patatrack fork we modified ConfigBuilder
to always include it in the cmsDriver.py
-generated configuration files.
An alternative could be to import CUDAService
into all cfi/cff files that define CUDA EDModules. On the other hand, we don't tend to do that with other services (like DQMStore
or RandomNumberGeneratorService
).
Requiring the framework to always load CUDAService
internally does not sound a good solution either (at this stage at least).
Are there any better ideas?