qbraid.runtime.oqc.OQCDevice
- class OQCDevice(profile, client)[source]
Device class for OQC devices.
Create a
QuantumDevice
object.- Parameters:
profile (TargetProfile) – The device runtime profile.
scheme (Optional[ConversionScheme]) – The conversion graph and options passed to the transpiler at runtime.
options (Optional[RuntimeOptions]) – Custom options to control the runtime behavior. Adds fields or overrides default values for
transpile
,transform
, andvalidate
. Note that while you can modify these values, their associated validators are fixed and cannot be changed.
- __init__(profile, client)[source]
Create a
QuantumDevice
object.- Parameters:
profile (TargetProfile) – The device runtime profile.
scheme (Optional[ConversionScheme]) – The conversion graph and options passed to the transpiler at runtime.
options (Optional[RuntimeOptions]) – Custom options to control the runtime behavior. Adds fields or overrides default values for
transpile
,transform
, andvalidate
. Note that while you can modify these values, their associated validators are fixed and cannot be changed.
Methods
__init__
(profile, client)Create a
QuantumDevice
object.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.
get_next_window
()Returns the start time of the next active window for the device.
metadata
()Returns a dictionary containing selected metadata about the device.
queue_depth
()Returns the number of tasks 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.
status
()Returns the status of the device.
submit
(run_input, **kwargs)Submit one or more jobs to the device.
to_ir
(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.
transform
(run_input)Transforms the input program before submitting it to the device.
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
client
Returns the client for the device.
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.
simulator
The device type, Simulator, Fake_device or QPU.