Scalable Energy Games Solvers on GPUs

Modeling the consumption of limited resources, e.g., time or energy, plays a central role on the design of reactive systems such as embedded controllers. To this aim, quantitative objectives are defined on game arenas that can be easily modeled as weighted graphs. Instances of these games, called <italic>energy games</italic>, can be solved in <inline-formula><tex-math notation="LaTeX">${\mathcal {O}(\vert {E}\vert {\cdot }\vert {V}\vert {\cdot }W)}$</tex-math><alternatives><mml:math><mml:mrow><mml:mi mathvariant="script">O</mml:mi><mml:mo>(</mml:mo><mml:mo>|</mml:mo><mml:mi>E</mml:mi><mml:mo>|</mml:mo><mml:mo>·</mml:mo><mml:mo>|</mml:mo><mml:mi>V</mml:mi><mml:mo>|</mml:mo><mml:mo>·</mml:mo><mml:mi>W</mml:mi><mml:mo>)</mml:mo></mml:mrow></mml:math><inline-graphic xlink:href="vella-ieq1-3080925.gif"/></alternatives></inline-formula> where <inline-formula><tex-math notation="LaTeX">$W$</tex-math><alternatives><mml:math><mml:mi>W</mml:mi></mml:math><inline-graphic xlink:href="vella-ieq2-3080925.gif"/></alternatives></inline-formula> is the maximum weight. Recent work has demonstrated that sequential implementations hardly solve practical instances due to their size and the number of interactions required to converge to a solution. Recent work has demonstrated that sequential implementations hardly solve practical instances. Furthermore, emerging approaches, that have investigated the parallelism of CPUs multi-core and GPU for solving the <italic>initial credit problem</italic> for energy games, still perform poorly due to the non-trivial characteristics of these graphs. In this article we first describe a revised version of the algorithm on multi-core CPU that obtains a faster convergence time on real-world graphs with up to 30x against the serial implementation by showing good scalability overall. Second, we provide a new GPU-based parallel implementation based on warp-level primitives that allows to reduce the time-to-solution on several instances with up to 3.6x of speed-up against traditional parallel vertex-based approaches. We also discuss a methodology to build synthetic energy games to validate the scalability of parallel algorithms on two totally different settings.

[1]  Krishnendu Chatterjee,et al.  Energy Parity Games , 2010, ICALP.

[2]  Xavier Allamigeon,et al.  The Tropical Shadow-Vertex Algorithm Solves Mean Payoff Games in Polynomial Time on Average , 2014, ICALP.

[3]  Kim G. Larsen,et al.  Energy Games in Multiweighted Automata , 2011, ICTAC.

[4]  Jeroen Keiren,et al.  Benchmarks for Parity Games , 2014, FSEN.

[5]  Kunle Olukotun,et al.  Accelerating CUDA graph algorithms at maximum warp , 2011, PPoPP '11.

[6]  Ümit V. Çatalyürek,et al.  Betweenness centrality on GPUs and heterogeneous architectures , 2013, GPGPU@ASPLOS.

[7]  David A. Bader,et al.  Scalable and High Performance Betweenness Centrality on the GPU , 2014, SC14: International Conference for High Performance Computing, Networking, Storage and Analysis.

[8]  M. Lange,et al.  The PGSolver Collection of Parity Game Solvers Version 3 , 2010 .

[9]  Krishnendu Chatterjee,et al.  Polynomial-Time Algorithms for Energy Games with Special Weight Structures , 2012, Algorithmica.

[10]  Krishnendu Chatterjee,et al.  Generalized Mean-payoff and Energy Games , 2010, FSTTCS.

[11]  Jared Hoberock,et al.  Edge v. Node Parallelism for Graph Centrality Metrics , 2012 .

[12]  Michael Luttenberger,et al.  Solving Parity Games on the GPU , 2013, ATVA.

[13]  Thomas A. Henzinger,et al.  Resource Interfaces , 2003, EMSOFT.

[14]  Andrea Formisano,et al.  Accelerating Energy Games Solvers on Modern Architectures , 2017, IA3@SC.

[15]  Kim G. Larsen,et al.  Infinite Runs in Weighted Timed Automata with Energy Constraints , 2008, FORMATS.

[16]  Massimo Bernaschi,et al.  Multilevel Parallelism for the Exploration of Large-Scale Graphs , 2018, IEEE Transactions on Multi-Scale Computing Systems.

[17]  L. Brim,et al.  Faster algorithms for mean-payoff games , 2011, Formal Methods Syst. Des..

[18]  Krzysztof R. Apt,et al.  Lectures in Game Theory for Computer Scientists , 2011 .

[19]  Krishnendu Chatterjee,et al.  The complexity of multi-mean-payoff and multi-energy games , 2012, Inf. Comput..

[20]  Jean-François Raskin,et al.  Energy and mean-payoff timed games , 2014, HSCC.

[21]  Kim G. Larsen,et al.  Average-energy games , 2015, Acta Informatica.

[22]  Massimo Bernaschi,et al.  Scalable betweenness centrality on multi-GPU systems , 2016, Conf. Computing Frontiers.

[23]  Véronique Bruyère,et al.  Computer Aided Synthesis: A Game-Theoretic Approach , 2017, DLT.

[24]  Jakub Chaloupka,et al.  Parallel Algorithms for Mean-Payoff Games: An Experimental Evaluation , 2009, ESA.

[25]  Michael Luttenberger,et al.  Solving Mean-Payoff Games on the GPU , 2016, ATVA.

[26]  Jaco van de Pol,et al.  A Multi-Core Solver for Parity Games , 2008, Electron. Notes Theor. Comput. Sci..

[27]  Romeo Rizzi,et al.  Improved Pseudo-polynomial Bound for the Value Problem and Optimal Strategy Synthesis in Mean Payoff Games , 2017, Algorithmica.