Article ID Journal Published Year Pages File Type
432040 The Journal of Logic and Algebraic Programming 2009 20 Pages PDF
Abstract

Parallel programming faces two major challenges: how to efficiently map computations to different parallel hardware architectures, and how to do it in a modular way, i.e., without rewriting the problem solving code. We propose to treat dependencies as first class entities in programs. Programming a highly parallel machine or chip can then be formulated as finding an efficient embedding of the computation’s data dependency into the underlying hardware’s communication layout. With the data dependency pattern of a computation extracted as an explicit entity in a program, one has a powerful tool to deal with parallelism.

Related Topics
Physical Sciences and Engineering Computer Science Computational Theory and Mathematics