Developing parallel programs: A design-oriented perspective

Ali Ebnenasir, Rasoul Beik
2009 2009 ICSE Workshop on Multicore Software Engineering  
The behavioral correctness of parallel programs has a pivotal role in computational sciences and engineering applications as researchers draw scientific conclusions from the results generated by parallel applications. Moreover, with the advent of multicore processors, the development of parallel programs should be facilitated for the mainstream developers. While numerous programming models and APIs exist for parallel programming, we pose the view that more emphasis should be placed on designing
more » ... the synchronization mechanisms of parallel programs independent from the design of their functional behaviors. More importantly, programs' behaviors evolve (due to new requirements and change of configuration), thereby creating a need for techniques and tools that enable developers to reason about the behavioral evolution of parallel programs. With such motivations, we introduce a framework for automated design/evolution of the synchronization mechanisms of parallel programs.
doi:10.1109/iwmse.2009.5071377 fatcat:hwvs67ei6bcuvjcj2trtps4cre