Parallel Interior-Point Solver for Block-Structured Nonlinear Programs on SIMD/GPU Architectures
Résumé
We investigate how to port the standard interior-point method to new exascale architectures for block-structured nonlinear programs with state equations. Computationally, we decompose the interior-point algorithm into two successive operations: the evaluation of the derivatives and the solution of the associated Karush-Kuhn-Tucker (KKT) linear system. Our method accelerates both operations using two levels of parallelism. First, we distribute the computations on multiple processes using coarse parallelism. Second, each process uses a SIMD/GPU accelerator locally to accelerate the operations using fine-grained parallelism. The KKT system is reduced by eliminating the inequalities and the state variables from the corresponding equations, to a dense matrix encoding the sensitivities of the problem's degrees of freedom, drastically minimizing the memory exchange. We demonstrate the method's capability on the supercomputer Polaris, a testbed for the future exascale Aurora system. Each node is equipped with four GPUs, a setup amenable to our two-level approach. Our experiments on the stochastic optimal power flow problem show that the method can achieve a 50x speed-up compared to the state-of-the-art method.
Domaines
Optimisation et contrôle [math.OC]
Fichier principal
main.pdf (532.72 Ko)
Télécharger le fichier
figures/callbacks_timings.pdf (15.86 Ko)
Télécharger le fichier
figures/gpu.png (11.49 Ko)
Télécharger le fichier
figures/kkt_timings.pdf (21.41 Ko)
Télécharger le fichier
figures/optim_8scens.pdf (18.92 Ko)
Télécharger le fichier
figures/optim_large_scale.pdf (16.01 Ko)
Télécharger le fichier
figures/optim_timings.pdf (16.3 Ko)
Télécharger le fichier
figures/reduction.png (192 Ko)
Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)