Overview The ATaG Program Programming and Synthesis Publications

 

ATaG (Abstract Task Graph) is a data-driven programming model that enables architecture-independent programming of distributed spatial computing applications, such as networked sensing. ATaG programs consist of two parts: a declarative section, which specifies the connectivity between tasks and constraints on their placement and communication; and an imperative section, with the implementation of the tasks written in a traditional computer language based on an automatically-generated code template. Currently, these tasks are instantiated on the nodes at compile-time. The declarative specification is fully portable to both other network architectures and other hardware architectures, requiring at most a porting of the individual task code, which represents only a small fraction of the system functionality.

ATaG does not hide parallelism - the compiler translates a concise and architecture-independent, but explicitly parallel specification into the node-level control and coordination behavior.

 

Contact: Animesh Pathak (animesh AT usc DOT edu)