Structured parallel programming simplifies the development of parallel applications by substantially raising the level of abstraction presented to the parallel programmer. The programmer concentrates on computational aspects, having only an abstract high-level view of the parallel program, while all the most critical implementation choices are left to the programming tool and run time support.
In the years, this group has been actively involved in the development and maintenance of various structured parallel programming frameworks (e.g. P3L, Muskel, Assist). Currently we are involved in the development and maintenance of Fastflow, a C++based parallel programming frameworks targeting multi cores, GPU and distributed systems . It is based on algorithmic skeletons/design patterns and is composed of a stack of layers that progressively abstracts out the programming of shared-memory parallel applications. FastFlow is currently used as run-time framework in the FP7 projects ParaPhrase and REPARA and also in the H2020 project RePhrase.