作者:《Optimizing Compilers for Modern Architectures》书籍
出版社:Morgan Kaufmann
出版年:2001-10-10
评分:7.8
ISBN:9781558602861
所属分类:网络科技
Modern computer architectures designed with high-performance microprocessors offer tremendous potential gains in performance over previous designs. Yet their very complexity makes it increasingly difficult to produce efficient code and to realize their full potential. This landmark text from two leaders in the field focuses on the pivotal role that compilers can play in addressing this critical issue.
The basis for all the methods presented in this book is data dependence, a fundamental compiler analysis tool for optimizing programs on high-performance microprocessors and parallel architectures. It enables compiler designers to write compilers that automatically transform simple, sequential programs into forms that can exploit special features of these modern architectures.
The text provides a broad introduction to data dependence, to the many transformation strategies it supports, and to its applications to important optimization problems such as parallelization, compiler memory hierarchy management, and instruction scheduling. The authors demonstrate the importance and wide applicability of dependence-based compiler optimizations and give the compiler writer the basics needed to understand and implement them. They also offer cookbook explanations for transforming applications by hand to computational scientists and engineers who are driven to obtain the best possible performance of their complex applications.
The approaches presented are based on research conducted over the past two decades, emphasizing the strategies implemented in research prototypes at Rice University and in several associated commercial systems. Randy Allen and Ken Kennedy have provided an indispensable resource for researchers, practicing professionals, and graduate students engaged in designing and optimizing compilers for modern computer architectures.
* Offers a guide to the simple, practical algorithms and approaches that are most effective in real-world, high-performance microprocessor and parallel systems.
* Demonstrates each transformation in worked examples.
* Examines how two case study compilers implement the theories and practices described in each chapter.
* Presents the most complete treatment of memory hierarchy issues of any compiler text.
* Illustrates ordering relationships with dependence graphs throughout the book.
* Applies the techniques to a variety of languages, including Fortran 77, C, hardware definition languages, Fortran 90, and High Performance Fortran.
* Provides extensive references to the most sophisticated algorithms known in research.
Preface
Chapter 1 - Compiler Challenges for High-Performance Architectures
Chapter 2 - Dependence: Theory and Practice
Chapter 3 - Dependence Testing
Chapter 4 - Preliminary Transformations
Chapter 5 - Enhancing Fine-Grained Parallelism
Chapter 6 - Creating Coarse-Grained Parallelism
Chapter 7 - Handling Control Flow
Chapter 8 - Improving Register Usage
Chapter 9 - Managing Cache
Chapter 10 - Scheduling
Chapter 11 - Interprocedural Analysis and Optimization
Chapter 12 - Dependence in C and Hardware Design
Chapter 13 - Compiling Array Assignments
Chapter 14 - Compiling High Performance Fortran
Appendix - Fundamentals of Fortran 90
References
Index
大数据猩球-海量数据处理实践指南 本书特色 本书以实用的、可操作的视角解释了大数据——采用黑猩猩和大象的隐喻,基于棒球统计数据集,使用a...
《Python人脸识别:从入门到工程实践》内容简介:本书讲解了人脸识别模型的实现原理和特点,更重要的是强调了工程上的实践能力,对
《晏殊词选》内容简介:晏殊,字同叔,因他死后谥为元献,所以后人又称之为晏元献。抚州临川(今江西抚州)人。为北宋前期词坛领袖
《有没有一首歌让你热泪盈眶》内容简介:每个人的生命中,都有一座青春的巢。少年的巢在美梦里,中年的巢在回忆里,而青年的巢在手
《写好论文》内容简介:怎样写好论文? 一直以来,“感悟式教授”和“体悟式学习”是论文写作主要的提升模式。随着学术水平的提升和
《JavaScript面向对象编程指南》内容包括:JavaScript作为一门浏览器语言的核心思想;面向对象编程的基础知识及其在JavaScript中
デザインのあらゆる手法が凝縮!55年間の装幀900点!!強力なパワーを放つ作品を次々と生み出した、世界的デザイナー・横尾忠則。一
《包豪斯:大师和学生们》由弗兰克•惠特福德等所著,以时间为主线,通过在包豪斯学习和工作过的大师级人物的视角,精心梳理了包豪
《Flash第1步:ActionScript编程篇》(珍藏版)为《Flash第一步》的ActionScript编程篇,包含后4部分内容。第3部分为ActionS...
《不懂财报就当不好经理》内容简介:随着市场经济的快速发展,无论是企业经营者还是普通职员,读懂财务报表都是一件非常有必要的事
《国家竞争优势(下)》内容简介:《国家竞争优势(下)》基于10个主要发达国家的研究,根据企业凭以竞争的生产率,迈克尔•波特第一
本书全面深入地剖析了面向对象的PHP编程与设计。首先介绍了PHP的OO特性,包括类声明、对象实例化、继承、方法与属性封装以及静态
电脑组装.维护.故障排除简明教程 本书特色 《电脑组装、维护、故障排除简明教程》以就业为导向,以培养实用型人才为目标,注重实训教学,实现理论教学与实践教学的有机...
《网店运营、美工视觉、客服(入门版)》内容简介:CETC启蒙认证主要针对电子商务零基础人员及预备创业人员,以知识、理念普及和创
《HTML5经典实例》对于从中级到高级的Web和移动Web开发者来说是绝佳之选,它帮助你选择对你有用的HTML5功能,并且帮助你体验其他
《可解释机器学习:黑盒模型可解释性理解指南》内容简介:机器学习虽然对改进产品性能和推进研究有很大的潜力,但无法对它们的预测
谣言几乎与人类历史同龄。随着互联网的兴起和普及,谣言变得无处不在。在言论自由的民主社会,从来就不乏谣言的传播渠道。危机时
TheGNUAutotoolsmakeiteasyfordeveloperstocreatesoftwarethatisportableacrossmanyUn...
《党意与民意》内容简介:本书讨论了1933—1934年北平市参议会、1946年北平市临时参议会和1947—1948年北平市正式参议会召开的背景
《编译原理》习题解析与上机指导-第三版 本书特色 《习题解析与上机指导(第3版)》:普通高等教育“十一五”规划教材《编译原理》习题解析与上机指导-第三版 内容简...