Browse Prior Art Database

A Development Environment for Horizontal Microcode

IP.com Disclosure Number: IPCOM000127983D
Original Publication Date: 1986-Dec-31
Included in the Prior Art Database: 2005-Sep-14
Document File: 15 page(s) / 55K

Publishing Venue

Software Patent Institute

Related People

Alexander Aiken: AUTHOR [+4]

Abstract

This paper describes a development environment for horizontal microcode. The environ-ment uses Percolation Scheduling~a transformational system for parallelism extraction-and an interactive profiling system that gives the user control over the microcode compaction process while reducing the burdensome details of architecture, correctness-preservation, and synchro-nization. Through a graphical interface the user suggests what can be executed in parallel, while the system performs the actual changes using semantics-preserving transformations. If a request cannot be satisfied, the system reports the problem causing the failure. The user may then help eliminate the problem by supplying guidance or information not explicit in the code. Index Term8-microcode, compaction, Percolation Scheduling, environment, transforma-tion, parallelization, compiler

This text was extracted from a PDF file.
This is the abbreviated version, containing approximately 6% of the total text.

Page 1 of 15

THIS DOCUMENT IS AN APPROXIMATE REPRESENTATION OF THE ORIGINAL.

A Development Environment for Horizontal Microcode

Alexander Aiken* Alexandru Nicolaut

TR 86-785

September 1986

Department of Computer Science Cornell University Ithaca, NY 14853

*Supported in part by the Cornell NSF Supereornputing Center and an IBM fellowship. tSupported in part by NSF grant DCR-8502884 and the Cornell N'SF Supereornputing Center.

Abstract

This paper describes a development environment for horizontal microcode. The environ-ment uses Percolation Scheduling~a transformational system for parallelism extraction-and an interactive profiling system that gives the user control over the microcode compaction process while reducing the burdensome details of architecture, correctness-preservation, and synchro- nization. Through a graphical interface the user suggests what can be executed in parallel, while the system performs the actual changes using semantics-preserving transformations. If a request cannot be satisfied, the system reports the problem causing the failure. The user may then help eliminate the problem by supplying guidance or information not explicit in the code. Index Term8-microcode, compaction, Percolation Scheduling, environment, transforma-tion, parallelization, compiler

*Supported in part by the Cornell NSF Supercomputing Center and an IBM fellowship. tSupported in part by NSF grant DCR-8502884 and the Cornell NSF Supercomputing Center.

I Introduction

This paper describes a development environment for microprograms. The environment consists of a hierarchy of parallelizing transformations, an interactive profiler, and a graphical interface. The components of the system, their use, and future work are discussed. Our ultimate goal is to automatically generate better code than can be produced by human experts. However, due to the complexity of code-generation problems, a compiler must rely on heuristics which sometimes fail to produce optimal or nearly optimal code. Furthermore, the compiler's analysis of a program usually cannot capture the user's knowledge of the general problem; thus the user may be able to make decisions based on information not available to the compiler. The support environment we are building is designed to allow the user to control compaction and provide an integrated interface through which additional information that may assist in the optimization process can be supplied. In our system, the role of the compiler is to exploit the easily extractable parallelism. While this may suffice, the user can ."fine-tune' the code for better performance. The other components of our system, the profiler and graphical interface, are being designed to support this activity. The need for such interactive compilation has been widely recognized. An in-depth discussion of the desirability of such a system and its potential

Cornell University Page 1 Dec 31, 1986

Page 2 of 15

A Development Environment for Horizontal Microcode

advantages i...