qbraid.runtime.pasqal.PasqalDevice

class PasqalDevice(profile, sdk, **kwargs)[source]

Pasqal Cloud Services device interface.

Wraps a Pasqal device identifier (QPU or emulator) and submits serialized Pulser sequences as Pasqal Cloud batches.

Initialize the Pasqal device.

Parameters:
  • profile (TargetProfile) – The TargetProfile describing this device.

  • sdk (SDK) – Authenticated pasqal_cloud.SDK instance used to talk to the Pasqal Cloud Services API.

  • **kwargs – Forwarded to QuantumDevice.

__init__(profile, sdk, **kwargs)[source]

Initialize the Pasqal device.

Parameters:
  • profile (TargetProfile) – The TargetProfile describing this device.

  • sdk (SDK) – Authenticated pasqal_cloud.SDK instance used to talk to the Pasqal Cloud Services API.

  • **kwargs – Forwarded to QuantumDevice.

Methods

__init__(profile, sdk, **kwargs)

Initialize the Pasqal device.

apply_runtime_profile(run_input)

Process quantum program before passing to device run method.

avg_queue_time()

Return the average time (in seconds) a job spends in the queue for the device.

metadata()

Returns a dictionary containing selected metadata about the device.

prepare(run_input)

Convert the quantum program to an intermediate representation (IR) compatible with the submission format required for the target device and its provider API.

queue_depth()

Return the number of jobs in the queue for the device.

run(run_input, *args, **kwargs)

Run a quantum job or a list of quantum jobs on this quantum device.

set_options(**fields)

Update the runtime options for the QuantumDevice.

set_target_program_type(alias)

Set the program type to target during runtime transpile step.

status()

Return the current status of the Pasqal device.

submit(run_input[, shots, wait])

Submit a Pulser sequence (or batch of them) to the Pasqal device.

transform(run_input)

Override this method with any runtime transformations to apply to the run input, e.g. circuit optimizations, device-specific gate set conversions, etc.

transpile(run_input, run_input_spec)

Convert circuit to package compatible with target device and pass through any provider transpile methods to match topology of device and/or optimize as applicable.

update_scheme(**kwargs)

Update the conversion scheme with new values.

validate(run_input_batch[, ...])

Verifies run input compatibility with target device.

Attributes

id

Return the device ID.

num_qubits

The number of qubits supported by the device.

profile

Return the runtime profile.

scheme

Return the conversion scheme.

sdk

Return the underlying pasqal_cloud.SDK instance.

simulator

The device type, Simulator, Fake_device or QPU.