/
githubmirror
/
cmssw
Обзор
Документация
Войти
/
githubmirror
/
cmssw
Код
Запросы
0
Пакеты
0
Релизы
0
Аналитика
Безопасность
master
HeterogeneousCore/AlpakaCore/test/testProcessAcceleratorAlpaka.py
52 строки
2 KB
Andrea Bocci
Include the ProcessAcceleratorAlpaka configuration in the python dumps
30 апр 2026, 18:43
Не верифицирован
30 апр 2026, 18:43
367d7da
Код
Авторство
О чём код?
import os import sys # choose a different alpaka backend depending on the SCRAM test being run try: backend = os.environ['SCRAM_ALPAKA_BACKEND'] except: backend = 'SerialSync' # map the alpaka backends to the process accelerators accelerators = { 'SerialSync': 'cpu', 'CudaAsync': 'gpu-nvidia', 'ROCmAsync': 'gpu-amd' } # map the alpaka backends to the names used by the ProcessAcceleratorAlpaka backends = { 'SerialSync': 'serial_sync', 'CudaAsync': 'cuda_async', 'ROCmAsync': 'rocm_async' } print(f"Testing the alpaka backend {backend} using the process accelerator {accelerators[backend]}", file=sys.stderr) import FWCore.ParameterSet.Config as cms from HeterogeneousCore.AlpakaCore.functions import * process = cms.Process('Test') process.maxEvents.input = 10 process.source = cms.Source('EmptySource') process.load('Configuration.StandardSequences.Accelerators_cff') process.load('HeterogeneousCore.AlpakaCore.ProcessAcceleratorAlpaka_cfi') process.ProcessAcceleratorAlpaka.setBackend(backends[backend]) process.alpakaBackendProducer = cms.EDProducer('AlpakaBackendProducer@alpaka') process.alpakaBackendFilter = cms.EDFilter('AlpakaBackendFilter', producer = cms.InputTag('alpakaBackendProducer', 'backend'), backends = cms.vstring(backend) ) process.mustRun = cms.EDProducer("edmtest::MustRunIntProducer", ivalue=cms.int32(1)) process.mustNotRun = cms.EDProducer("FailingProducer") process.SelectedBackend = cms.Path(process.alpakaBackendProducer + process.alpakaBackendFilter + process.mustRun) process.AnyOtherBackend = cms.Path(process.alpakaBackendProducer + ~process.alpakaBackendFilter + process.mustNotRun) process.options.wantSummary = True