parallel sat solving past present and future
play

Parallel SAT Solving: Past, Present and Future PCR 2017, Gothenburg, - PowerPoint PPT Presentation

Parallel SAT Solving: Past, Present and Future PCR 2017, Gothenburg, Sweden Carsten Sinz Institute for Theoretical Informatics (ITI) Karlsruhe Institute of Technology (KIT) 06.08.2017 1 Outline Guided by Historical Development Search


  1. Parallel SAT Solving: Past, Present and Future PCR 2017, Gothenburg, Sweden Carsten Sinz Institute for Theoretical Informatics (ITI) Karlsruhe Institute of Technology (KIT) 06.08.2017 1

  2. Outline • Guided by Historical Development • Search Space Splitting Approach • Portfolio Approach • Empirical Observations • Parallel Solvers in the SAT Competition • Current and Future Approaches Carsten Sinz • Parallel SAT Solving: Past, Present and Future • PCR 2017, Gothenburg, Sweden • 06.08.2017 2

  3. SAT: Combinatorial Search Search Space Carsten Sinz • Parallel SAT Solving: Past, Present and Future • PCR 2017, Gothenburg, Sweden • 06.08.2017 3

  4. Sequential DPLL Algorithm Carsten Sinz • Parallel SAT Solving: Past, Present and Future • PCR 2017, Gothenburg, Sweden • 06.08.2017 4

  5. DPLL: Search Tree & Splitting • Splitting similar to DPLL recursion step F • F| x,¬y , e.g., describes a fraction of the search space x ¬x • Splitting Schedule • When and how to split ¬y y F| ¬x • Static vs Dynamic Splitting • Static: computed before solving F| x,¬y F| x,y process starts; typically with „over- saturation“ • Dynamic: splitting interleaved with solving Carsten Sinz • Parallel SAT Solving: Past, Present and Future • PCR 2017, Gothenburg, Sweden • 06.08.2017 5

  6. Splitting Tree with Non-Overlapping Formulas Carsten Sinz • Parallel SAT Solving: Past, Present and Future • PCR 2017, Gothenburg, Sweden • 06.08.2017 6

  7. Guiding Paths [Zhang:96] • Guiding Path • Describes state in DPLL search • Trail plus, for each entry, whether backtracking is needed (B) or not (N) • Can be used for dynamic search space splitting, e.g.: • ((x,B),(y,N),(¬z,B)) splits into 
 ((x,N),(y,N),(¬z,B)) and 
 ((¬x,N)) ((x, B ),(y, N ),(¬z, B )) Carsten Sinz • Parallel SAT Solving: Past, Present and Future • PCR 2017, Gothenburg, Sweden • 06.08.2017 7

  8. Dynamic Splitting: Focus on Workload Management Carsten Sinz • Parallel SAT Solving: Past, Present and Future • PCR 2017, Gothenburg, Sweden • 06.08.2017 8

  9. Search Space Splitting Solvers • Early days of parallel SAT solving • Böhm, Speckenmeyer (1996): A Fast Parallel SAT-Solver - E ffi cient Workload Balancing • Speckenmeyer (1988): Is average superlinear speedup possible? • Zhang, Bonacina, Hsiang (1996): PSATO: a distributed propositional prover and its application to quasigroup problems • With clause learning and clause exchange • Sinz, Blochinger, Küchlin (2001): PaSAT - parallel SAT-checking with lemma exchange: Implementation and applications • Schubert, Lewis, Becker (2005): PaMira - A Parallel SAT Solver with Knowledge Sharing Carsten Sinz • Parallel SAT Solving: Past, Present and Future • PCR 2017, Gothenburg, Sweden • 06.08.2017 9

  10. PaSAT: Run-Time Observations SAT UNSAT Carsten Sinz • Parallel SAT Solving: Past, Present and Future • PCR 2017, Gothenburg, Sweden • 06.08.2017 10

  11. Portfolio Approach • Basic Idea • Run several solvers (without search space splitting, independently) in parallel • SAT Competition 2011 • ppfolio// wins 11 medals, best solver in competition • „ppfolio is essentially equivalent to typing 
 solver1 & solver2 & ... solvern & “ • Extensions • Current solvers also exchange learned clauses and have evolved diversification strategies Carsten Sinz • Parallel SAT Solving: Past, Present and Future • PCR 2017, Gothenburg, Sweden • 06.08.2017 11

  12. Portfolio Solvers • Early portfolio solvers • Hamadi, Jabbour, Sais (2008): ManySAT Solver Description • Xu, Hutter, Hoos, Leyton-Brown: SATzilla: Portfolio-based Algorithm Selection for SAT • Roussel (2011): Description of ppfolio • Current portfolio solvers • Biere (2010-): plingeling, clingeling, treengeling • Balyo, Sanders, Sinz (2015): HordeSat: A Massively Parallel Portfolio SAT Solver Carsten Sinz • Parallel SAT Solving: Past, Present and Future • PCR 2017, Gothenburg, Sweden • 06.08.2017 12

  13. Diversification & Clause Exchange • Random 3-SAT, only satisfiable instances Carsten Sinz • Parallel SAT Solving: Past, Present and Future • PCR 2017, Gothenburg, Sweden • 06.08.2017 13

  14. Diversification & Clause Exchange • Random 3-SAT, only unsatisfiable instances Carsten Sinz • Parallel SAT Solving: Past, Present and Future • PCR 2017, Gothenburg, Sweden • 06.08.2017 14

  15. HordeSAT: Massive Parallelization [545 instances from SAT Competitions 2011 & 2014 Application Track] Carsten Sinz • Parallel SAT Solving: Past, Present and Future • PCR 2017, Gothenburg, Sweden • 06.08.2017 15

  16. HordeSAT: Massive Parallelization Carsten Sinz • Parallel SAT Solving: Past, Present and Future • PCR 2017, Gothenburg, Sweden • 06.08.2017 16

  17. Why Parallelization? Power Wall Carsten Sinz • Parallel SAT Solving: Past, Present and Future • PCR 2017, Gothenburg, Sweden • 06.08.2017 17

  18. Parallel SAT in the SAT Competitions • 2009: First Parallel Track • „Multi-threading is everywehere except in our solvers“ • „Solvers are expected to be deterministic“ • 4 solvers submitted (plus variants): ManySAT, satake, ttsth and gNovelty • 4 cores (partially 16 cores) • 2010: SAT-Race, only industrial instances • 5 solvers participating, 8 cores • „Solvers are expected to be non-deterministic“: 3 runs per solver and instance, high deviation in run-time • 2011: No separation between sequential and parallel solvers • Two rankings: wall clock and CPU time • 2017 SAT Competition • 48 threads, 56 GB per solver Carsten Sinz • Parallel SAT Solving: Past, Present and Future • PCR 2017, Gothenburg, Sweden • 06.08.2017 18

  19. Current Trends and Future Directions • Current Trends • Refined approaches for portfolio solvers (diversification & clause sharing) • Cube-and-Conquer (especially for hard instances) • Future Directions • Integrating sub-solvers in portfolio • Based on SAT sweeping / sampling, e.g. equivalence detection • Based on abstraction? • Still mostly open: make use of GPUs Carsten Sinz • Parallel SAT Solving: Past, Present and Future • PCR 2017, Gothenburg, Sweden • 06.08.2017 19

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend