MARS: A Distributed Memory Approach to Shared Memory Compilation

Research output: Chapter in Book/Report/Conference proceedingConference contribution


This paper describes an automatic parallelising compiler, MARS, targeted for shared memory machines. It uses a data partitioning approach, traditionally used for distributed memory machines, in order to globally reduce overheads such as communication and synchronisation. Its high-level linear algebraic representation allows direct application of, for instance, unimodular transformations and global application of data transformation. Although a data based approach allows global analysis and in many instances outperforms local, loop-orientated parallelisation approaches, we have identified two particular problems when applying data parallelism to sequential Fortran 77 as opposed to data parallel dialects tailored to distributed memory targets. This paper describes two techniques to overcome these problems and evaluates their applicability. Preliminary results, on two SPECf92 benchmarks, show that with these optimisations, MARS outperforms existing state-of-the art loop based auto-parallelisation approaches.
Original languageEnglish
Title of host publicationLanguages, Compilers, and Run-Time Systems for Scalable Computers
Subtitle of host publication4th International Workshop, LCR’ 98 Pittsburgh, PA, USA, May 28–30, 1998 Selected Papers
PublisherSpringer Berlin Heidelberg
Number of pages16
ISBN (Electronic)978-3-540-49530-7
ISBN (Print)978-3-540-65172-7
Publication statusPublished - 24 Sep 1998

Publication series

NameLecture Notes in Computer Science
PublisherSpringer Berlin Heidelberg
ISSN (Print)0302-9743

Fingerprint Dive into the research topics of 'MARS: A Distributed Memory Approach to Shared Memory Compilation'. Together they form a unique fingerprint.

Cite this