ReCirq icon indicating copy to clipboard operation
ReCirq copied to clipboard

Move quantum volume into ReCirq

Open mpharrigan opened this issue 4 years ago • 2 comments

Quantum volume never really fit into Cirq, with the library code getting shuffled around (eventually landing in contrib) and the driver scripts landing in examples/advanced. It is the only advanced example. This also limits our ability to extend qvol and try various improvements or different metrics. It would be a good study to include in ReCirq

  • move things over
  • use data collection idioms for driver script
  • document qvol with a notebook
  • profit

mpharrigan avatar Apr 13 '20 22:04 mpharrigan

Started looking at this today. Couple of quick questions:

  • Naming of the folder: qvol? qv? quantum_volume?
  • Should these tasks have simple tests to ensure that they run? I didn't see any in https://github.com/quantumlib/ReCirq/tree/master/recirq/qaoa/experiments so I'm assuming not.
  • I'm planning on creating an experiments sub-folder like qaoa even though the readout_scan folder doesn't do this and I think I'll only have one experiment for now, WDYT?
  • I've got some code that queries the Quantum Engine API for the device statistics and attempts to find the best qubits to run the algorithm on based on connectivity and error rates. Does that belong in this new repository, maybe under the qvol (or whatever) directory? It's... sort of application specific, although I could imagine generalizing it and putting it into Cirq proper as well. EDIT: I'm now thinking this could go into a precomputation task.

Thanks!

KevinVillela avatar Apr 15 '20 03:04 KevinVillela

  1. Actually, it might make sense to put this in a folder called benchmarks/ in anticipation of future expansion

  2. There should be an end-to-end notebook demonstrating a complete experiment which serves as an integration tests. The "library functionality" should have unit tests, as normal

  3. Yes please

  4. It might make sense to have it as application-specific code now but be cognizant of how it can be generalized to help everyone

mpharrigan avatar Apr 21 '20 22:04 mpharrigan