## Abstract

We propose a new paradigm for programming multiprocessor systems, 2DT (two-dimensional transformations). 2DT programs are composed of local computations on linear data (columns) and global transformations on 2-dimensional combinations of columns (2D-arrays). Local computations can be expressed in a functional or imperative base language; a typed variant of Backus' FP is chosen for 2DT-FP. The level of abstraction of 2DT makes it suitable for programming a relevant set of algorithms, in general any algorithms, whose data can be easily mapped to 2-dimensional representations. A set of examples tries to prove this claim. An interleaving semantics for 2DT-FP is given, exposing the potential for parallel execution of 2DT-FP programs. The claim is proved that any sequential and thus any parallel execution will deliver the same result. The implementation realized on the Intel Hypercube is described.

Original language | English |
---|---|

Pages (from-to) | 389-422 |

Number of pages | 34 |

Journal | International Journal of Parallel Programming |

Volume | 23 |

Issue number | 5 |

DOIs | |

State | Published - Oct 1995 |

## Keywords

- 2-dimensional transformations
- Parallel language
- SPMD
- functional programming

## ASJC Scopus subject areas

- Software
- Theoretical Computer Science
- Information Systems