Experimenting with X10 for Parallel Constraint-Based Local Search

In this study, we have investigated the adequacy of the PGAS parallel language X10 to implement a Constraint-Based Local Search solver. We decided to code in this language to benefit from the ease of use and architectural independence from parallel resources which it offers. We present the implementation strategy, in search of different sources of parallelism in the context of an implementation of the Adaptive Search algorithm. We extensively discuss the algorithm and its implementation. The performance evaluation on a representative set of benchmarks shows close to linear speed-ups, in all the problems treated.

[1]  Daniel Diaz,et al.  Parallel Local Search: Experiments with a PGAS-based programming model , 2013, ArXiv.

[2]  Philippe Codognet,et al.  Yet Another Local Search Method for Constraint Solving , 2001, SAGA.

[3]  Toby Walsh,et al.  Handbook of Constraint Programming , 2006, Handbook of Constraint Programming.

[4]  Jack Dongarra,et al.  MPI: The Complete Reference , 1996 .

[5]  Philippe Codognet,et al.  Experiments in Parallel Constraint-Based Local Search , 2011, EvoCOP.

[6]  J. Davenport Editor , 1960 .

[7]  Philippe Codognet,et al.  Targeting the Cell Broadband Engine for constraint‐based local search , 2012, Concurr. Comput. Pract. Exp..

[8]  Katherine Yelick,et al.  UPC: Distributed Shared Memory Programming (Wiley Series on Parallel and Distributed Computing) , 2005 .

[9]  Sreedhar B. Kodali,et al.  The Asynchronous Partitioned Global Address Space Model , 2010 .

[10]  Philippe Codognet,et al.  Prediction of Parallel Speed-Ups for Las Vegas Algorithms , 2012, 2013 42nd International Conference on Parallel Processing.

[11]  Toby Walsh,et al.  CSPLIB: A Benchmark Library for Constraints , 1999, CP.

[12]  David R. Butenhof Programming with POSIX threads , 1993 .

[13]  Rui Machado,et al.  The Fraunhofer virtual machine: a communication library and runtime system based on the RDMA model , 2009, Computer Science - Research and Development.

[14]  Teodor Gabriel Crainic,et al.  Parallel Meta-Heuristics , 2010 .

[15]  Serdar Kadioglu,et al.  Dialectic Search , 2009, CP.

[16]  Daniel Diaz,et al.  Constraints: The core of product line engineering , 2011, 2011 FIFTH INTERNATIONAL CONFERENCE ON RESEARCH CHALLENGES IN INFORMATION SCIENCE.

[17]  Philippe Codognet,et al.  An Efficient Library for Solving CSP with Local Search , 2003 .

[18]  Philippe Codognet,et al.  Parallel Local Search for the Costas Array Problem , 2012, 2012 IEEE 26th International Parallel and Distributed Processing Symposium Workshops & PhD Forum.