  We present a language extension for parallel quantum programming to (1)
remove ambiguities concerning parallelism in current quantum programming
languages and (2) facilitate space-time tradeoff investigations in quantum
computing. While the focus of similar libraries in the domain of classical
computing (OpenMP, OpenACC, etc.) is to divide a computation into multiple
threads, the main goal of QParallel is to keep the compiler and the runtime
system from introducing parallelism-inhibiting dependencies, e.g., through
reuse of qubits in automatic qubit management. We describe the syntax and
semantics of the proposed language extension, implement a prototype based on
Q#, and present several examples and use cases to illustrate its performance
benefits. Moreover, we introduce a tool that guides programmers in the
placement of parallel regions by identifying the subroutines that profit most
from parallelization, which is especially useful if the programmer's knowledge
of the source code is limited. Support for QParallel can be added to any
multithreading library and language extension, including OpenMP and OpenACC.
