  Elliptic partial differential equations (PDEs) frequently arise in continuum
descriptions of physical processes relevant to science and engineering.
Multilevel preconditioners represent a family of scalable techniques for
solving discrete PDEs of this type and thus are the method of choice for
high-resolution simulations. The scalability and time-to-solution of massively
parallel multilevel preconditioners can be adversely effected by using a
coarse-level solver with sub-optimal algorithmic complexity. To maintain
scalability, agglomeration techniques applied to the coarse level have been
shown to be necessary.
  In this work, we present a new software component introduced within the
Portable Extensible Toolkit for Scientific computation (PETSc) which permits
agglomeration. We provide an overview of the design and implementation of this
functionality, together with several use cases highlighting the benefits of
agglomeration. Lastly, we demonstrate via numerical experiments employing
geometric multigrid with structured meshes, the flexibility and performance
gains possible using our MPI-rank agglomeration implementation.
