并行计算机组成与设计

  • 出版时间: 2017年04月01日
  • 作者: 米歇尔·杜波依斯
  • 浏览: 80
  • 发表评论

本书以简单易懂的方式讲解错综复杂的并行体系结构,引导读者了解并行计算机的工作原理,同时鼓励读者创新并实现自己的设计。全书共9章,内容涵盖底层电子工艺、微体系结构、存储结构、互连网络、多处理器、片上多处理器以及量化评估模型等。每一章都独立且完备,既包含全面的基本概念,也涵盖一些前沿研究点。本书适合作为高等院校计算机相关专业的教材,教师可根据课程及学生的层次选取不同的主题。同时,对于工程师和研究者,本书也是不可多得的有益参考。

1第1章 总述

1.1什么是计算机体系结构

1.2并行体系结构的基本组成

1.2.1处理器

1.2.2存储

1.2.3互连

1.3并行体系结构

1.3.1指令级并行

1.3.2线程级并行

1.3.3向量和阵列处理器

1.4性能

1.4.1基准测试集

1.4.2Amdahl定律

1.5技术挑战

1.5.1功耗和能量

1.5.2可靠性

1.5.3连线延迟

1.5.4设计复杂度

1.5.5尺寸缩小极限和CMOS终点

习题

2第2章 工艺及其影响

2.1概述

2.2电学基本定律

2.2.1欧姆定律

2.2.2电阻

2.2.3电容

2.3MOSFET晶体管和CMOS反相器

2.4工艺变更

2.5功耗和能耗

2.5.1动态功耗

2.5.2静态功耗

2.5.3功耗和能量指标

2.6可靠性

2.6.1故障和错误

2.6.2可靠性指标

2.6.3故障率和老化

2.6.4瞬时故障

2.6.5间歇性故障

2.6.6永久性故障

2.6.7工艺偏差及其对故障的影响

习题

3第3章 处理器微结构

3.1概述

3.2指令集架构

3.2.1指令类型和操作码

3.2.2指令混合

3.2.3指令操作数

3.2.4异常、陷阱和中断

3.2.5存储一致性模型

3.2.6本书的核心ISA

3.2.7CISC和RISC

3.3静态调度流水线

3.3.1经典五级流水线

3.3.2指令乱序完成

3.3.3超流水和超标量CPU

3.3.4分支预测

3.3.5静态指令调度

3.3.6静态流水线的优缺点

3.4动态调度流水线

3.4.1解决数据相关:Tomasulo算法

3.4.2推测执行

3.4.3动态分支预测

3.4.4支持推测的Tomasulo算法

3.4.5动态内存歧义消除

3.4.6显式寄存器重命名

3.4.7指令发射后的寄存器读取

3.4.8推测指令调度

3.4.9打破数据流限制:值预测

3.4.10单周期多指令

3.4.11处理复杂ISA

3.5超长指令字微结构

3.5.1动态和静态技术

3.5.2VLIW体系结构

3.5.3循环展开

3.5.4软件流水

3.5.5非循环VLIW调度

3.5.6谓词指令

3.5.7推测内存歧义消除

3.5.8异常

3.6EPIC微结构

3.7向量微结构

3.7.1算术/逻辑向量指令

3.7.2内存向量指令

3.7.3向量分段开采和链接

3.7.4条件语句

3.7.5scatter和gather操作

习题

4第4章 存储层次

4.1概述

4.2金字塔形存储层次

4.2.1访存局部性

4.2.2存储层次中的一致性

4.2.3存储包含

4.3cache层次

4.3.1cache映射及组织方式

4.3.2替换策略

4.3.3写策略

4.3.4cache层次的性能

4.3.5cache失效的分类

4.3.6非阻塞cache

4.3.7cache预取和预加栽

4.4虚拟存储

4.4.1引入虚存的动机

4.4.2从操作系统视角看到的虚拟存储

4.4.3虚地址转换

4.4.4访存控制

4.4.5多级页表

4.4.6反向页表

4.4.7旁路转换缓冲

4.4.8带物理标识的虚地址cache

4.4.9带虚标识的虚地址cache

习题

5第5章 多处理器系统

5.1概述

5.2并行编程模型

5.2.1共享内存系统

5.2.2消息传递系统

5.3基于消息传递的多处理器系统

5.3.1消息传递原语

5.3.2消息传递协议

5.3.3消息传递协议的硬件支持

5.4基于总线的共享内存系统

5.4.1多处理器cache组织

5.4.2一个简单的侦听cache协议

5.4.3侦听cache协议的设计空间

5.4.4协议变种

5.4.5多阶段侦听cache协议的设计问题

5.4.6通信事件的分类

5.4.7TLB一致性

5.5可扩展共享内存系统

5.5.1目录协议的基本概念和术语

5.5.2目录协议实现方法

5.5.3目录协议的扩展性

5.5.4层次化系统

5.5.5页面迁移和复制

5.6全cache共享内存系统

5.6.1基本概念、硬件结构和协议

5.6.2平坦COMA

习题

6第6章 互连网络

6.1概述

6.2互连网络的设计空间

6.2.1设计概念综述

6.2.2延迟和带宽模型

6.3交换策略

6.4拓扑结构

6.4.1间接网络

6.4.2直接网络

6.5路由技术

6.5.1路由算法

6.5.2死锁避免和确定性路由

6.5.3放松路由限制:虚通道和转弯模型

6.5.4进一步放松的路由算法:自适应路由

6.6交换架构

习题

7第7章 一致性、同步与存储一致性

7.1概述

7.2背景

7.2.1共享内存通信模型

7.2.2硬件组件

7.3一致性和store原子性

7.3.1多处理器一致性的实现困难

7.3.2cache协议

7.3.3store原子性

7.3.4纯一致性

7.3.5store原子性和访存交错

7.4顺序一致性

7.4.1顺序一致性的形式化模型

7.4.2顺序一致性的访存顺序规则

7.4.3入站消息管理

7.4.4store同步性

7.5同步

7.5.1基本同步原语

7.5.2基于硬件的同步

7.5.3基于软件的同步

7.6放松的存储一致性模型

7.6.1不依赖于同步的放松模型

7.6.2依赖同步的放松模型

7.7推测执行中的存储序违反

7.7.1乱序执行处理器中的保守存储模型

7.7.2推测执行中的存储序违反

习题

8第8章 片上多处理器

8.1概述

8.2CMP的基本原理

8.2.1技术趋势

8.2.2机遇

8.3核内多线程

8.3.1软件支持的多线程

8.3.2硬件支持的多线程

8.3.3块式(粗粒度)多线程

8.3.4交错(细粒度)多线程

8.3.5乱序执行处理器上的同时多线程

8.4片上多处理器架构

8.4.1同构CMP架构

8.4.2基于异构处理器核的CMP系统

8.4.3连体处理器

8.5编程模型

8.5.1独立进程

8.5.2显式线程并行

8.5.3事务内存

8.5.4线程级推测执行

8.5.5帮助线程

8.5.6通过冗余执行提高可靠性

习题

9第9章 量化评估

9.1概述

9.2模拟器分类

9.2.1用户级模拟器和全系统模拟器

9.2.2功能模拟器和时钟精确模拟器

9.2.3trace驱动模拟器、执行驱动模拟器和直接执行模拟器

9.3模拟器的集成

9.3.1功能优先模拟器的集成

9.3.2时序优先模拟器的集成

9.4多处理器模拟器

9.4.1串行多处理器模拟器

9.4.2并行多处理器模拟器

9.5功耗和热量模拟

9.6工作负载采样

9.6.1基于采样的微架构模拟

9.6.2SimPoint

9.7工作负载特征刻画

9.7.1理解性能瓶颈

9.7.2合成基准测试程序

9.7.3预测工作负载行为

我来评分 :6
0

转载注明:转自5lulu技术库

本站遵循:署名-非商业性使用-禁止演绎 3.0 共享协议