计算机体系结构-量化研究方法(第六版)-汉化
  • 关于翻译
  • 前言
    • 我们为什么写这本书
    • 当前版本
    • 选材与组织
    • 内容概述
    • 阅读导览
    • 章节结构
    • 案例研究与习题
    • 补充材料
    • 帮助改进这本书
    • 结语
  • 第一章 量化设计和分析的基础知识
    • 摘要
    • 1.1 介绍
    • 1.2 计算机的类别
      • 物联网/嵌入式计算机
      • 个人移动终端
      • 桌面计算机
      • 服务器
      • 集群/数据仓库规模的计算机
      • 并行性和并行架构的类别
    • 1.3 计算机体系结构的定义
      • 指令集架构:计算机体系结构的“狭隘”观点
      • 名副其实的计算机体系结构:设计组织(Organization)和硬件以满足设计指标和功能需求
    • 1.4 技术趋势
      • 性能趋势:带宽的提升大于延迟
      • 晶体管性能和导线的扩大
    • 1.5 集成电路中功率和能耗的发展趋势
      • 电源和能耗,一个系统的视角
      • 微处理器内的能耗和功率
      • 由于能耗的限制,计算机架构的转变
    • 1.6 成本的发展趋势
      • 时间、数量和商品化的影响
      • 集成电路的成本
      • 成本与价格
      • 制造成本与运营成本
    • 1.7 可靠性
    • 1.8 评测、报告和总结性能
      • 基准评测
        • 桌面应用基准
        • 服务器应用基准
      • 报告性能结果
      • 总结性能结果
    • 1.9 计算机量化设计原则
      • 利用并行化的优势
      • 局部性原理
      • 关注常见情况
      • 阿姆达尔定律
      • 处理器性能方程
    • 1.10 把它们放在一起:性能、价格和功耗
    • 1.11 谬误和陷阱
    • 1.12 结论
    • 1.13 历史观点和引用
    • 案例研究和习题
  • 第二章 内存层次结构设计
  • 第三章 指令级并行及其应用
  • 第四章 矢量、SIMD和GPU架构中的数据级并行性
  • 第五章 线程级并行
  • 第六章 大规模数据中心级计算机的并行性:请求级并行(RLP)和数据级并行
  • 第七章 领域特定架构(DSA)
  • 附录A-指令集设计原则
  • 附录B-内存层次结构的回顾
    • 摘要
    • B.1 介绍
      • 缓存性能回顾
      • 四个内存层次的问题
      • 一个例子:Opteron的数据缓存
  • 附录C-流水线:初级和中级概念
  • 附录D-存储系统
  • 附录E-嵌入式系统
  • 附录F-多机互联
  • 附录G-深入向量处理器
  • 附录H-VLIW和EPIC的硬件和软件
  • 附录I-大规模多处理器和科学计算的应用
  • 附录J-计算机算数(Arithmetic)相关
  • 附录K-指令集架构的回顾
  • 附录L-地址翻译(Address Translation)的高级概念
  • 附录M-历史观点和参考文献
Powered by GitBook
On this page
  1. 第一章 量化设计和分析的基础知识

1.8 评测、报告和总结性能

Previous1.7 可靠性Next基准评测

Last updated 2 years ago

当我们说一台电脑比另一台电脑快时,我们是什么意思?手机用户可能会说,当程序运行的时间更短时,电脑就更快,而亚马逊网站的管理员可能会说,当电脑每小时完成更多的交易时,电脑就更快。手机用户希望减少响应时间,即事件开始和完成之间的时间,也被称为执行时间。WSC的操作员希望增加吞吐量--在一定时间内完成的工作总量。

在比较设计方案时,我们经常想把两台不同的计算机的性能联系起来,比如说X和Y。"X比Y快 "这句话在这里的意思是,对于给定的任务,X上的响应时间或执行时间比Y上低。特别是,"X比Y快n倍 "将意味着:

由于执行时间是性能的倒数,以下关系成立:

"X的吞吐量是Y的1.3倍 "这句话在这里表示,在计算机X上每单位时间完成的任务数是Y上完成的1.3倍。

不幸的是,在比较计算机的性能时,时间并不总是被引用的指标。我们的立场是,衡量性能的唯一一致和可靠的标准是真实程序的执行时间,所有提议的替代时间作为衡量标准,或替代真实程序作为衡量项目的方法,最终都导致了误导性的决策,是计算机设计中的错误。

即使是执行时间也可以用不同的方式来定义,这取决于我们计算的内容。最直接的时间定义被称为壁钟时间(wall-clock time)、响应时间(response time)或耗时(elapsed time),它是完成一项任务的延迟,包括存储访问、内存访问、输入/输出活动、操作系统开销等等。在多程序(multiprogramming)执行中,处理器在等待I/O的同时还在另一个程序上工作,不一定能将一个程序的耗时降到最低。因此,我们需要一个术语来考虑这种活动。CPU时间体现了这一区别,它表示处理器正在计算的时间,不包括等待I/O或运行其他程序的时间。(显然,用户看到的响应时间是程序的耗费时间,而不是CPU时间)。

经常运行相同程序的计算机用户将是评估一台新计算机的最佳人选。为了评估一个新的系统,这些用户将简单地比较他们的工作负载(workloads)的执行时间--用户在计算机上运行的程序和操作系统命令的集合。然而,很少有人处于这种幸福的境地。大多数人必须依靠其他方法来评估计算机,而且往往是这些人,希望这些方法能够预测他们使用新计算机的性能。一种方法是基准程序(benchmark programs),这是许多公司用来建立其计算机的相对性能的程序。