Skip to content

Commit 1b65c8a

Browse files
committed
Simplify Qiskit ParallelExperiment: remove src/ dependency, fix measurement and noise bugs
- Replace custom partitioning/mapping (parallel_experiment/src/) with simple sequential qubit allocation — reduces ibm_fez execution from 200s to 17s - Fix measure_all() bug: preserve original circuit measurements instead of measuring all qubits (was adding extra bits, breaking fidelity calculation) - Fix simulator noise: wrap qasm_simulator in AerSimulator with noise model so ParallelExperiment's internal SamplerV2 picks up QED-C noise settings - Fix cregs[0].size → num_qubits in 4 files under parallel_experiment/src/ - Add traceback printing on parallel experiment failure - Old custom partitioning preserved as _run_qiskit_parallel_experiment_with_custom_partitioning
1 parent 0e3db60 commit 1b65c8a

7 files changed

Lines changed: 218 additions & 129 deletions

File tree

qedclib/qiskit/execute.py

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1404,6 +1404,11 @@ def process_circuit_results(circuits_info, results, job_id=None, elapsed_time=No
14041404
# Call the benchmark's result handler (computes fidelity etc.)
14051405
# Skip if counts are empty (cancelled/failed job) to avoid division-by-zero in handlers
14061406
if result_handler and counts:
1407+
# DEBUG: show counts reaching result_handler
1408+
sample = dict(list(counts.items())[:3])
1409+
print(f"... [debug pcr] circuit {ci['group']}/{ci['circuit']}: "
1410+
f"counts_type={type(counts).__name__}, "
1411+
f"sample={sample}")
14071412
try:
14081413
result_handler(ci["qc"], circuit_result,
14091414
ci["group"], ci["circuit"], ci["shots"])

0 commit comments

Comments
 (0)