Parallel Execution of the ASP Computation – an Investigation on GPUs
Dip. di Matematica e Informatica, Universita di Udine
Technical Communications of ICLP (ICLP-TCs), 2015
@article{dovier2015parallel,
title={Parallel Execution of the ASP Computation-an Investigation on GPUs},
author={Dovier, Agostino and Formisano, Andrea and Pontelli, Enrico and Vella, Flavio},
year={2015}
}
This paper illustrates the design and implementation of a conflict-driven ASP solver that is capable of exploiting the Single-Instruction Multiple-Thread parallelism offered by General Purpose Graphical Processing Units (GPUs). Modern GPUs are multi-core platforms, providing access to large number of cores at a very low cost, but at the price of a complex architecture with non-trivial synchronization and communication costs. The search strategy of the ASP solver follows the notion of ASP computation, that avoids the generation of unfounded sets. Conflict analysis and learning are also implemented to help the search. The CPU is used only to pre-process the program and to output the results. All the solving components, i.e., nogoods management, search strategy, (non-chronological) backjumping, heuristics, conflict analysis and learning, and unit propagation, are performed on the GPU by exploiting SIMT parallelism. The preliminary experimental results confirm the feasibility and scalability of the approach, and the potential to enhance performance of ASP solvers.
September 5, 2015 by hgpu