A parallel ASP instantiator based on DLV


Answer Set Programming (ASP) is a purely-declarative logic programming language allowing for disjunction and nonmonotonic negation. The evaluation of ASP programs is traditionally carried out in two steps. In the first step an input program <i>P</i> undergoes the so-called instantiation (or grounding) process, which produces a program <i>P'</i> semantically equivalent to <i>P</i>, but not containing any variable; in turn, <i>P'</i> is evaluated by using a backtracking search algorithm in the second step. It is well-known that instantiation is important for the efficiency of the whole evaluation, might becomes a bottleneck in common situations, and is particularly crucial when huge input data has to be dealt with. In the last few years, several instantiators have been proposed but none of them is able to take advantage from the latest hardware offering SMP (Symmetric MultiProcessing) also for entry-level systems and PCs. This paper presents a new parallel version of the instantiator of DLV which is able to exploit the processing power offered by multi-core/multiprocessor SMP machines. In particular, the employed parallelization methods, load-balancing and granularity control heuristics, tailored for parallel ASP instantiation process are described. The results of an experimental analysis are also presented, which confirm that multi-core/multi-processor technology can be efficiently exploited for ASP instantiation.

DOI: 10.1145/1708046.1708060

Extracted Key Phrases

5 Figures and Tables

Cite this paper

@inproceedings{Perri2010APA, title={A parallel ASP instantiator based on DLV}, author={Simona Perri and Francesco Ricca and Marco Sirianni}, booktitle={DAMP}, year={2010} }