Objectives
|
The thesis will focus on building the software environment needed to specify, simulate, debug and generate, for a given application, the architecture specification (in terms of reusable components from Task 3) and the application code itself. This integrated flow will leverage the classic difficulties of such development by using Quaff, a C++ meta-programming based skeleton library, as a base for the tools. Basically, we’ll focus on extending Quaff handling for architectural specifications by providing new back-end and code generators. The main challenge is to be able to define a comprehensive set of skeletons and to adapt their formal semantic and production rules to the hardware layer. This is basically the dual process of what’s Quaff is doing at the moment: instead of generating the optimal code for a fixed architecture, we have to find the proper architecture for a given application.
|
Extra information
|
References:
- Une bibliothèque métaprogrammée pour la programmation parallèle, Joel Falcou et Jocelyn Sérot, in Technique et Science Informatique, Volume 28(5), pp 645 – 675
- Formal semantics applied to the implementation of a skeleton-based parallel programming library.", J. Falcou and J. Serot, In Parallel Computing: Architectures, Algorithms and Applications (Proc. of PARCO 2007)
|