计算机体系结构的铁律(iron law)
计算机体系结构的铁律可由下面公式来描写叙述:
从Programmer的角度来看,处理器的性能就是运行程序的耗费的时间。所以用Time/Program来刻画处理器性能。而这个简单的公式背后是有很丰富的内涵的,详细地说,就是该公式又能够展开为下面三个简单有内涵的公式。
- Instructions/Program:表示一个程序相应的指令数量,这部分工作主要集中在编译器领域,一般来说,指令数量越少运行速度越快。比如。用GCC编译器时,使用-O3 当然会比-O0 快不少。假设处理器支持SSE。编译器对带循环的计算密集型部分的应用进行自己主动循环展开或者向量化的话。速度还能提升一个等级。 当然,也不是那么绝对,RISC处理器的编译器一般来说编译出来的指令数量比較多。但运行速度不一定会比CISC慢。
- Cycles/Instruction:表示运行一条指令所须要的时钟周期数量,这部分工作主要集中在处理器设计领域。为了减少处理器的CPI,大家最耳熟能详的方法便是使用流水线。比如从传统的5级流水添加到25级流水,当然也会涉及到非常多其它问题,诸如遇到分支时须要使用气泡来填充流水线,这将导致的性能损失(由于平均运行6~7条指令就会越到一个分支)。当然也有解决的方法,比如使用Trace Cache。或者使用超长指令字(VLIW)的办法提升一个周期能处理的指令数量。Intel的高级矢量扩展指令集(AVX, Advanced
Vector Extensions)也属于这个范畴。对了,还有支持乱序运行的处理器。招数五花八门,终于目标都是为了减小CPI,即单个指令须要的时钟周期。 - Time/Cycle:每一个时钟周期相应的时间。其倒数就是时钟频率(f,frequency)。这就是芯片设计者的领域了。在考虑给定的处理器架构下。如何集成很多其它的二极管同一时候提升到更高的主频便是他们的任务。
处理器的频率从处理器诞生到2007年左右的时候都一直在提升,之后反而在下降了。主要原因便是功耗问题(Dennard Scaling Law),功耗和频率的平方成正比。所以通过减少主频,添加核数。便成了处理器设计的主流模式了。
计算机体系结构的铁律(iron law)的更多相关文章
- 高效能人士必知铁律--note
偶然看到了<高效能人士 必知铁律>这本书,我比较少看成功学,但是这本书把很多著名的成功学书籍整理出来,有时会让你耳目一新,有些观点尽管是常识,但是却加深了你对它们的理解,比如: 只要在积极 ...
- 转载 SQL Server中索引管理之六大铁律
转载原地址 http://jingyan.baidu.com/article/48a42057c03bd7a924250429.html 索引是以表列为基础的数据库对象.索引中保存着表中排序的索引列, ...
- MySQL单表数据不超过500万:是经验数值,还是黄金铁律?
今天,探讨一个有趣的话题:MySQL 单表数据达到多少时才需要考虑分库分表?有人说 2000 万行,也有人说 500 万行.那么,你觉得这个数值多少才合适呢? 曾经在中国互联网技术圈广为流传着这么一个 ...
- MySQL单表数据不要超过500万行:是经验数值,还是黄金铁律?
本文阅读时间大约3分钟. 梁桂钊 | 作者 今天,探讨一个有趣的话题:MySQL 单表数据达到多少时才需要考虑分库分表?有人说 2000 万行,也有人说 500 万行.那么,你觉得这个数值多少才合适呢 ...
- 计算机体系结构总结_Pipeline
Textbook:<计算机组成与设计——硬件/软件接口> HI<计算机体系结构——量化研究方法> QR 在前面一节里我们有了一块简单的RISC CPU,包括 ...
- SQL Server索引管理之六大铁律
索引是以表列为基础的数据库对象.索引中保存着表中排序的索引列,并且纪录了索引列在数据库表中的物理存储位置,实现了表中数据的逻辑排序.通过索引,可以加快数据的查询速度和减少系统的响应时间;可以使表和表之 ...
- 计算机体系结构——CH5 标量处理机
计算机体系结构--CH5 标量处理机 右键点击查看图像,查看清晰图像 X-mind 计算机体系结构--CH5 标量处理机 先行控制技术 指令得重叠执行方式 顺序执行方式 一次重叠执行方式 二次重叠技术 ...
- 计算机体系结构——CH4 输入输出系统
计算机体系结构--CH4 输入输出系统 右键点击查看图像,查看清晰图像 X-mind 计算机体系结构--CH4 输入输出系统 输入输出原理 特点 实时性 与设备无关性 异步性 输入输出系统的组织方式 ...
- 计算机体系结构——CH3存储系统
计算机体系结构--CH3存储系统 右键点击查看图像,查看清晰图像 X-mind 计算机体系结构--CH3存储系统 存储系统原理 主要性能 速度 容量 价格 两种存储系统 Cache与主存储器 虚拟存储 ...
随机推荐
- 01matplotlib
一. 简介 1.概念 matplotlib:最流行的Python底层绘图库,主要做数据可视化图表,名字取材于MATLAB,模仿MATLAB构建. 2.作用 1)能将数据进行可视化,更直观的呈现 2)使 ...
- luogu P3353 在你窗外闪耀的星星
问题:天空可以理解为一条数轴,在这条数轴上分布着许多颗星星,对于每颗星星都有它的位置Xi和自身的亮度Bi.而窗户所能看到的范围是一个给出的参数W,我们看到的星星也包括窗户边缘的星星.现在,要你求出调整 ...
- css 实践记录
子绝父相 https://developer.mozilla.org/zh-CN/docs/Web/CSS/position 利用子绝父相来实现一种比较老的居中方式:1.明确宽度:2.定位左边到容器的 ...
- tiny4412学习笔记-将uboot、zImage、文件系统烧到emmc中 (转)
http://blog.chinaunix.net/uid-30025978-id-4788683.html 1.首先还是要将u-boot写入SD卡中从SD卡启动. 使用读卡器将SD插入电脑中,使用u ...
- 如何禁用python警告
有-W选项. python -W ignore foo.py 所属网站分类: python基础 > 综合&其它 作者:jiem 链接:http://www.pythonheidong.c ...
- 剑指Offer(书):实现单例模式
题目:设计一个类,我们只能生成该类的一个实例. 生成一个单例模式,有下列几种常用解法. 1.双重检查锁. 当运行在多线程环境中,此方法可以正常实现单例模式. public class Singleto ...
- Hibernate入门(1)——环境搭建
什么是Hibernate?为什么使用Hibernate?Hibernate有什么优缺点?网上很多大神的文章又详细又通俗易懂. 步骤: 1.创建数据库表格. 2.编写JavaBean实体类. 3.下载H ...
- BestCoder Round #79 (div.2)-jrMz and angles,,暴力求解~
jrMz and angle Time Limit: 2000/1000 MS (Java/Others) Memory Limit: 65536/65536 K (Java/Other ...
- POJ 1386 单词接龙问题
题目大意: 给一堆字母,让它们进行接龙,要头对尾能够接的上,问有没有一种方法让所有成语都完成接龙 这道题实际上是在考虑是否存在一条欧拉通路,每个单词产生一条有向线段,由第一个字母指向最后一个字母 这道 ...
- msp430项目编程10
msp430中项目---电子密码锁 1.扫描键盘工作原理 2.电路原理说明 3.代码(显示部分) 4.代码(功能实现) 5.项目总结 msp430项目编程 msp430入门学习