Pacific Northwest National Laboratory (PNNL), Washington State University, United States of America
As quantum computers evolve, simulations of quantum programs on classical computers will be essential in validating quantum algorithms, understanding the effect of system noise and designing applications for future quantum computers. In this paper, we first propose a new multi-GPU programming methodology called MG-BSP which constructs a virtual BSP machine on top of modern multi-GPU platforms, and apply this methodology to build a multi-GPU density matrix quantum simulator. We propose a new formulation that can significantly reduce communication overhead, and show that the formula transformation can conserve the semantics despite noise being introduced. We build the tool-chain for the simulator to run open standard quantum assembly code, execute synthesized quantum circuit and perform ultra-deep and large-scale simulation. We evaluated our design on several state-of-the-art multi-GPU platforms including NVIDIA's DGX-1, DGX-2 and ORNL's Summit supercomputer. Our simulator is more than 10x faster than a corresponding state-vector quantum simulator on various platforms.