pygsti.protocols.protocol.SimpleRunner

pygsti.protocols.protocol.SimpleRunner#

class SimpleRunner(protocol, protocol_can_handle_multipass_data=False, edesign_type='all')#

Bases: ProtocolRunner

Runs a single protocol on every data node that has no sub-nodes (possibly separately for each pass).

Parameters:
  • protocol (Protocol) – The protocol to run.

  • protocol_can_handle_multipass_data (bool, optional) – Whether protocol is able to process multi-pass data, or if MultiPassProtocol objects should be created implicitly.

  • edesign_type (type or 'all') – Only run protocol on leaves with this type. (If ‘all’, then no filtering is performed.)

Create a new SimpleRunner object, which runs a single protocol on every ‘leaf’ of the data-tree.

Parameters:
  • protocol (Protocol) – The protocol to run.

  • protocol_can_handle_multipass_data (bool, optional) – Whether protocol is able to process multi-pass data, or if MultiPassProtocol objects should be created implicitly.

  • edesign_type (type or 'all') – Only run protocol on leaves with this type. (If ‘all’, then no filtering is performed.)

Return type:

SimpleRunner

Methods

__init__(protocol[, ...])

Create a new SimpleRunner object, which runs a single protocol on every 'leaf' of the data-tree.

run(data[, memlimit, comm])

Run all the protocols specified by this protocol-runner on data.

run(data, memlimit=None, comm=None)#

Run all the protocols specified by this protocol-runner on data.

Parameters:
  • data (ProtocolData) – The input data.

  • memlimit (int, optional) – A rough per-processor memory limit in bytes.

  • comm (mpi4py.MPI.Comm, optional) – When not None, an MPI communicator used to run this protocol-runner in parallel.

Return type:

ProtocolResultsDir