垃圾内容,读书笔记,勿看

本书重在Computer Architecture,所以对compiler optimization没有做重点介绍,本章节算是对一些compiler optimization进行了科普。理解本章节,可以按照“计算机体系结构就是trade-off”这个主旨进行。囿于现实因素,存在很多限制,而编译优化就是在夹缝中就生存,在诸多条条框框中求得一个近优解。

3.2 Basic Compiler Techniques for Exposing ILP

类似于图灵机,由于现实的束缚,不可能存在无限长“纸带”的机器,就连地址无限长都做不到。现实附加了很多约束,例如资源有限的DRAM和磁盘。约束分为两类,理论约束实现约束

for (i = 999; i >= 0; i = i -1) x[i] = x[i] + s;

上述代码的理论约束有二:

  • 必须在 x[999] -> x[0] 每个元素上面加上s

这意味着,

  • 你按照什么样的形式遍历x无所谓,例如无论你是一次迭代4个元素,还是一次迭代999个元素;
  • 你按照什么样的形式加s也无所谓,例如你是 + (s + 1) - 1 还是 + (s - 1) + 1都无所谓。

这是理论上的upper bound,我们在实现的时候不可能改变语义,法无禁止皆自由只要“能力”够强,随便你玩儿

[Computer Architecture读书笔记] 3.2 Basic Compiler Techniques for Exposing ILP相关推荐

  1. [Computer Architecture读书笔记] H.2 Detecting and Enhancing Loop-Level Parallelism

    H.1 Introduction: Exploiting Instruction-Level Parallelism Statically 附录H对C3.2进行了的扩展,首先提出了探索ILP的四个技术 ...

  2. 《编码:隐匿在计算机软硬件背后的语言(Code:The Hidden Language of Computer Hardware and Software)》读书笔记

    声明 该文章是阅读<编码:隐匿在计算机软硬件背后的语言>一书之后整理出的读书笔记.若有错误,还需继续修正与增删. Preface 作者Charles Petzold是Windows编程界的 ...

  3. 《深入浅出DPDK》读书笔记(三):NUMA - Non Uniform Memory Architecture 非统一内存架构

    本文内容为读书笔记,摘自<深入浅出DPDK>. 47.NUMA系统 之前的章节已经简要介绍过NUMA系统,它是一种多处理器环境下设计的计算机内存结构.NUMA系统是从SMP(Symmetr ...

  4. PHP第十次实验总结,The Clean Architecture in PHP 读书笔记(十)

    laravel 这是clean architecture的第十篇,也是具体案例的第二篇,本篇会通过使用laravel框架,来开发我们的应用. 本文为系列文章的第十篇,完成的目录请查看Clean Arc ...

  5. 《Computer Graphics with OpenGL》计算机图形学读书笔记 02——计算机图形学软件

    这里是<Computer Graphics with OpenGL>英文原版第四版的读书笔记,预计每一章写一篇读书笔记.本篇为第二章,简要介绍计算机图形学的相关软件.图形学相关软件可分为两 ...

  6. PUB/SUB Pattern-Oriented Software Architecture v1巨详细读书笔记 11

    GoF的Observer有没有什么变体存在,他的别名可以叫什么?在本笔记中,Publisher-Subscriber(出版-订阅)模式为这些问题做了完美解答.在笔记的最后还描述了Pattern Sys ...

  7. 读书笔记:Comments On The Case for the Reduced Instruction Set Computer

    这三个月正拜读<量化研究方法>.并且读了一些相关的论文.这篇论文是个人翻译的.这篇论文代表了工业界对D.A. Patterson的<n The Case for the Reduce ...

  8. 《代码整洁之道 Clean Architecture》-读书笔记

    大家好,我是烤鸭: 关于<代码整洁之道>,记录一下读书笔记. 代码整洁之道 第一章 整洁代码 整洁代码的艺术 第二章 有意义的命名 避免误导 有意义的区分 使用读得出来和可搜索的名字 避免 ...

  9. The art of computer programming Donald E. Knuth volumn one third edition读书笔记1

    大名鼎鼎knuth的编程艺术,要读一读,特此写下读书笔记,引用网络红人留几手的话,我觉得我是一个艺术家,哈哈. 书的开头是讲读此书步骤,感觉Knuth萌萌哒: 1,请按以下步骤阅读,除非你已经开始读了 ...

最新文章

  1. foreach判断最后一个_JavaScript很简单?那你理解的forEach真的对吗?
  2. 7、redis之使用spring集成commons-pool来操作常见数据类型
  3. exfat最佳单元大小_047|仓储物流自动化系统中的物料单元
  4. python中isdigit()、isdecimal()和isnumeric的区别!
  5. 前端学习(2600):响应控制
  6. 40 道数据挖掘面试真题大放送!
  7. mate7 刷机 android 7,Mate7 四大版本完整稳定版刷机包大集合!
  8. vue computed使用_前端发展方向指南—Vue运行机制
  9. 1.ElementUI中table的sortable使用
  10. 文本推理_基于事理图谱的文本推理
  11. uva 10803(floyd)
  12. 微信小程序电商实战-首页(下)
  13. GDI+处理带透明区域的png图片
  14. java diamond 有什么用_Diamond语法何时在Java 8中不起作用?
  15. [VC++]控制台程序窗口隐藏
  16. 正余弦转化之诱导公式:“奇变偶不变、符号看象限”
  17. s3cCTF(1)crypto
  18. iOS第三方支付——银联支付
  19. java代码实现十进制到二进制的转化
  20. 视频文件太大?使用FFmpeg来无损压缩它

热门文章

  1. Guid的生成和数据修整(去除空格和小写字符)
  2. java凑数问题,包子凑数——Java
  3. 多线程操作同一个变量
  4. AQS(AbstractQueuedSynchronizer)是什么?
  5. JAVA——jdk8的下载与安装,win10下配置JDK环境变量
  6. 2D变形效果有几种?变形效果讲解
  7. 红米Android降级,红米Note 5(安卓9.0 不要降级刷低版本)纯净ROOT线刷包分享,一键救砖教程,轻松刷回官方系统,流畅如初!...
  8. 天津大学大作业管理概论答案
  9. char*、char**和char***的使用
  10. 【修复H5农场复利】黄金家园农场理财游戏源码Thinkphp开发 带商城仓库商店模块