qubic.job_rpc_server
Functions for running an RPC job server on a workstation that is on the same LAN as the ZCU216. Serves as an intermediary between the client (user) machine and the QubiC board. See the Getting Started Guide for details on how to configure.
SoCClient
Connect to the SoC via RPC client to run single circuits; expose interface for batched circuit running and single-circuit ADC trace acquisition
Source code in qubic/job_rpc_server.py
7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 |
|
run_circuit_batch(raw_asm_list, n_total_shots, reads_per_shot=1, timeout_per_shot=8, reload_cmd=True, reload_freq=True, reload_env=True, zero_between_reload=True)
Runs a batch of circuits given by a list of raw_asm "binaries". Each circuit is run n_total_shots times. reads_per_shot, n_total_shots, and delay_per_shot are passed directly into run_circuit, and must be the same for all circuits in the batch. The parameters reload_cmd, reload_freq, reload_env, and zero_between_reload control which of these fields is rewritten circuit-to-circuit (everything is rewritten initially). Leave these all at True (default) for maximum safety, to ensure that QubiC is in a clean state before each run. Depending on the circuits, some of these can be turned off to save time.
TODO: consider throwing some version of all the args here into a BatchedCircuitRun or somesuch object
Returns:
Type | Description |
---|---|
dict:
|
Complex IQ shots for each accbuf in chanlist; each array has shape (len(raw_asm_list), n_total_shots, reads_per_shot) |
Source code in qubic/job_rpc_server.py
17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 |
|
run_job_server(host_ip, host_port, soc_ip, soc_port)
Run the job server.
Source code in qubic/job_rpc_server.py
85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 |
|