Architecture & Language Implementation

Object Systems Laboratory

Research into persistent storage systems for object oriented languages, garbage collection algorithms, and the Java Virtual Machine.

Systems for Advanced Architecture

Research into compiler optimizations for improving memory system performance, parallelism, and object oriented languages; and compiler architectures.

Specialized Parallel Architectures

Research into computer architectures for specialized applications such as computer vision and benchmarks for performance evaluation of these architectures and applications.
These three research groups collaborate closely and tie together the research areas of computer architecture, computer language design, and compilation.

The material in these web pages is presented to ensure timely dissemination of scholarly and technical work. Copyright and all rights therein are retained by authors or by by other copyright holders. All persons copying this information are expected to adhere to the terms and constraints invoked by each author's or organization's copyright. In most cases, these works may not be reposted without the explicit permission of the copyright holder.

Current Research Projects

DaCapo: Dynamic Cooperative Performance Optimization for Java
The CoGenT system is an integrated simulator/compiler environment. This environment includes a machine description language for describing several aspects of a machine architecture, tools that manipulate this language, and generators that produce "plug in" components for existing compiler and simulator frameworks.
Dynamic SimpleScalar
Dynamic SimpleScalar is a version of the popular SimpleScalar program that simulates the PowerPC architectures (currently AIX and Linux).
Scale: A Compiler Framework for Heterogeneous Systems
Scale is a compiler framework that targets heterogeneous parallel systems. These systems provide high performance for large, diverse applications, but are difficult to program without special compiler support.
Score: A Compiler Intermediate Representation
Understanding, Improving, and Exploiting Data Locality
Analyzing and Optimizing Object-oriented Languages
Garbage Collection
Analytical models for object allocation and deallocation behavior
Parallel Architectures
This area of our research is involved in building high-performance, application-specific parallel architectures and software for heterogeneous systems.
Compiler Optimizations for Shared-Memory Parallel Architectures
Distributed and Parallel Information Retrieval
This research focuses on making information retrieval (IR) systems truly useful by providing timely access to text collections both locally and across the Internet.
Memory System Performance
Hardware for Real-Time Processing
Heterogeneous Processing
Computer Vision
Persistent Programming Languages
Persistent Object Stores
Transactional memory

Previous Projects

We have descriptions available for some of our prior research projects:

We developed a heterogeneous, tightly coupled system for real-time knowledge-based computer vision, called the Image Understanding Architecture.
In conjunction with the Real-Time Systems research group, we built a single-chip parallel array, called SSCoP, that implements the scheduling kernel of the Spring real-time operating system.
High Performance Benchmarks
We have also constructed the ARPA Image Understanding Benchmark. This benchmark is intended to measure the appropriateness of parallel machines for image processing.
ParaScope: A Parallel Programming Environment


Available Publications

Faculty, Staff, Students


UMass CS Research
Computer Science Department
University of Massachusetts, Amherst.


Page Accesses:


(Last changed: March 24, 1998.)