1. Events
  2. 2016
  3. March
  4. Formal Specification, Design and Implementation of a Parallel Programming Framework




Formal Specification, Design and Implementation of a Parallel Programming Framework



Speaker: Dr Sergio Yovine

Series: CeNACS seminars

Location: A107, College Building

Developing correct and efficient parallel software in a cost-effective way is challenging. There are a number of pitfalls that lead to incorrect behaviors and poor performance. Pattern-based software design could help tackling these issues towards achieving correctness and scalability. However, it has several drawbacks: a) most patterns are not broadly supported by current parallel-programming models and languages; b) most often than not getting the appropriate pattern right is difficult; and c) most patterns do not compose easily, thus making it hard to deal with heterogeneous parallelism.

As an attempt to overcoming these issues, we are developing a formally-grounded framework for automated parallel software synthesis. It is based on a parallel-programming pattern, called PCR, consisting of produces, consumers, and reducers which operate concurrently on data sets. The semantics of PCRs is mathematically defined in terms of the formalism FXML [1]. The framework itself consists in a platform-agnostic C++ template library to express PCRs. As a proof-of-concept prototype tool we have developed a code-generator based on C++ template re-writing which automatically generates implementations relying on Intel's Concurrent Collections C++ library [2].

Overall, the proposed framework provides means to enhance parallel-software quality and productivity through an automated methodology based on high-level, platform-independent programming constructs, and a compiling infrastructure to generate portable, executable code.

[1] S. Yovine et al. Formal Approach to Derivation of Concurrent Implementations in Software Product Lines.

Speaker Bio:
Dr Sergio Yovine graduated in CS at Escuela Superior Latino-Americana de Inform?tica (ESLAI), Argentina, in 1989. He obtained his PhD in CS at Grenoble Institute of Technology, France, in 1993. He received his Habilitation ? Diriger des Recherches at Universit? Joseph Fourier, Grenoble, France, in 2001. He was full-time researcher at CNRS, France, from 1995 to 2009, working at VERIMAG. In 1997-1998, he was Research Engineer at UC Berkeley, working at PATH. He joined CONICET, Argentina's research council, and the Department of Computer Science at University of Buenos Aires in 2009. Since 2015 he is also researcher at PEDECIBA and SNI, Uruguay's research council, and faculty member at Universidad ORT Uruguay.

Share this event

When & where

12.00pm - 1.00pmWednesday 2nd March 2016