Language and Compiler Issues in Scalable High Performance Libraries
1993 (English)In: Compilation Techniques for Novel Architectures, Springer-Verlag New York, 1993Chapter in book (Refereed)
Library functions for scalable architectures must be designed to correctly and efficiently support any distributed data structure that can be created with the supported languages and associated compiler directives. Libraries must be designed also to support concurrency in each function evaluation, as well as the concurrent application of the functions to disjoint array segments, known as multiple-instance computation. Control over the data distribution is often critical for locality of reference, and so is the control over the interprocessor data motion. Scalability, while preserving efficiency, implies that the data distribution, the data motion, and the scheduling is adapted to the object shapes, the machine configuration, and the size of the objects relative to the machine size. The Connection Machine Scientific Software Library is a scalable library for distributed data structures. The library is designed for languages with an array syntax. It is accessible from all supported languages (Lisp, C, CM-Fortran, and Paris (PARallel Instruction Set) in combination with Lisp, C, and Fortran 77). Single library calls can manage both concurrent application of a function to disjoint array segments, as well as concurrency in
Place, publisher, year, edition, pages
Springer-Verlag New York, 1993.
Computer and Information Science
IdentifiersURN: urn:nbn:se:kth:diva-70098OAI: oai:DiVA.org:kth-70098DiVA: diva2:485883
NR 201408052012-01-302012-01-30Bibliographically approved