SC2022Top-tier venue
Using Answer Set Programming for HPC Dependency Solving
Todd Gamblin, Massimiliano Culpo, Gregory Becker, Sergei Shudler
Abstract
Modern scientific software stacks have become extremely complex, using many programming models and libraries to exploit a growing variety of GPUs and accelerators. Package managers can mitigate this complexity using dependency solvers, but they are reaching their limits. Finding compatible dependency versions is NP-complete, and modeling the semantics of package compatibility modulo build-time options, GPU runtimes, flags, and other parameters is extremely difficult. Within this enormous configuration space, defining a "good" configuration is daunting.
We tackle this problem using Answer Set Programming (ASP), a declarative model for combinatorial search problems. We show, using the Spack package manager, that ASP programs can concisely express the compatibility rules of HPC software stacks and provide strong quality-of-solution guarantees. Using ASP, we can mix new builds with preinstalled binaries, and solver performance is acceptable even when considering tens of thousands of packages.
Ask about this paper
Your agent reads all of it.
Lune indexed this paper to the last equation, along with the top-tier papers that cite it. Ask a question and the answer quotes them.
Cited by top-tier papers3
- XaaS Containers: Performance-Portable Representation With Source and IR ContainersMarcin Copik, Eiman Alnuaimi, Alok Kamatar, Valérie Hayot-Sasson et al.SC 2025 · 2 citations
- Bridging the Gap Between Binary and Source Based Package Management in SpackJohn Gouwar, Gregory Becker, Tamara Dahlgren, Nathan Hanford et al.SC 2025 · 1 citation
- A Probabilistic Approach To Selecting Build Configurations in Package ManagersDaniel Nichols, Harshitha Menon, Todd Gamblin, Abhinav BhateleSC 2024 · 1 citation
Related papers
- ApproxASP - a Scalable Approximate Answer Set CounterMohimenul Kabir, Flavio O. Everardo, Ankit K. Shukla, Markus Hecher et al.AAAI 2022 · 21 citations
- Mapping Out the HPC Dependency ChaosFarid Zakaria, Thomas R. W. Scogland, Todd Gamblin, Carlos MaltzahnSC 2022 · 3 citations
- Compilation of Aggregates in ASP SystemsGiuseppe Mazzotta, Francesco Ricca, Carmine DodaroAAAI 2022 · 16 citations
- Semi-declarative Language for Combinatorial SearchZiyi Yang, Ilya SergeyOOPSLA 2026
- Learning to Break Symmetries for Efficient Optimization in Answer Set ProgrammingAlice Tarzariol, Martin Gebser, Konstantin Schekotihin, Mark LawAAAI 2023 · 4 citations
