计算机体系结构的铁律可由下面公式来描写叙述:

从Programmer的角度来看,处理器的性能就是运行程序的耗费的时间。所以用Time/Program来刻画处理器性能。而这个简单的公式背后是有很丰富的内涵的,详细地说,就是该公式又能够展开为下面三个简单有内涵的公式。

  1. Instructions/Program:表示一个程序相应的指令数量,这部分工作主要集中在编译器领域,一般来说,指令数量越少运行速度越快。比如。用GCC编译器时,使用-O3 当然会比-O0 快不少。假设处理器支持SSE。编译器对带循环的计算密集型部分的应用进行自己主动循环展开或者向量化的话。速度还能提升一个等级。 当然,也不是那么绝对,RISC处理器的编译器一般来说编译出来的指令数量比較多。但运行速度不一定会比CISC慢。
  2. Cycles/Instruction:表示运行一条指令所须要的时钟周期数量,这部分工作主要集中在处理器设计领域。为了减少处理器的CPI,大家最耳熟能详的方法便是使用流水线。比如从传统的5级流水添加到25级流水,当然也会涉及到非常多其它问题,诸如遇到分支时须要使用气泡来填充流水线,这将导致的性能损失(由于平均运行6~7条指令就会越到一个分支)。当然也有解决的方法,比如使用Trace Cache。或者使用超长指令字(VLIW)的办法提升一个周期能处理的指令数量。Intel的高级矢量扩展指令集(AVX, Advanced
    Vector Extensions)也属于这个范畴。对了,还有支持乱序运行的处理器。招数五花八门,终于目标都是为了减小CPI,即单个指令须要的时钟周期。
  3. Time/Cycle:每一个时钟周期相应的时间。其倒数就是时钟频率(f,frequency)。这就是芯片设计者的领域了。在考虑给定的处理器架构下。如何集成很多其它的二极管同一时候提升到更高的主频便是他们的任务。

    处理器的频率从处理器诞生到2007年左右的时候都一直在提升,之后反而在下降了。主要原因便是功耗问题(Dennard Scaling Law),功耗和频率的平方成正比。所以通过减少主频,添加核数。便成了处理器设计的主流模式了。

计算机体系结构的铁律(iron law)的更多相关文章

  1. 高效能人士必知铁律--note

    偶然看到了<高效能人士 必知铁律>这本书,我比较少看成功学,但是这本书把很多著名的成功学书籍整理出来,有时会让你耳目一新,有些观点尽管是常识,但是却加深了你对它们的理解,比如: 只要在积极 ...

  2. 转载 SQL Server中索引管理之六大铁律

    转载原地址 http://jingyan.baidu.com/article/48a42057c03bd7a924250429.html 索引是以表列为基础的数据库对象.索引中保存着表中排序的索引列, ...

  3. MySQL单表数据不超过500万:是经验数值,还是黄金铁律?

    今天,探讨一个有趣的话题:MySQL 单表数据达到多少时才需要考虑分库分表?有人说 2000 万行,也有人说 500 万行.那么,你觉得这个数值多少才合适呢? 曾经在中国互联网技术圈广为流传着这么一个 ...

  4. MySQL单表数据不要超过500万行:是经验数值,还是黄金铁律?

    本文阅读时间大约3分钟. 梁桂钊 | 作者 今天,探讨一个有趣的话题:MySQL 单表数据达到多少时才需要考虑分库分表?有人说 2000 万行,也有人说 500 万行.那么,你觉得这个数值多少才合适呢 ...

  5. 计算机体系结构总结_Pipeline

    Textbook:<计算机组成与设计——硬件/软件接口>  HI<计算机体系结构——量化研究方法>          QR 在前面一节里我们有了一块简单的RISC CPU,包括 ...

  6. SQL Server索引管理之六大铁律

    索引是以表列为基础的数据库对象.索引中保存着表中排序的索引列,并且纪录了索引列在数据库表中的物理存储位置,实现了表中数据的逻辑排序.通过索引,可以加快数据的查询速度和减少系统的响应时间;可以使表和表之 ...

  7. 计算机体系结构——CH5 标量处理机

    计算机体系结构--CH5 标量处理机 右键点击查看图像,查看清晰图像 X-mind 计算机体系结构--CH5 标量处理机 先行控制技术 指令得重叠执行方式 顺序执行方式 一次重叠执行方式 二次重叠技术 ...

  8. 计算机体系结构——CH4 输入输出系统

    计算机体系结构--CH4 输入输出系统 右键点击查看图像,查看清晰图像 X-mind 计算机体系结构--CH4 输入输出系统 输入输出原理 特点 实时性 与设备无关性 异步性 输入输出系统的组织方式 ...

  9. 计算机体系结构——CH3存储系统

    计算机体系结构--CH3存储系统 右键点击查看图像,查看清晰图像 X-mind 计算机体系结构--CH3存储系统 存储系统原理 主要性能 速度 容量 价格 两种存储系统 Cache与主存储器 虚拟存储 ...

随机推荐

  1. 万能的搜索--之DFS(二)

    (一)深度优先搜索(DFS) 我们先给出深度优先的解决办法,所谓深度优先搜索,在迷宫问题里就是不撞南墙不回头,能走得深一点就尽量深一点.如果碰到了墙壁就返回前一个位置尝试其他的方向.在<啊哈!算 ...

  2. MYSQL数据库攻防与加固

    这是“官方”原本的模样搬过来的..写的很粗略啊.还有篇详细的请查看:MySQL安全加固题目及答案参考解析 启动xserver-mysql,进入xserver-mysql,开始实验,实验步骤如下: 1. ...

  3. spring-mvc jackson配置json为空不输出

    使用的spring-mvc版本是4.1.6,jackson版本是2.1.4 在spring-mvc配置文件中添加以下代码就行 <mvc:annotation-driven> <mvc ...

  4. C/C++函数指针详解(转)

    这两天在研究C/C++的函数指针,找到一篇讲解比较详细的博客,内容有点多,但是讲解得比较详细,适合初学者.特转之: 1.     无处不见的函数指针 使用函数指针可以设计出更优雅的程序,比如设计一个集 ...

  5. python_random模块

    random模块 import random print(random.random()) # 大于0且小于1之间的小数 print(random.randint(1, 6)) # 大于等于1且小于等 ...

  6. ASP.NET MVC______VS2012

    1,在VS2010中,选中指定的代码段,可以拖拽到工具箱中,形成标签,以后还想书写类似的代码,双击鼠标即可. 2,在VS2012中,可以在注释上标注//TODO:我是注释 这样,注释就会出现在任务列表 ...

  7. Java学习之集合框架的迭代器--Iteratorjk及ListItertor接口

    通常情况下,你会希望遍历一个集合中的元素.例如,显示集合中的每个元素.一般遍历数组都是采用for循环或者增强for,这两个方法也可以用在集合框架,但是还有一种方法是采用迭代器遍历集合框架,它是一个对象 ...

  8. ul标签中,li标签的移除、属性值获取

  9. Leetcode 222.完全二叉树的节点个数

    完全二叉树的节点个数 给出一个完全二叉树,求出该树的节点个数. 说明: 完全二叉树的定义如下:在完全二叉树中,除了最底层节点可能没填满外,其余每层节点数都达到最大值,并且最下面一层的节点都集中在该层最 ...

  10. zoj 1949 Error Correction

    Error Correction Time Limit: 2 Seconds      Memory Limit: 65536 KB A boolean matrix has the parity p ...