I am performing a benchmark process using the Azure Quantum IonQ provider. I use Qiskit in the Azure platform, and I was trying to see how to control the transpiling and compiling process. It seems that just set them into the executing process as usually is done on Qiskit IBM is not enough, as we can see:

Compiling and transpiling

For this reason, I want to ask, how can we set the meas_level and optimization_level into the IonQ provider in the Azure platform?

Also, I noticed that 4 days ago IonQ released the following document https://ionq.com/docs/getting-started-with-native-gates, so maybe one alternative is to use native gates to avoid the default compilation and transpilation process from Azure. Thanks for your attention.


1 Answer 1


It's not possible to control the transpilation from an abstract gateset to the IonQ trapped-ion native gateset beyond doing the transpilation locally (or by hand) and submitting via the native gate interface.

So providing these additional kwargs to set backend options are simply going to be ignored by the IonQ backend. It has no idea what they mean or refer to, as they aren't defined in the IonQ API. And it doesn't matter if you use MSFT Azure or Google Cloud or Amazon Braket or even direct access.

The native gate interface is the only way to ensure a certain gate sequence is applied the way it's specified (but is not recommended for most use-cases).


Your Answer

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

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