VECTOR C - A PROGRAMMING LANGUAGE FOR VECTOR PROCESSING (COMPILER, CYBER 205, LANGUAGE DESIGN)

KUO-CHENG LI, Purdue University

Abstract

This thesis presents the design of a vector language and its implementation on the CDC Cyber 205. The thesis begins with a design methodology and design goals for a new vector processing language--Vector C. Vector C, a superset of the (conventional) C programming language, allows users to implement vector algorithms in a direct and natural manner. Vector C retains the power and elegance of C while allowing users to fully exploit the underlying hardware features of a supercomputer (the 205). The implementation of Vector C was done in three major steps: extending the syntax of the base language to encompass the new vector processing features, bootstrapping an existing C compiler from a VAX/UNIX('(DAG)) system to the Cyber 205, and installing the new vector processing features. The efficiency and usefulness of Vector C were carefully analyzed by using instrumentation features added to the compiler. This instru- mentation provided data on the static characteristics and dynamic performance of Vector C programs. These experiments demon- strated that the new compiler could, in some cases, generate faster executing code than the existing 205 Fortran compiler. Several performance models were developed and used to analyze the effectiveness of algorithm implementations. ('(DAG))UNIX is a Trademark of Bell Laboratories.

Degree

Ph.D.

Subject Area

Computer science

Off-Campus Purdue Users:
To access this dissertation, please log in to our
proxy server
.

Share

COinS