Monte Carlo techniques in code optimization

  • Authors:
  • Dean Jacobs;Jan Prins;Peter Siegel;Kenneth Wilson

  • Affiliations:
  • Computer Science Dept., Cornell University, Ithaca, New York;Computer Science Dept., Cornell University, Ithaca, New York;Computer Services, Cornell University, Ithaca, New York;Lab. of Nuclear Studies, Cornell University, Ithaca, New York

  • Venue:
  • MICRO 15 Proceedings of the 15th annual workshop on Microprogramming
  • Year:
  • 1982

Quantified Score

Hi-index 0.00

Visualization

Abstract

Effective optimization of FPS Array Processor assembly language (APAL) is difficult. Instructions must be rearranged and consolidated to minimize periods during which the functional units remain idle or perform unnecessary tasks. Register conflicts and branches cause complications. Deterministic algorithms to arrange instructions traditionally use complex heuristics which are tailored to specific inputs. A non-deterministic approach can be simpler and effective on a large class of inputs. This is a progress report on the “Monte Carlo” optimizer under construction at Cornell University by the authors. This optimizer randomly modifies the text of an APAL program without changing its meaning. Modifications which improve the program are favored. A set of six elementary transformations are the basis for modifications.