Expressing Complex Parallel Algorithms in DINO

Abstract : DINO is a programming language consisting of additions to C for expressing parallel numerical programs on distributed memory multiprocessors. Its goal is to incorporate the high-level features of parallel algorithms, such as the mapping of data and procedures to processes, into the language, and have low-level operations such as interprocess communication and process control result implicitly. This paper describes the use of DINO to program a moderately complex, multiple-phase parallel algorithm, the parallel solution of block-bordered systems of linear equations. This example illustrates the suitability of DINO for such computations, but also points to some potential improvements to DINO that could be made.