  Near-term quantum computing (QC) systems have limited qubit counts, high gate
(instruction) error rates, and typically support a minimal instruction set
having one type of two-qubit gate (2Q). To reduce program instruction counts
and improve application expressivity, vendors have proposed, and shown
proof-of-concept demonstrations of richer instruction sets such as XY gates
(Rigetti) and fSim gates (Google). These instruction sets comprise of families
of 2Q gate types parameterized by continuous qubit rotation angles. However,
having such a large number of gate types is problematic because each gate type
has to be calibrated periodically, across the full system, to obtain high
fidelity implementations. This results in substantial recurring calibration
overheads even on current systems which use only a few gate types. Our work
aims to navigate this tradeoff between application expressivity and calibration
overhead, and identify what instructions vendors should implement to get the
best expressivity with acceptable calibration time. We develop NuOp, a flexible
compilation pass based on numerical optimization, to efficiently decompose
application operations into arbitrary hardware gate types. Using NuOp and four
important quantum applications, we study the instruction set proposals of
Rigetti and Google, with realistic noise simulations and a calibration model.
Our experiments show that implementing 4-8 types of 2Q gates is sufficient to
attain nearly the same expressivity as a full continuous gate family, while
reducing the calibration overhead by two orders of magnitude. With several
vendors proposing rich gate families as means to higher fidelity, our work has
potential to provide valuable instruction set design guidance for near-term QC
systems.
