cunqa.mappers.run_distributed

cunqa.mappers.run_distributed(circuits: list[dict | CunqaCircuit], qpus: list[QPU], **run_args: Any)

Function to send circuits to serveral virtual QPUs allowing classical or quantum communications among them. Each circuit will be sent to each QPU in order, therefore both lists must be of the same size.

Because the function is destined for executions that require communications, only CunqaCircuit or instruction sets are accepted. The arguments provided will be the same for all QJob objects created.

Warning

If transpile, initial_layout or opt_level are passed as run_args they will be ignored since for the current version transpilation is not supported when communications are present.

Parameters:
  • circuits (list[dict] | list[CunqaCircuit]) – circuits to be run.

  • qpus (list[QPU]) – QPU objects associated to the virtual QPUs in which the circuits want to be run.

  • run_args – any other run arguments and parameters.

Returns:

List of QJob objects.