From my limited understanding Azure Quantum and IBM Qiskit backends do not support OpenQASM 3. However, Amazon Braket does support a subset of Open QASM 3 (proof). What is the best way/backend to test and develop Open QASM 3.0 code? and yes I know I can translate Qiskit(and others) into Open QASM 3 code. I want to run the code.
-
$\begingroup$ Could you rephrase to clarify your question a bit? Are you asking what software or platforms can be useful to assist in testing/developing OpenQASM programs, e.g. what packages/extensions/plugins/editors? Or are you more asking about which backends/vendors except OpenQASM programs as run input, and/or how to do that? Or something else? $\endgroup$– ryanhill1Jul 9, 2022 at 15:37
-
$\begingroup$ I am apologize for the vague question. I am referring to how the backend/vendor that I have access to don't accept Open QASM version 3.0 as run inputs. Therefore I was wondering what simulators can accept QASM 3.0 and how to approach that. @ryanhill1 $\endgroup$– EXA_QJul 10, 2022 at 17:23
1 Answer
If you just want to check whether a device supports OpenQASM, run
dev = AwsDevice(DEVICE_ARN)
print("braket.ir.openqasm.program" in dev.properties.action)
If the output is True
, then you can run OpenQASM programs, subject to the device's supported operations.
As far as "best," there's no one answer; if you want to run on actual quantum hardware, you'll be using the digital QPU devices (as of writing, from IonQ, Rigetti and OQC). If you want to test your programs out, then your best bet is one of the simulator devices, depending on your use case.
-
$\begingroup$ Thank you for your response. Do you have suggestions or knowledge at which simulator device accept QASM 3? $\endgroup$– EXA_QJul 10, 2022 at 17:24
-
$\begingroup$ All three of the managed simulators (SV1, DM1 and TN1) support OpenQASM! If you want to play around with arbitrary noiseless circuits with <= 34 qubits, use SV1; if your circuits are noisy (and <= 17 qubits), use DM1; if they have more qubits and have suitable structure, use TN1. $\endgroup$ Jul 10, 2022 at 18:18