While accelerated computing has transformed many domains of computing, its impact on logical reasoning, specifically Boolean satisfiability (SAT), remains limited. State-of-the-art SAT solvers rely heavily on inherently sequential conflict-driven search algorithms that offer powerful heuristics but limit the amount of parallelism that could otherwise enable significantly more scalable SAT solving. Inspired by neural network training, we formulate the SAT problem as a binarized matrix-matrix multiplication layer that could be optimized using a differentiable objective function. Enabled by this encoding, we combine the strengths of parallel differentiable optimization and sequential search to accelerate SAT on a hybrid GPU-CPU system. In this system, the GPUs leverage parallel differentiable solving to rapidly evaluate SAT clauses and use gradients to stochastically explore the solution space and optimize variable assignments. Promising partial assignments generated by the GPUs are post-processed on many CPU threads which exploit conflict-driven sequential search to further traverse the solution subspaces and identify complete assignments. Prototyping the hybrid solver on an NVIDIA DGX GB200 node, our solver achieves runtime speedups up to over 200x when compared to a state-of-the-art CPU-based solver on public satisfiable benchmark problems from the SAT Competition.
翻译:尽管加速计算已深刻变革了众多计算领域,但其在逻辑推理——特别是布尔可满足性问题上的影响仍较为有限。当前最先进的SAT求解器严重依赖本质上具有顺序性的冲突驱动搜索算法,这些算法虽提供了强大的启发式策略,却限制了并行性的发挥,而并行性本可显著提升SAT求解的可扩展性。受神经网络训练的启发,我们将SAT问题形式化为一个可二值化的矩阵-矩阵乘法层,并可通过可微分目标函数进行优化。基于此编码方式,我们结合并行可微分优化与顺序搜索的优势,在GPU-CPU混合系统上实现了SAT求解的加速。在该系统中,GPU利用并行可微分求解技术快速评估SAT子句,并通过梯度信息随机探索解空间以优化变量赋值;GPU生成的具有潜力的部分赋值结果随后在多CPU线程上进行后处理,这些线程利用冲突驱动的顺序搜索进一步遍历解子空间并识别完整赋值。通过在NVIDIA DGX GB200节点上构建该混合求解器的原型,我们的求解器在SAT竞赛公开可满足性基准测试中,相比当前最先进的基于CPU的求解器,实现了最高超过200倍的运行时间加速。