Results 1 -
3 of
3
A Customizable Substrate for Concurrent Languages
- In ACM SIGPLAN '91 Conference on Programming Language Design and Implementation
, 1992
"... We describe an approach to implementing a wide-range of concurrency paradigms in high-level (symbolic) programming languages. The focus of our discussion is sting, a dialect of Scheme, that supports lightweight threads of control and virtual processors as first-class objects. Given the significant ..."
Abstract
-
Cited by 25 (7 self)
- Add to MetaCart
We describe an approach to implementing a wide-range of concurrency paradigms in high-level (symbolic) programming languages. The focus of our discussion is sting, a dialect of Scheme, that supports lightweight threads of control and virtual processors as first-class objects. Given the significant degree to which the behavior of these objects may be customized, we can easily express a variety of concurrency paradigms and linguistic structures within a common framework without loss of efficiency. Unlike parallel systems that rely on operating system services for managing concurrency, sting implements concurrency management entirely in terms of Scheme objects and procedures. It, therefore, permits users to optimize the runtime behavior of their applications without requiring knowledge of the underlying runtime system. This paper concentrates on (a) the implications of the design for building asynchronous concurrency structures, (b) organizing large-scale concurrent computations, and (c)...
Toward a Methodology of Optimizing Programs for High-Performance Computers
, 1991
"... This report describes experiences in porting the Perfect Benchmarks R fl programs to the Alliant FX/8 and Cedar machines. Although there is much to learn before we can really say we know how to optimize programs successfully for parallel computers in general and for hierarchical shared-memory archi ..."
Abstract
-
Cited by 15 (9 self)
- Add to MetaCart
This report describes experiences in porting the Perfect Benchmarks R fl programs to the Alliant FX/8 and Cedar machines. Although there is much to learn before we can really say we know how to optimize programs successfully for parallel computers in general and for hierarchical shared-memory architectures in particular, it is hoped that this report will be helpful to those who are beginning to port and transform programs for parallel machines. Perhaps it is even an interesting reference for experts. In addition, this paper summarizes our experience with the programming tools we used and discusses tools that could have helped to increase the productivity of the optimization process. This information is believed to be a useful basis for future tool development projects. 1 Introduction This paper describes the process of optimizing the Perfect Benchmarks R fl programs for the Alliant FX/8 and the Cedar multiprocessor [Sta91]. This optimization effort, made at CSRD, led to significant ...
Locality Abstractions for Parallel and Distributed Computing
, 1994
"... Temporal and spatial locality are significant concerns in the design and implementation of any realistic parallel or distributed computing system. Temporal locality is concerned with relations among objects that share similar lifetimes and birth dates; spatial locality is concerned with relati ..."
Abstract
- Add to MetaCart
Temporal and spatial locality are significant concerns in the design and implementation of any realistic parallel or distributed computing system. Temporal locality is concerned with relations among objects that share similar lifetimes and birth dates; spatial locality is concerned with relations among objects that share information. Exploiting temporal locality can lead to improved memory behavior; exploiting spatial locality can lead to improved communication behavior. Linguistic, compiler, and runtime support for locality issues is especially important for unstructured symbolic computations in which lifetimes and sharing properties of objects are not readily apparent. Language abstractions for spatial and temporal locality include mechanisms for grouping related threads of contr...

