pyquil.api.QPUCompiler

class pyquil.api.QPUCompiler(quilc_endpoint, qpu_compiler_endpoint, device, timeout=10, name=None)[source]

Client to communicate with the Compiler Server.

Parameters:
  • quilc_endpoint (str) – TCP or IPC endpoint of the Quil Compiler (quilc)
  • qpu_compiler_endpoint (Optional[str]) – TCP or IPC endpoint of the QPU Compiler
  • device (AbstractDevice) – PyQuil Device object to use as compilation target
  • timeout (int) – Number of seconds to wait for a response from the client.
  • name (Optional[str]) – Name of the lattice being targeted
__init__(quilc_endpoint, qpu_compiler_endpoint, device, timeout=10, name=None)[source]

Client to communicate with the Compiler Server.

Parameters:
  • quilc_endpoint (str) – TCP or IPC endpoint of the Quil Compiler (quilc)
  • qpu_compiler_endpoint (Optional[str]) – TCP or IPC endpoint of the QPU Compiler
  • device (AbstractDevice) – PyQuil Device object to use as compilation target
  • timeout (int) – Number of seconds to wait for a response from the client.
  • name (Optional[str]) – Name of the lattice being targeted
Return type:

None

Methods

__init__(quilc_endpoint, …[, timeout, name]) Client to communicate with the Compiler Server.
connect()
get_version_info() Return version information for this compiler and its dependencies.
native_quil_to_executable(nq_program) Compile a native quil program to a binary executable.
quil_to_native_quil(program, *[, protoquil]) Compile an arbitrary quil program according to the ISA of target_device.
reset() Reset the state of the QPUCompiler Client connections.