  We present qHiPSTER, the Quantum High Performance Software Testing
Environment. qHiPSTER is a distributed high-performance implementation of a
quantum simulator on a classical computer, that can simulate general
single-qubit gates and two-qubit controlled gates. We perform a number of
single- and multi-node optimizations, including vectorization, multi-threading,
cache blocking, as well as overlapping computation with communication. Using
the TACC Stampede supercomputer, we simulate quantum circuits ("quantum
software") of up to 40 qubits. We carry out a detailed performance analysis to
show that our simulator achieves both high performance and high hardware
efficiency, limited only by the sustainable memory and network bandwidth of the
machine.
