SPLASH 2023
Sun 22 - Fri 27 October 2023 Cascais, Portugal
Sun 22 Oct 2023 12:00 - 12:30 at Room XV - Session 1 Chair(s): Amir Shaikhha

In vertex-centric programming, users express a graph algorithm as a vertex program and specify the iterative behavior of a vertex in a ${compute}$ function, which is executed by all vertices in a graph in parallel, synchronously in a sequence of supersteps. While this programming model is straightforward for simple algorithms where vertices behave the same in each superstep, for complex vertex programs where vertices have different behavior across supersteps, a vertex needs to frequently dispatch on the value of supersteps in ${compute}$, which suffers from unnecessary interpretation overhead and complicates the control flow.

We address this using meta-programming: Instead of branching on the value of a superstep, users separate instructions that should be executed in different supersteps via a staging-time ${wait}$ instruction. When a superstep starts, computations in a vertex program resume from the last execution point, and continue executing until the next $wait$. We implement this in CloudCity and show that avoiding the interpretation overhead caused by dispatching on the value of a superstep can improve the performance by up to 20%.

Sun 22 Oct

Displayed time zone: Lisbon change

11:00 - 12:30
Session 1GPCE at Room XV
Chair(s): Amir Shaikhha University of Edinburgh
11:00
30m
Talk
GPCE Welcome by Chairs
GPCE
Amir Shaikhha University of Edinburgh, Coen De Roover Vrije Universiteit Brussel
11:30
30m
Talk
Generating Conforming Programs With Xsmith
GPCE
William G Hatch University of Utah, Pierce Darragh University of Utah, Sorawee Porncharoenwase University of Washington, Guy Watson University of Utah, Eric Eide University of Utah
12:00
30m
Talk
Multi-Stage Vertex-Centric Programming for Agent-Based Simulations
GPCE