A Variant of Concurrent Constraint Programming on GPU

Authors

  • Pierre Talbot University of Luxembourg Interdisciplinary Centre for Security, Reliability and Trust (SnT)
  • Frédéric G Pinel University of Luxembourg Interdisciplinary Centre for Security, Reliability and Trust (SnT)
  • Pascal Bouvry University of Luxembourg Interdisciplinary Centre for Security, Reliability and Trust (SnT)

DOI:

https://doi.org/10.1609/aaai.v36i4.20298

Keywords:

Constraint Satisfaction And Optimization (CSO)

Abstract

The number of cores on graphical computing units (GPUs) is reaching thousands nowadays, whereas the clock speed of processors stagnates. Unfortunately, constraint programming solvers do not take advantage yet of GPU parallelism. One reason is that constraint solvers were primarily designed within the mental frame of sequential computation. To solve this issue, we take a step back and contribute to a simple, intrinsically parallel, lock-free and formally correct programming language based on concurrent constraint programming. We then re-examine parallel constraint solving on GPUs within this formalism, and develop Turbo, a simple constraint solver entirely programmed on GPUs. Turbo validates the correctness of our approach and compares positively to a parallel CPU-based solver.

Downloads

Published

2022-06-28

How to Cite

Talbot, P., Pinel, F. G., & Bouvry, P. (2022). A Variant of Concurrent Constraint Programming on GPU. Proceedings of the AAAI Conference on Artificial Intelligence, 36(4), 3830-3839. https://doi.org/10.1609/aaai.v36i4.20298

Issue

Section

AAAI Technical Track on Constraint Satisfaction and Optimization