计算机体系结构 量化研究方法 第6版
文章平均质量分 92
高性能计算工程师
做一个极客!
展开
-
附录C 流水线:基础与中级概念
流水线爱是一种将多条指令重叠执行的实现技术,它利用了一条指令所需的多个操作之间的并行性。(指令操作的非原子性和指令类型的多样性)在计算流水线中,每个步骤完成指令的一部分,每一步都被称为流水段或流水级。指令流水线的吞吐量由指令退出流水线的频率决定。由于流水级是连在一起的,所以所有流水级都必须做好同时工作的准备。将一条指令在流水线中下移一级所需的时间为处理器周期。由于所有流水级同时进行,所以处理器的长度由最慢流水级所需的时间决定。流水线设计者的目标是平衡每级流水线的长度。原创 2023-12-09 19:15:00 · 1266 阅读 · 2 评论 -
附录B 存储次层次结构回顾
要制造能跟上处理器步伐的存储器系统,难度极大。而主存储的原材料与最廉价的计算机一样,使上述难度进一步加大。原创 2023-12-06 02:00:00 · 1110 阅读 · 0 评论 -
附录A 指令集基本原理
最早体系结构的指令集受到当时硬件技术的限制。只要硬件技术允许,计算机架构师就会探索支持高级语言的方式。在三个不同时期,关于如何高效支持程序,侧重点不一:1. 20世纪60年代,栈体系结构显得非常流行,跟高级语言很匹配。根据当时编译器技术,可能也的确如此。2. 20世纪70年达,架构师主要关注如何降低软件成本。其解决方案主要是用硬件代替软件,或者提供能够简化软件设计人员的高级体系结构。其结果就是高级语言计算机体系结构有着大量的寻址方式、多种数据类型和高度正交的体系结构。原创 2023-12-02 04:00:00 · 1855 阅读 · 0 评论 -
第5章 线程级并行 摘录
因为两个不同的处理器是通过各自的缓存来保留存储器视图的,所以针对同一存储地址,它们可能会看到不同的值,即缓存一致性问题。通俗的说,如果每次读取某一数据项都会返回该数据项的最新写入值,就说这个存储器系统是一致的。该定义看似正确,实则含混且过于简单。这个简单定义包含了存储器系统行为的两个方面,对于编写正确的共享存储器程序都至关重要:1. 一致性:定义了读操作能返回什么值。2. 连贯性:决定了一个写入值什么时候被读操作返回。原创 2023-12-01 01:00:00 · 1722 阅读 · 0 评论 -
第4章 向量、SIMD和GPU体系结构中的数据级并行
数据级并行对于个人移动设备越来越重要,因为这些设备上显示音频、视频和游戏重要性的应用程序越来越流行。当与一个比任务级并行更容易编程且可能具有更高能效的模型相结合时,就很容易理解为什么在这十年中数据级并行出现了复兴。传统处理器与GPU在性能方面最大的差别之一是集中--分散寻址。GPU的问题不只是哪种体系结构最好,而是当硬件投入足以出色地完成图形处理时,如何增强它以支持更具一般性的计算任务?尽管向量体系结构在理论上具有许多优点,但它能否像GPU一样作为图形学的基础还有待证明。原创 2023-11-22 02:00:00 · 2102 阅读 · 0 评论 -
第3章 指令级并行及其利用
本章首先研究数据和控制冒险带来的局限性,然后讨论如何提高编译器和处理器利用并行的能力。原创 2023-10-24 01:00:00 · 592 阅读 · 0 评论 -
第2章 存储器层次结构设计
存储器层次结构的可能性追溯到20世纪40~50年代。虚拟存储器出现在20世纪60年代,缓存出现在70年代。导致存储器层次结构的设计发生重大变化的一个趋势是,DRAM密度的增长速度和访问时间的缩短速度都在持续变缓。DRAM中使用的槽形电容器设计限制了它的扩展能力。诸如堆叠存储器之类的封装技术很有可能成为提升带宽和缩短延迟的主要方式。闪存相对于DRAM的潜在优势也正是它的致命弱点:它必须采用相当慢的批擦除重写周期。相变材料相对闪存的几点优势:不再需要速度缓存的“擦除-写入”周期,寿命也要长的多。原创 2023-06-07 21:38:51 · 1270 阅读 · 0 评论 -
第1章 量化设计与分析基础
计算机设计人员面临着一个非常复杂的任务:判断那些属性对于一种新计算机来说至关重要,然后在设计这种计算机时使其性能和能效达到最佳,同时还要满足成本、功耗和可用性约束条件。这项任务包括许多方面:指令集设计、功能组织、逻辑设计、实现方式。实现方式可能包含集成电路设计、封装、电源和散热。为使设计方案到达最优效果,设计人员需熟悉从编译器、操作系统到逻辑设计与封装等各种技术。几十年前,计算机体系结构一词通常是指指令集设计。计算机设计的其他方法称为实现,隐含之意就是实现方式通常不重要。目前本书作者认为这种观点是不对的。原创 2023-05-12 02:00:00 · 551 阅读 · 1 评论