StationControlExecutor#
Module: iqm.station_control.client.station_control_executor
- class StationControlExecutor(client)#
Bases:
ExecutorInterfaceConcrete executor that communicates with a remote Station Control to manage hardware execution and results.
Methods
Cancel a job that has been submitted for execution.
Delete a job that has been submitted for execution.
Reconstruct an instance from a dictionary payload.
Get the measurement counts of a circuit batch execution job.
Get the measurement results of a circuit batch execution job.
Get the results of an N-dimensional sweep job.
Get control channel properties, including hardware limitations and supported instructions.
Get the chip design record for the QPU.
Get the QPU chip label.
Get the default experiment configuration for the backend.
Get status information about an existing job.
Get the job payload, i.e. the definition used to create the job.
Get software version set ID from the database, or create one if it doesn't exist.
Default settings tree of the quantum computer.
Get the simplified QPU topology.
Serialize the object instance into a dictionary payload.
Submit a job definition for execution.
- Parameters:
client (StationControlClient)
- get_experiment_configuration()#
Get the default experiment configuration for the backend.
- get_or_create_software_version_set(software_version_set)#
Get software version set ID from the database, or create one if it doesn’t exist.
- get_channel_properties()#
Get control channel properties, including hardware limitations and supported instructions.
- Return type:
- get_static_quantum_architecture()#
Get the simplified QPU topology.
Use
get_chip_design_record()for more detailed QPU topology information.- Return type:
- get_settings()#
Default settings tree of the quantum computer.
Contains the available settings of the control instruments, and their default values.
- Return type:
- submit_job(job_definition: RunDefinition, *, use_timeslot: bool = False) RunJobTracker#
- submit_job(job_definition: PostJobsRequest, *, use_timeslot: bool = False) CircuitJobTracker
Submit a job definition for execution.
- Parameters:
job_definition – The content of the job to be created (e.g. and experiment run, or a batch of quantum circuits).
use_timeslot – Iff
True, submit the job to the priority timeslot queue; otherwise, submit it to the shared FIFO queue.
- Returns:
A
JobTrackerinstance wrapping the submitted job, providing methods to track progress and retrieve results.
- get_job(job_id)#
Get status information about an existing job.
Allows for managing jobs submitted in previous sessions or by other clients.
- get_job_payload(job_id, job_type)#
Get the job payload, i.e. the definition used to create the job.
- Parameters:
- Returns:
Job payload.
- Return type:
- get_artifact_sweep_results(job_id)#
Get the results of an N-dimensional sweep job.
Raises an error if the results are not available.
- get_artifact_measurements(job_id)#
Get the measurement results of a circuit batch execution job.
Raises an error if the results are not available.
- get_artifact_measurement_counts(job_id)#
Get the measurement counts of a circuit batch execution job.
Raises an error if the results are not available.
- Parameters:
- Returns:
For each circuit in the batch, the measurement counts.
- Return type:
- cancel_job(job_id)#
Cancel a job that has been submitted for execution.
A canceled job will remain in the execution record, but it will not proceed further. If the job is currently being executed, it is interrupted. If the job has already reached a terminal state (completed or failed), it will remain in that state.
- delete_job(job_id)#
Delete a job that has been submitted for execution.
Works like
cancel_job(), but also removes the job from the IQM Server database.Warning
There is no way to recover a deleted job.
- classmethod deserialize(data)#
Reconstruct an instance from a dictionary payload.
- Parameters:
- Return type:
Inheritance
