  The frontier of quantum computing (QC) simulation on classical hardware is
quickly reaching the hard scalability limits for computational feasibility.
Nonetheless, there is still a need to simulate large quantum systems
classically, as the Noisy Intermediate Scale Quantum (NISQ) devices are yet to
be considered fault tolerant and performant enough in terms of operations per
second. Each of the two main exact simulation techniques, state vector and
tensor network simulators, boasts specific limitations. The exponential memory
requirement of state vector simulation, when compared to the qubit register
sizes of currently available quantum computers, quickly saturates the capacity
of the top HPC machines currently available. Tensor network contraction
approaches, which encode quantum circuits into tensor networks and then
contract them over an output bit string to obtain its probability amplitude,
still fall short of the inherent complexity of finding an optimal contraction
path, which maps to a max-cut problem on a dense mesh, a notably NP-hard
problem.
  This article aims at investigating the limits of current state-of-the-art
simulation techniques on a test bench made of eight widely used quantum
subroutines, each in 31 different configurations, with special emphasis on
performance. We then correlate the performance measures of the simulators with
the metrics that characterise the benchmark circuits, identifying the main
reasons behind the observed performance trend. From our observations, given the
structure of a quantum circuit and the number of qubits, we highlight how to
select the best simulation strategy, obtaining a speedup of up to an order of
magnitude.
