Parallel aspects of the satisfiability problem - Archive ouverte HAL Accéder directement au contenu
Thèse Année : 2009

Parallel aspects of the satisfiability problem

Aspects parallèles des problèmes de satisfaisabilité

(1, 2)
1
2

Résumé

In spite of its computational complexity, the SATisfiability problem is a great and competitive approach to solve a wide range of problems. This leads to have a strong demand for high-performance SAT-solving tools in industry. Over the years, many different approaches and optimizations have been developed to tackle the problem more efficiently while being unaware of the actual trend in processor development which is from single-core to multi-core CPUs. This thesis presents a new kind of parallel algorithm with a strong collaborative approach where a rich thread is in charge of the search-tree evaluation and where a set of poor threads yield partial or global, logical or heuristics information to simplify the rich task. To become this solver real and efficient, we extended the guiding path notion to the guiding tree notion. The entire search-tree is shared in the main memory and each processor can work on it at the same time. This new solver is named MTSS for Multi-Threaded SAT Solver. In addition, we implemented a task for rich and poor threads which can execute an external SAT solver with or without lemma exchange policy. This permits to parallelize all kind of solvers (dedicated to industrial or random formulas). This new framework facilitates the future parallel SAT solving implementation approaches. Some examples and experimentations with and without lemma exchange strategies parallelizing external solvers are presented, as well as some benchmarks on MTSS itself. Sometimes, speedups are super linear.
Malgré sa complexité de résolution, le problème de SATisfaisabilité est une excellente et compétitive approche pour résoudre un large éventail de problèmes. Cela génère une forte demande pour une résolution de SAT haute performance de la part des industriels. Au fil du temps, de nombreuses approches et optimisations différentes ont été développées pour résoudre le problème plus efficacement. Ces innovations ont été faites sans prendre en compte le développement des micro processeurs actuels qui voient le nombre de leur cœurs de calcul augmenter. Cette thèse présente un nouveau type d'algorithme parallèle basé sur une forte collaboration où un processus riche est en charge de l'évaluation de l'arbre de recherche et où des processus pauvres fournissent des informations partielles ou globales, heuristiques ou logiques afin de simplifier la tâche du riche. Pour concrétiser ce solveur et le rendre efficace, nous avons étendu la notion de chemin de guidage à celle d'arbre de guidage. L'arbre de recherche est totalement partagé en mémoire centrale et tous les processeurs peuvent y travailler en même temps. Ce nouveau solveur est appelé MTSS pour Multi-Threaded SAT Solver. De plus, nous avons implémenté une tâche pour les processus riche et pauvres qui leur permet d'exécuter un solveur SAT externe, et cela, avec ou sans échange de lemmes afin de paralléliser tous types de solveurs (dédiés aux formules industrielles ou aléatoires). Ce nouvel environnement facilite la parallélisation des futures implémentations pour SAT. Quelques exemples et expérimentations, avec ou sans échange de lemmes, de parallélisation de solveurs externes sont présentées, mais aussi des résultats sur les performances de MTSS. Il est intéressant de noter que certaines accélérations sont super linéaires.
Fichier principal
Vignette du fichier
These_MTSS.pdf (1.82 Mo) Télécharger le fichier
Vignette du fichier
Presentation_MTSS.pdf (6.81 Mo) Télécharger le fichier
Format : Autre

Dates et versions

tel-00545657 , version 1 (10-12-2010)
tel-00545657 , version 2 (27-03-2011)

Identifiants

  • HAL Id : tel-00545657 , version 2

Citer

Pascal Vander-Swalmen. Aspects parallèles des problèmes de satisfaisabilité. Autre [cs.OH]. Université de Reims - Champagne Ardenne, 2009. Français. ⟨NNT : ⟩. ⟨tel-00545657v2⟩
235 Consultations
799 Téléchargements

Partager

Gmail Facebook Twitter LinkedIn More