Skip to content

An alpaka module with an explicit cpu backend fails to run in a job with a list of accelerators that does not include the cpu #43780

Closed
@fwyzard

Description

@fwyzard

An @alpaka module with an explicit CPU backend such as

process.testProducerSerial = cms.EDProducer('TestAlpakaProducer@alpaka',
    size = cms.int32(99),
    alpaka = cms.untracked.PSet(
        backend = cms.untracked.string("serial_sync")
    )
)

will fail to run if the process is configured to exclude the CPU from the accelerators:

process.options.accelerators = [ 'gpu-nvidia' ]

with the message:

An exception of category 'UnavailableAccelerator' occurred while
   [0] Processing the python configuration file named writer.py
Exception Message:
Module testProducerSerial has the Alpaka backend set explicitly, but its accelerator is not available for the job because of the combination of the job configuration and accelerator availability on the machine. The following Alpaka backends are available for the job cuda_async.

Currently, the workaround is to use the alpaka_serial_sync:: variant explicitly:

process.testProducerSerial = cms.EDProducer('alpaka_serial_sync::TestAlpakaProducer',
    size = cms.int32(99)
)

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions