Architecture-independent parallelism for both shared- and distributed-memory machines using the Filaments package

This paper presents the Filaments package, which can be used to create architecture-independent parallel programs – that is, programs that are portable and efficient across vastly different parallel machines. Filaments virtualizes the underlying machine in terms of the number of processors and the i...

Full description

Saved in:
Bibliographic Details
Published inParallel computing Vol. 26; no. 10; pp. 1297 - 1323
Main Authors Lowenthal, David K, Freeh, Vincent W
Format Journal Article
LanguageEnglish
Published Elsevier B.V 01.09.2000
Subjects
Online AccessGet full text

Cover

Loading…
More Information
Summary:This paper presents the Filaments package, which can be used to create architecture-independent parallel programs – that is, programs that are portable and efficient across vastly different parallel machines. Filaments virtualizes the underlying machine in terms of the number of processors and the interconnection, allowing fine-grain, shared-memory programs to be written or generated. Furthermore, Filaments uses a carefully designed API along with machine-specific runtime libraries and preprocessing that allow programs to run unchanged on both shared- and distributed-memory machines. Performance is not sacrificed, as almost all kernels and applications we tested achieve a speedup of over 4 on 8 processors of both an SGI Challenge and a cluster of Pentium Pros.
Bibliography:ObjectType-Article-2
SourceType-Scholarly Journals-1
ObjectType-Feature-1
content type line 23
ISSN:0167-8191
1872-7336
DOI:10.1016/S0167-8191(00)00038-7