Graph Types
Overview
Decades of research into the theory of parallel programs have represented the dependency structure of parallel programs as directed graphs, which can be used to describe everything from the amount of parallelism in an algorithm to the presence or absence of a deadlock. However, these graphs are not particularly suitable for static analysis as a dependency graph is a representation of a particular execution of a program rather than the program itself. Graph types aim to describe families of graphs that can arise from executing a parallel program. A graph type can be inferred statically from the program using a graph type system, and the graph type itself can then be analyzed for properties of interest in a way that need not be connected to details of the source code or even the programming language used.
People
Students
- Francis Rinaldi
- june wunder
- Edman Alicea-Marrero
Funding
NSF CCF-2107289: Responsive Parallelism for Interactive Applications: Theory and Practice