🤖 AI Summary
This work addresses the limited scalability of propositional model counting (#SAT) on single-core architectures and the inefficiencies of existing distributed approaches, which often suffer from high initialization overhead or inflexible designs. The paper proposes a general-purpose distributed framework for exact model counting that, for the first time, decouples solver logic from parallel scheduling via C++ template metaprogramming, enabling mainstream solvers to be parallelized with minimal modifications. Additionally, it introduces an adaptive work-stealing mechanism that dynamically balances computational load across workers. Evaluated on standard competition benchmarks, the approach achieves near-linear speedup and significantly outperforms current distributed #SAT solvers.
📝 Abstract
Propositional Model Counting ($\#\mathsf{SAT}$) is essential for probabilistic reasoning but faces scalability limits on single cores. Existing distributed approaches struggle with high initialization overheads (static decomposition) or rigid architecture. We propose a novel, generic framework for distributed \emph{exact} model counting. Leveraging C++ templates, our architecture decouples parallel orchestration from solving logic, enabling state-of-the-art solvers to be parallelized with minimal modification. We implement an adaptive work-stealing strategy that ensures effective load balancing. Experiments on competition benchmarks show that our approach achieves near-linear scalability and significantly outperforms existing distributed solvers.