  Quadratically constrained quadratic programs (QCQPs) are a highly expressive
class of nonconvex optimization problems. While QCQPs are NP-hard in general,
they admit a natural convex relaxation via the standard (Shor) semidefinite
program (SDP) relaxation. Towards understanding when this relaxation is exact,
we study general QCQPs and their (projected) SDP relaxations. We present
sufficient (and in some cases, also necessary) conditions for objective value
exactness (the condition that the objective values of the QCQP and its SDP
relaxation coincide) and convex hull exactness (the condition that the convex
hull of the QCQP epigraph coincides with the epigraph of its SDP relaxation).
Our conditions for exactness are based on geometric properties of $\Gamma$, the
cone of convex Lagrange multipliers, and its relatives $\Gamma_P$ and
$\Gamma^\circ$. These tools form the basis of our main message: questions of
exactness can be treated systematically whenever $\Gamma$, $\Gamma_P$, or
$\Gamma^\circ$ is well-understood. As further evidence of this message, we
apply our tools to address questions of exactness for a prototypical QCQP
involving a binary on-off constraint, quadratic matrix programs, the QCQP
formulation of the partition problem, and random and semi-random QCQPs.
