Fri 19 Jul 2019 14:00 - 14:30 at Reims - DS Session 3 Chair(s): Julia Belyakova

In this document we lay out the plans for a PhD project in computer science. We aim to help developers who want to harness the speedups that multi-core CPU architectures offer. Parallel programming is the means trough which these new architectures can be controlled. Writing parallel applications is however, much more complex than writing their sequential counterparts. Developers writing parallel programs are suddenly confronted with state explosion. Because an executing parallel program can have its state transition to one of many states, rather than one deterministic state, the number of possible reachable states can grow exponentially with the number of steps the program takes. Both human developers and software aiming to aid them struggle with state explosion.

We aim to tackle the problem of state explosion on two fronts. On the one hand we need to reduce the allowed amount of nondeterminism. On the other hand we need to provide developers with a means to get insight into all the possible program executions. First, to limit the amount of non-determinism, we will build an orthogonal basis of parallelization primitives that limit the allowed state explosion. Once the state explosion is limited, computers can take on the job of visualizing the full execution graph. Interacting with this graph will help developers understand more clearly what their program is doing. By additionally allowing the developer to explore the graph interactively and to create the nodes on the fly, we can further reduce the state explosion.

To validate our work we will implement a set of programs and verify that our basis is expressive enough. Additionally, user-studies will be done to test whether our debugger indeed improves the speed at with which developers find and understand bugs.

Our goal is thus to reduce the cognitive load placed on developers when developing parallel programs. We will do this by limiting the allowed amount of state explosion without giving up expressiveness and by allowing users to explore the execution of their program interactively.

Fri 19 Jul

Displayed time zone: Belfast change

13:30 - 15:10
DS Session 3Doctoral Symposium at Reims
Chair(s): Julia Belyakova Northeastern University, USA
13:30
30m
Doctoral symposium paper
Improving the Efficiency, Scalability, and Applicability of Static Program Analysis in Real-World Operational Scenarios
Doctoral Symposium
Philipp Dominik Schubert Heinz Nixdorf Institut, Paderborn University
14:00
30m
Doctoral symposium paper
State Explosion Considered Harmful
Doctoral Symposium
Robbert Gurdeep Singh Universiteit Gent, Belgium
14:30
30m
Doctoral symposium paper
Session Types in the Real World: A Minimalistic Approach
Doctoral Symposium
Alen Arslanagić University of Groningen