StarsS and Barrelfish: Dynamic dataflow execution on a message-passing OS

StarsS is a Programming Model and runtime that is developed by BSC. It features task-based user annotated description of task input/output data and runtime dynamic detection of task interdependencies and dataflow execution model. Barrelfish is a “multi-kernel” operating system built around a message passing distributed architecture. Task-based StarsS and message-based Barrelfish represent common trends in many emerging programming models, operating systems, and language runtime systems. There are several important synergies between StarsS and Barrelfish: both are designed to work across a spectrum of homogeneous and heterogeneous architectures, and both can handle different system granularities from single chip-multi-processors to cloud systems. Moreover a dataflow model seems particularly well-suited for a message passing OS. Our initial aim is to port the StartsS programming model and runtime system to the Barrelfish OS and to examine application performance of the combined platform. Our long term goal is to propose optimizations, and hardware support that works well in this combined platform.