Accelerated Satisfaction

SAT and #SAT solving in modern heterogeneous HPC environments, making use of GPUs and other accelerators to improve overall scalability and performance.

Picture of Charles Gretton

12 Jun 2023

co-supervised with Josh Milthorope

CONTEXT : Dagster - Tutorials - is an ANU built High Performance Computing (HPC) Boolean SAT(isfiability) solver that presently implements CPU bound algorithms for the SAT problem.

PROJECT : Given the trend in HPC is nowadays towards heterogeneous systems, building off our existing infrastructure this project is about investigating GPUs, and potentially other accelerators (e.g., FPGA), to speedup SAT and #SAT workflows in HPC.

The student may wish to develop and implement support for heterogeneous and dynamic search architectures. For the context on this workstream, Dagster has a limitation currently, that for a single run the type of processes, and how they communicate, is fixed. For one example, if local search is to be used, then the current architecture means that is used for all search exercises, and not just for the search exercise on one, or a subset of subproblems. More flexibility in this regard would allow a user to assign more computing power, or a tailored procedure, to subproblems. A first step on a roadmap to improving things, is to allow the user to specify, for each DAG node (I.e., subproblem) what search architecture to use on that for a given run. A second step on the roadmap to improving things, is to design a system that dynamically determines the best algorithm ( or algorithm portfolio) to run on each subproblem.

arrow-left bars search times