Instruction scheduling and register allocation for the MCCAT

Instruction scheduling and register allocation play very important roles in compilation techniques for high-performance computers. In this thesis we study different analyses and transformations that may affect the performance of instruction scheduling and register allocation. === An important techni...

Full description

Bibliographic Details
Main Author: Zhang, Yingwei
Other Authors: Hendren, Laurie (advisor)
Format: Others
Language:en
Published: McGill University 1995
Subjects:
Online Access:http://digitool.Library.McGill.CA:80/R/?func=dbin-jump-full&object_id=22832
id ndltd-LACETR-oai-collectionscanada.gc.ca-QMM.22832
record_format oai_dc
spelling ndltd-LACETR-oai-collectionscanada.gc.ca-QMM.228322014-02-13T03:53:32ZInstruction scheduling and register allocation for the MCCATZhang, YingweiComputer Science.Instruction scheduling and register allocation play very important roles in compilation techniques for high-performance computers. In this thesis we study different analyses and transformations that may affect the performance of instruction scheduling and register allocation.An important technique for increasing code parallelism is alias analysis. Alias analysis can reduce the number of dependences in a Data Dependence Graph (DDG) by disambiguating address references. Our study shows that points-to analysis, the alias analysis method implemented in the McCAT compiler, can substantially increase parallelism in benchmarks with indirect memory references.In this thesis we also discuss the phase ordering problem of instruction scheduling and register allocation. An integrated approach--IPS (Integrated Prepass Scheduling) is implemented in the McCAT compiler. Experimental results show that IPS is an effective way to coordinate instruction scheduling and register allocation. Postpass scheduling and BDSF (Branch Delay Slots Filling) has been also implemented. Experiments were performed to measure the effectiveness of each scheduling method and combinations of the scheduling methods. These experiments show that IPS + postpass + BDSF is the best approach for the benchmarks studied.McGill UniversityHendren, Laurie (advisor)1995Electronic Thesis or Dissertationapplication/pdfenalephsysno: 001461529proquestno: MM05656Theses scanned by UMI/ProQuest.All items in eScholarship@McGill are protected by copyright with all rights reserved unless otherwise indicated.Master of Science (School of Computer Science.) http://digitool.Library.McGill.CA:80/R/?func=dbin-jump-full&object_id=22832
collection NDLTD
language en
format Others
sources NDLTD
topic Computer Science.
spellingShingle Computer Science.
Zhang, Yingwei
Instruction scheduling and register allocation for the MCCAT
description Instruction scheduling and register allocation play very important roles in compilation techniques for high-performance computers. In this thesis we study different analyses and transformations that may affect the performance of instruction scheduling and register allocation. === An important technique for increasing code parallelism is alias analysis. Alias analysis can reduce the number of dependences in a Data Dependence Graph (DDG) by disambiguating address references. Our study shows that points-to analysis, the alias analysis method implemented in the McCAT compiler, can substantially increase parallelism in benchmarks with indirect memory references. === In this thesis we also discuss the phase ordering problem of instruction scheduling and register allocation. An integrated approach--IPS (Integrated Prepass Scheduling) is implemented in the McCAT compiler. Experimental results show that IPS is an effective way to coordinate instruction scheduling and register allocation. Postpass scheduling and BDSF (Branch Delay Slots Filling) has been also implemented. Experiments were performed to measure the effectiveness of each scheduling method and combinations of the scheduling methods. These experiments show that IPS + postpass + BDSF is the best approach for the benchmarks studied.
author2 Hendren, Laurie (advisor)
author_facet Hendren, Laurie (advisor)
Zhang, Yingwei
author Zhang, Yingwei
author_sort Zhang, Yingwei
title Instruction scheduling and register allocation for the MCCAT
title_short Instruction scheduling and register allocation for the MCCAT
title_full Instruction scheduling and register allocation for the MCCAT
title_fullStr Instruction scheduling and register allocation for the MCCAT
title_full_unstemmed Instruction scheduling and register allocation for the MCCAT
title_sort instruction scheduling and register allocation for the mccat
publisher McGill University
publishDate 1995
url http://digitool.Library.McGill.CA:80/R/?func=dbin-jump-full&object_id=22832
work_keys_str_mv AT zhangyingwei instructionschedulingandregisterallocationforthemccat
_version_ 1716640861907845120