Cross-Platform Development of High Performance Applications using Generic Programming

W. Blochinger and W. Küchlin (Germany)


Software Development, Heterogeneous High Performance Computing, Generic Programming, Design Patterns


We investigate methods for creating highly portable par allel and distributed applications using the programming language C++. The paper elaborates on software engineer ing issues for efficiently mapping abstract class interfaces to system functionality -- typically designed by applying the wrapper facade design pattern -- on a large number of target platforms. We introduce a novel mapping tech nique which is based on generic programming. The pa per presents a detailed comparison of the proposed method with two other commonly applied techniques, concluding that our approach represents the most suitable technique for creating highly portable C++ programs in terms of effi ciency, ease of portability, and enforcement of correctness.

Important Links:

Go Back