I have a list of transpiled circuits that I run on Aer.get_backend('aer_simulator').

qobj = assemble([mapped_circuit.bind_parameters(dict(zip(all_qiskit_params, all_param_values[:, pp])))
                         for pp in range(n_reps)], backend=backend, shots=N_shots)
job = backend.run(qobj)
counts = job.result().get_counts()

Depending on the N_shots the runtime is slower; I am okay with it, but by looking more closely I found that what really takes a long time is the call of job.result(), which goes to less than 1 sec for N_shots = 1e4, 8 secs for N_shots = 1e5to over a minute for N_shots = 1e6.

Is this expected or there is a faster way?


1 Answer 1


backend.run submits the job, but job.result will wait for the outcome. So if you run a more expensive calculations, like sampling more shots, you will see more time spent in job.result.


Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge that you have read and understand our privacy policy and code of conduct.

Not the answer you're looking for? Browse other questions tagged or ask your own question.