中文名: 现代体系结构的优化编译器
原名: Optimizing Compilers for Modern Architectures,A Dependence-Based Approach
作者: (美)Randy Allen,Ken Kennedy
图书分类: 计算机与网络
资源格式: PDF
版本: 扫描版
出版社: Morgan Kaufmann
书号: 1558602860
发行时间: 2001年
地区: 美国
语言: 英文
简介:
内容简介:
本书介绍对现代体系结构的编译器进行优化的方法,理论基础是基于循环依赖的。分析基于依赖的变换的正确性论述和依赖测试的详细过程。剖析怎样扩展依赖去处理循环嵌套中的控制流以及跨越整个程序的过程。本书还讨论怎样能用依赖来回答现代计算机系统编译中的众多重要问题,包括支持不同类型体系结构(例如,向量、多处理器、超标量)的并行化,存储层次结构的编译器管理,带指令级并行性的机器的指令调度。最后,介绍一些不大为人熟知的应用,如硬件设计、数组语言实现以及消息传递系统的编译。
设计具有高性能微处理器的现代计算机体系结构,能够极大地提高计算机在性能方面的潜在优势。然而其高度的复杂性使得产生有效代码和实现其全部优势变得愈加困难。这本出自两位学术权威的具有里程碑意义的教科书,重点阐述了编译器对于解决这个至关重要问题所起到的关键作用。
数据依赖是在高性能微处理器和并行体系结构上优化程序的基本编译器分析工具。它能使所编写的编译器自动地将简单的串行程序转换成具有现代体系结构特征的程序。数据依赖支持许多变换策略,也应用于一些重要的优化问题,本书对此做了全面介绍,并对基于数据依赖的编译器优化的重要性和广泛应用性进行了论证,给出了理解和实现它们所需要的基础,同时还为手工转换程序提供了详细说明。
书中介绍的方法是基于过去二十多年的研究成果.取材于在美国Rice大学的研究原型和几个有关的商业系统中实现的策略。致力于现代计算机体系结构设计和优化编译器的研究人员、业界专家和研究生都可以从本书中获益。
本书特点
提供一种简单实用的算法和方法的指南,在高性能微处理器和并行系统中是最有效的
用处理过的例子示范每个变换
用实例分析编译器如何实现每一章中描述的理论和实践
介绍存储层次结构问题的最完善的处理方法
全书用依赖图来阐明排序关系
涉及各种语言。包括Fortran77、C、硬件定义语言、Fortran 90和High Performance Fortran
内容截图: