Use ParMETIS' AdaptiveRepart method instead of PartKWay for repartitioning the mesh.