Volume 7, Issue 1 -
Spring/Summer 1999

Volume 6, Issue 3
Fall 1998

Volume 6, Issue 2
Spring/Summer 1998

Volume 6, Issue 1
Winter 1998

Volume 5, Issue 4
Fall 1997

Volume 5, Issue 3
Summer 1997

Volume 5, Issue 2
Spring 1997

Volume 5, Issue 1
Winter 1997

Volume 4, Issue 4
Fall 1996

Volume 4, Issue 3
Summer 1996

Volume 4, Issue 2
Spring 1996

Volume 4, Issue 1
Winter 1996

Volume 3, Issue 4
Fall 1995

Volume 3, Issue 3
Summer 1995

Volume 3, Issue 2
Spring 1995

Volume 3, Issue 1
January 1995

Volume 2, Issue 4
October 1994

Volume 2, Issue 3
July 1994

Volume 2, Issue 2
April 1994

Volume 2, Issue 1
January 1994

Volume 1, Issue 4
October 1993

Volume 1, Issue 3
July 1993

Volume 1, Issue 2
April 1993

Volume 1, Issue 1
January 1993

Massively Scalar Compiler Project

Preston Briggs, Keith Cooper, Tim Harvey, Ken Kennedy, Rob Shillingsburg, Lisa Thomas, Linda Torczon, Rice University; Steve Carr, Michigan Technological University


The Massively Scalar Compiler Project at Rice University is an ARPA- sponsored project investigating compilation techniques for modern microprocessors. The project's goal is to improve the level of routinely attainable performance on modern microprocessors. The research focuses on several issues that arise in uniprocessor systems: compiler management of the memory hierarchy, code generation for microprocessors with instruction-level parallelism, and classical code optimization. While the project does not directly address multiprocessor parallelism, its results should find application in compilers for massively parallel machines because they are almost always built from microprocessors.

A key product of the project is a laboratory compiler. When completed, it will include an optimizer and code generator for the ILOC 93 intermediate language. The optimizer consists of a series of passes, including constant propagation, partial redundancy elimination, global value numbering, strength reduction, and dead code elimination. The code generator will include phases to perform address mode selection, instruction scheduling, and register allocation. A separate tool allows program-driven simulation of the memory-hierarchy behavior of procedures that have been compiled with the system.

The code for the compiler is being written in C using WEB and will be distributed, as completed, through the CRPC's Softlib system. The code is intended to fulfill two different purposes. It can provide working implementations of the techniques for researchers interested in using ILOC 93. The individual WEBs should also serve as reference implementations for people writing new versions of these methods into their own compilers. Of course, the WEBs contain a level of detail not found in published papers. The first WEBs should be available from Softlib in November 1993.

A source-to-source translator has been built to perform register and cache blocking on Fortran codes. It uses the ParaScope system as a base and is included in the ParaScope 1.0 distribution (available from Softlib).

The current documentation on ILOC 93 is available from Softlib as CRPC technical report CRPC-TR93323. The report describes ILOC 93 and its use.


Table of Contents

News | From the Director | Parallel Profile | Research Focus | Work in Progress | Education / Outreach | Resources | Calendar | CRPC Home