Distributed Application Layer: Towards Efficient and Reliable Programming of Many-Tile Architectures

Iuliana Bacivarov, Hoeseok Yang, Lars Schor, Devendra Rai, Sudhanshu Jha, and Lothar Thiele.
Design Automation & Test in Europe, March 14th-18th, 2011. Grenoble, France.
Many-tile architectures are large lattices that have multi-processor system-on-chips (MPSoC) as components, and as such, they push the MPSoC concept one step further in terms of raw computational power and homogeneous/ heterogeneous application parallelism. This advanced degree of computational flexibility comes at expenses of new requirements in terms of programming paradigms. The distributed operation layer (DOL) (http://www.tik.ee.ethz.ch/~shapes/) was successfully utilized for programming and optimizing the static mapping of one parallel application on different multi-processor platforms like PC clusters, MPARM, IBM Cell, and Atmel D940. However, to cope with multiple, dynamic, and concurrent applications and to optimize their execution while still guaranteeing real-time constraints, a new programming model, named distributed application layer (DAL) is being developed on top of DOL. Besides offering an efficient programming model for many-tile architectures, DAL provides faster application development and reliability awareness. This poster introduces all basic concepts of DAL, presenting the programming model, design principles, and a proof-of-concept implementation.