1
$\begingroup$

I am new to dynamical decoupling and is trying to study this from qiskit: https://docs.quantum.ibm.com/api/qiskit/qiskit.transpiler.passes.PadDynamicalDecoupling . There, they are specifying the duration for each gate with an integer number. How can I relate this integer number to the real device gate duration (X, RZ, CX, etc. ) in the unit of nanosecond?

$\endgroup$

1 Answer 1

2
$\begingroup$

The integers in the InstructionDurations() are the multipliers of the real-system timestep dt.

So for example, consider the command InstructionDurations([("h", 0, 50)]). What this means is that you are specifying the gate duration for h gate (the first argument) which is acting on 0 qubit (the second argument) for 50*dt duration (third argument). The duration of gate which is 50*dt means nothing (because dt is not defined) unless you specify on which backend you want to run the dynamical decoupling.

Here's how qiskit defines dt: It is the timestep in terms of the backend's cycle time (1 / sample rate). The value of dt is predefined and can be different for different backends and real system but the unit of dt is in nanoseconds. So, you must know the value of dt to determine a program's real-time dynamics.

To determine the value of dt for a backend (fake or real), you can do print(backend.dt) and this will give you the value of dt in seconds.

Hope this helps!

$\endgroup$
1
  • $\begingroup$ oh I see! Thanks so much! $\endgroup$ Commented May 1 at 1:00

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