Concert Implementation Techniques (CSAG)
Concert Implementation Techniques
A goal of the Concert project is to develop efficient implementations
of concurrent object-oriented languages. The Concert system employs a
variety of compiler and runtime techniques to achieve efficient
implementation.
Compiler Analysis and Optimization
The Concert compiler employs interprocedural flow analysis (type
inference), optimization directly procedure and class cloning, and a
wealth of traditional techniques such as inlining and code motion to
achieve performance competitive with C
programs. These optimization techniques are generally applicable
to both sequential and parallel programs. For example, the Concert
compiler outputs code superior to many commercial C++ compilers.
These techniques are documented by technical papers both on the
analysis and optimization techniques as well as their effectiveness on
benchmarks and applications.
Runtime Techniques
The Concert runtime a wide range of novel techniques to support
efficient execution on both shared memory and distributed memory
parallel machines. For example, the Concert runtime employs efficient
communication primitives
and multithreading to tolerate latency. To minimize the overheads of
multithreading, threads are created only lazily, and stack-based
execution is used whenever possible.
Back to CSAG home page
Last updated November 2,1995
Andrew A. Chien
webmaster