并行计算机体系结构

并行计算机体系结构 pdf epub mobi txt 电子书 下载 2026

出版者:机械工业出版社
作者:[美]DavidE.Culle
出品人:
页数:776
译者:李晓明
出版时间:2003-1
价格:78.00元
装帧:平装
isbn号码:9787111078883
丛书系列:计算机科学丛书
图书标签:
  • 并行计算
  • 并行
  • 体系结构
  • 计算机
  • 高性能集群计算机
  • 计算机科学
  • 计算机体系结构
  • 计算
  • 并行计算
  • 计算机体系结构
  • 高性能计算
  • 并行处理器
  • 多核处理器
  • 集群计算
  • 分布式计算
  • 计算机硬件
  • 数字电路
  • 嵌入式系统
想要找书就要到 图书目录大全
立刻按 ctrl+D收藏本页
你会得到大惊喜!!

具体描述

作者简介

目录信息

第1章 引论
1.1 为什么要用并行体系结构
1.1.1 计算机应用发展的趋势
1.1.2 微电子技术趋势
1.1.3 体系结构趋势
1.1.4 超级计算机
1.1.5 小结
1.2 并行体系结构的融合
1.2.1 通信体系结构
1.2.2 共享地址空间
1.2.3 消息传递
1.2.4 融合
1. 2.5 数据并行体系结构
1.2.6 其他并行体系结构
1.2.7 一个通用并行体系结构
1.3 基本的设计问题
1.3.1 通信抽象
1.3.2 编程模型的要求
1.3.3 通信和复制
1.3.4 性能
1.3.5 小结
1.4 结论
1.5 历史资料
习题
第2章 并行程序
2.1 并行应用的案例分析
2.1.1 洋流的模拟
2.1.2星系演化的模拟
2.1.3 用光线跟踪法来实现复杂场景的可视化
2.1.4 针对关联性的数据挖掘
1.2 并行化过程
2.2.1 程序并行化过程中的几个步骤
2.2.2 计算并行和数据并行
2.2.3 并行化过程的目标
2.3 一个例子程序的并行化
2.3.1 方程求解器的内核
2.3.2 分解
2.3.3 分配
2.3.4 在数据并行模型下的协调
2.3.5 在共享地址空间模型下的协调
2.3.6 在消息传递模型下的协调
2.4 结论
习题
第3章 面向性能的程序设计
3.1 划分阶段的性能问题
3.1.1 负载平衡和同步等待时间
3.1.2 减少固有的通信
3.1.3 减少额外的工作
3.1.4 小结
3.2 在多存储器系统中的数据访问和通信
3.2.1 看作扩展的存储层次结构的多处理器系统
3.2.2 在扩展的存储层次结构中的附加通信
3.2.3 用工作集的观点看附加的通信和数据的复制
3.3 性能的协调
3.3.1 减少附加通信
3.3.2 将通信结构化以降低代价
3.4 从处理器角度看到的性能因素
3.5 并行应用程序案例的深入分析
3.5.1 Ocean
3.5.2 Bames-Hut
3.5.3 光线跟踪
3.5.4 数据挖掘
3.6 编程模型涉及的问题
3.6.1 命名
3.6.2 复制
3.6.3 通信的开销和粒度
3.6.4 块数据传送
3.6.5 同步
3.6.6 硬件代价和设计复杂性
3.6.7 性能模型
3.6.6 小结
3.7 结论
习题
第4章 工作负载驱动的性能评价
4.1 改变工作负载和机器的规模
4.1.1 多处理器性能的基本测量
4.1.2 为什么要考虑扩放性
4.1.3 扩放的关键问题
4.1.4 扩放模型和加速比的测量
4.1.5 扩放模型对方程求解器内核的影响
4.1.6 扩放工作负载参数
4.2 评价一台实际的机器
4.2.1 使用微基准测试程序分离性能
4.2.2 选择工作负载
4.2.3 评价一台固定规模的机器
4.2.4 改变机器的规模
4.2.5 选择性能指标
4.3 对一个体系结构概念或设计权衡的评估
4.3.1 多处理器的模拟
4.3.2 缩小模拟的问题和机器参女的规模
4.3.3 处理参数空间:评价举例
4.3.4 小结
4.4 说明工作负载的特征
4.4.1 工作负载案例分析
4.4.2 工作负载的特征化
4.5 结论
习题
第5章 共享存储的多处理器
5.1 高速缓存的一致性
5.1.1 高速缓存一致性问题
5.1.2 通过总线侦听的高速缓存一致性
5.2 存储同一性
5. 2. 1 顺序同一性
5.2.2 保证顺序同一性的充分条件
5.3 总线侦听协议的设计空间
5.3.1 一种三态(MSI)回写作废式协议
5.3.2 一种四态(MESI)回写作废式协议
5.3.3 一种四态(Dragon)回写更新式协议
5.4 关于协议设计中若干折中的评估
5.4.1 方法论
5.4.2 在MESI协议下的带宽需求
5.4.3 协议优化的影响
5.4.4 高速缓存中存储块大小的权衡
5.4. 5 基于更新和基于作废协议的对比
5.5 同步
5.5.1 同步事件的组成部分
5.5.2 用户和系统的角色
5.5.3 互斥
5.5.4 点对点事件同步
5.5.5 全局(栅障)事件的同步
5.5.6 同步问题小结
5.6 对软件的影响
5.7 结论
习题
第6章 基于侦听的多处理器的设计
6.1 正确性需求
6.2 基础设计:采用原子总线的单级高速缓存
6.2.1 高速缓存控制器和标记的设计
6.2.2 侦听结果的报告
6.2.3 对回写的处理
6.2.4 基础系统组织
6.2. 5 非原子性的状态转移
6.2.6 串行化
6.2.7 死锁
6.2.8 活锁和挨饿
6.2.9 原子操作的实现
6.3 多级高速缓存层次结构
6.3.1 包含性的维护
6.3.2 在高速缓存层次结构中传播一致性的事务
6.4 事务拆分型总线
6.4.1 事务拆分型总线设计的一个例子
6.4.2 总线设计和请求-响应的匹配
6.4.3 侦听结果和冲突的请求
6.4.4 流控制
6.4.5 一次缓存扑空的路线
6.4.6 串行化和顺序同一性
6.4.7 其他设计选择
6.4.8 带有多级高速缓存的事务拆分型总线
6.4.9 对一个处理器有多个待完成扑空的支持
6.5 实例分析:SGI Challenge 和Sun Enterprise 6000
6.5.1 SGI Powerpath-2系统总线
6.5.2 SGI处理器和内存子系统
6.5.3 SGI I/O子系统
6.5.4 SGI Challenge内存系统性能
6.5.5 Sun Gigaplane系统总线
6.5.6 Sun处理器和内存系统
6.5.7 Sun I/O子系统
6.5.8 Sun Enterprise内存系统性能
6.5.9 应用程序性能
6.6 高速缓存一致性的扩充
6.6.1 共享缓存的设计
6.6.2 虚拟标引缓存的一致性
6.6.3 转换检测缓冲器的一致性
6.6.4 环上基于侦听的高速缓存一致性
6.6.5 在基于总线的系统中的数据和侦听带宽的扩展
6.7 结论
习题
第7章 可扩展多处理器
7.1 可扩展性
7.1.1 带宽的可扩展性
7.1.2 时延的可扩展性
7.1.3 成本的可扩展性
7.1.4 物理可扩展性
7.1.5 通用并行体系结构的可扩展性
7.2 编程模型的实现
7.2.1 基本的网络事务
7.2.2 共享地址空间
7.2.3 消息传递
7.2.4 主动消息
7.2.5 共同的挑战
7.2.6 通信体系结构设计空间
7.3 物理DMA
7.3.1 节点到网络的接口
7.3.2 通信抽象的实现
7.3.3 案例分析:nCUBE/2
7.3.4 典型的局域网接口
7.4 用户级访问
7.4.1 节点到网络的接口
7.4.2 案例分析:Thinking Machines CM-5
7. 4.3 用户级的处理程序
7.5 专用消息处理
7.5.1 案例分析:Intel Paragon
7.5.2 案例分析:Meiko CS-2
7.6 共享的物理地址空间
7.6.1 案例分析:CRAY T3D
7.6.2 案例分析:CRAY T3E
7.6.3 小结
7.7 工作站机群和工作站网络
7.7.1 案例分析:Myrinet SBUS Lanai
7.7.2 案例分析:PCI存储器通道
7.8 并行软件涉及的问题
7.8.1 网络事务的性能
7.8.2 共享地址空间操作
7.8.3 消息传递操作
7.8.4 应用层性能
7.9 同步
7.9.1 加锁算法
7.9.2 栅障算法
7.10 结论
习题
第8章 基于目录的高速缓存一致性
8.1 可扩展的高速缓存一致性
8.2 基于目录方法概述
8.2.1 简单目录方案的操作
8.2.2 可扩展性
8.2.3 组织目录表的其他方法
8.3 目录协议和折中的评价
8.3.1 目录方案的数据共享模式
8.3.2 本地和远程通信流量
8.3.3 高速缓存块尺寸的影响
8.4 目录协议设计上的挑战性问题
8.4.1 性能
8.4.2 正确性
8.5 基于存储器的目录协议:SGI的Origin系统
8.5.1 高速缓存一致性协议
8.5.2 关于正确性问题
8.5.3 目录结构的细节
8.5.4 协议扩展
8.5.5 Origin2000硬件概述
8.5.6 Hub的实现
8.5.7 性能特征
8.6 基于高速缓存的目录协议:Sequent的NUMA-Q
8.6.1 高速缓存一致性协议
8.6.2 关于正确性问题
8.6.3 协议扩展
8. 6.4 NUMA-Q硬件一览
8.6.5 协议和SMP节点的交互
8.6.6 IQ链路的实现
8.6.7 性能特征
8.6.8 对比案例分析:HAL S1多处理器
8.7 性能参数和协议性能
8.8 同步
8.8.1 几种同步算法的性能
8.8.2 实现原子性原语
8.9 对并行软件的影响
8.10 高级论题
8.10.1 减少目录存储的开销
8.10.2 层次式的一致性
8.11 结论
习题
第9章 硬件/软件功能的折中
9.1 放松的存储同一性模型
9.1.1 系统规范说明
9.1.2 程序员接口
9.1.3 翻译机制
9.1.4 真实的多处理器系统中的同一性模型
9.2 克服容量限制
9.2.1 第三层高速缓存
9.2.2 惟有高速续存的存储器体系结构
9.3 降低硬件成本
9.3.1 具有去耦辅助部件的硬件访问控制
9.3.2 通过代码修改实现的访问控制
9.3.3 基于页面的访问控制:共享虚拟存储器
9.3.4 语言和编译器支持的访问控制
9.4 综合:分类和简单的COMA
9.4.1 综合:简单的COMA和Stache
9.5 对并行软件的影响
9.6 高级论题
9.6.1 灵活性和CC-NUMA系统中的地址约束
9.6.2 以软件实现放松的存储同一性
9.7 结论
习题
第10章 互连网络设计
10.1 基本定义
10.2 基本的通信性能
10.2.1 时延
10.2.2 带宽
10.3 组织结构
10.3.1 链路
10.3.2 交换机
10.3.3 网络接口
10.4 互连拓扑结构
10.4.1 全连接网络
10.4.2 线性阵列和环
10.4.3 多维网格和多维花环
10.4.4 树
10.4. 5 蝶网
10.4.6 超立方体
10.5 对网络拓扑设计折中的评价
10.5.1 无负载时延
10.5.2 负载情况下的时延
10. 6 路由
10.6.1 路由机制
10.6.2 确定性路由
10.6.3 免死锁
10.6.4 虚通道
10.6.5 上行-下行路由
10.6.6 折转模型路由
10.6.7 自适应路由
10.7 交换机的设计
10.7.1 端口
10.7.2 内部数据通路
10.7.3 通道缓冲
10.7.4 输出调度
10.7.5 堆叠式维度交换机
10.8 流控
10.8.1 并行计算机网络与局域网、广域网的对照
10.8.2 链路级的流控
10.8.3 端到端的流控
10.9 案例分析
10.9.1 CRAY T3D网络
10.9.2 IBM SP-1、SP-2网络
10.9.3 可扩展一致性接口
10.9.4 SCI的Origin网
10.9.5 Myricom网络
10.10 结论
习题
第11章 时延的包容
11.1 时延包容技术概述
11.1.1 时延包容与通信流水线
11.1.2 采用技术
11.1.3 基本要求、优点与局限性
11.2 显式消息传递中的时延包容
11.2.1 通信结构
11.2.2 块数据传送
11.2.3 预通信
11. 2.4 跨越同一线程中的通信
11.2.5 多线程技术
11.3 共享地址空间中的时延包容
11.4 共享地址空间中的数据成块传送
11.4.1 技术和机制
11.4.2 策略问题和折衷方案
11.4.3 性能收益
11.5 跨越长时延事件
11.5.1 跨越写操作
11.5.2 跨越读操作
11.5.3 小结
11.6 共享地址空间中的预通信
11.6.1 没有共享数据高速缓存的共享地址空间
11.6.2 缓存一致的共享地址空间
11.6.3 性能收益
11.6.4 小结
11.7 共享地址空间中的多线程技术
11.7.1 技术和机制
11.7.2 性能收益
11.7.3 阻塞方式的实现问题
11.7.4 交替方式的实现问题
11.7.5 在多发布处理器中集成多线程
11.8 免锁定的缓存设计
11.9 结论
习题
第12章 将来的发展方向
12.1 技术与体系结构
12.1.1 演变趋势
12.1.2 遇到的阻碍
12.1.3 潜在的突破
12.2 应用程序和系统软件
12.2.1 演变趋势
12.2.2 遇到的困难
12.2.3 潜在的突破
附录 并行基准测试程序集
参考文献
索引
· · · · · · (收起)

读后感

评分

我读的很泛泛,惭愧ing。但是,不得不承认,这是一本相当全面的书籍。也许有些同学要抱怨这本书怎么这么跟不上时代,但是我要说,书中所写的思想,是当今并行体系结构的基础。从软件到硬件,这本书涵盖范围很广,但是并不泛泛。前三章侧重软件应用和需求。存储一致性方面包括了...  

评分

这本书从1998年出版至今一直没出第二版,其实是因为它已经把并行程序设计和并行体系结构里的最基本的原理和概念大都讲完了,而现在的软硬件厂商,各种语言的标准委员会正在努力把这本书中涉及的理论实现出来。如果想对并行计算有更全面深入的了解,这本书是必读的。  

评分

我读的很泛泛,惭愧ing。但是,不得不承认,这是一本相当全面的书籍。也许有些同学要抱怨这本书怎么这么跟不上时代,但是我要说,书中所写的思想,是当今并行体系结构的基础。从软件到硬件,这本书涵盖范围很广,但是并不泛泛。前三章侧重软件应用和需求。存储一致性方面包括了...  

评分

我读的很泛泛,惭愧ing。但是,不得不承认,这是一本相当全面的书籍。也许有些同学要抱怨这本书怎么这么跟不上时代,但是我要说,书中所写的思想,是当今并行体系结构的基础。从软件到硬件,这本书涵盖范围很广,但是并不泛泛。前三章侧重软件应用和需求。存储一致性方面包括了...  

评分

里面几个作者来自不同的地方 虽然年轻,但是都是经历丰富 内容详实细致,值得一读

用户评价

评分

我对这本书的期望值本来是想深入了解**高性能计算(HPC)集群**的组网拓扑和调度算法的,毕竟在我的工作领域,大规模并行处理任务是家常便饭。然而,阅读过程中我发现,书中花了大量的篇幅在探讨**神经形态芯片**的设计哲学。作者似乎对模仿人脑结构的计算架构抱有极大的热情,从SpiNNaker项目到IBM的TrueNorth芯片,都有非常详尽的案例分析。他对脉冲神经网络(SNN)的事件驱动模型和异步通信机制的描述,细致到连功耗管理策略都有详细的对比。但坦白说,这部分内容对于一个主攻传统MPI/OpenMP并行编程的工程师来说,显得有些“空中楼阁”。我期待看到的是关于RDMA技术在超算中心如何降低延迟的实操经验,或者如何利用GPU加速库进行高效的矩阵乘法,但书中对此类**具体编程模型和底层硬件交互**的讨论却非常浅尝辄止。特别是关于新的内存一致性模型和缓存一致性协议的章节,几乎没有涉及,这让我感到非常遗憾。这本书更像是一本面向计算机科学理论研究者的前瞻性综述,而非面向系统工程师的实用手册。

评分

这本书的装帧设计和印刷质量堪称一流,纸张的厚度和油墨的清晰度都非常专业,适合长期保存和反复查阅。然而,内容上,我发现它对**异构计算**的阐述,特别是关于CPU与FPGA协作处理复杂工作流的讨论,远远超出了我能理解的范围。书中详细剖析了OpenCL和SYCL等跨平台API的设计哲学,并深入探讨了如何在不同硬件抽象层之间进行数据迁移和同步的开销分析。我原本以为可以学到一些关于如何将特定算法的敏感部分高效地映射到FPGA逻辑单元上的经验法则,但作者却将重点放在了这些API**背后的设计哲学和标准制定过程**。他花了大篇幅去论证为什么需要一个统一的异构编程模型,而不是提供几个关于如何有效利用FPGA并行逻辑资源的实战案例。这本书更像是一份关于“异构计算愿景”的白皮书,充满了对未来标准化的美好憧憬,但对于渴望立即提升自己手头项目性能的工程师来说,它提供的帮助是间接的、理论性的。我期待的是工具箱,拿到手的却是一本关于工具设计理念的宏伟蓝图。

评分

这本书的结构组织相当独特,它似乎完全放弃了传统教科书那种线性的、层层递进的教学逻辑。它更像是将不同时代的、相互关联的计算思想**碎片化地拼贴**在一起,需要读者具备极高的知识储备才能将这些碎片自行构建成一个完整的认知图景。例如,在讨论完基于软件的容错机制后,作者突然插入了一大段关于**容错路由算法**在网络交换机中的实现细节,两者之间的逻辑跳跃性非常大。这种“跳跃”对于某些思维活跃的读者来说可能是惊喜,但对我这种习惯了标准自顶向下或自底向上结构的读者来说,阅读体验非常碎片化。我花了很长时间才适应这种“主题漂移”的写作方式。更让我不解的是,书中多次引用了一些非常晦涩的、非主流的并行计算模型,比如基于细胞自动机的计算理论,虽然这些内容拓展了视野,但与书中其他关于大规模集群计算的讨论,显得格格不入,就像在一部硬科幻电影中突然插入了一段中世纪的哲学思辨。我必须承认,这本书在拓宽视野方面做得非常出色,但它在提供**一致的学习路径**方面做得相当欠缺。

评分

这本书的封面设计得非常引人注目,深邃的蓝色调配上流动的光线,一下子就抓住了我的眼球。拿到手里沉甸甸的,能感觉到作者在内容组织上的用心。不过,当我真正翻开第一章,我发现内容似乎更多地聚焦于**量子计算**的前沿探索,而不是我原本期待的传统并行计算模型。书中对量子比特的纠缠态和叠加原理的数学描述非常深入,涉及了大量的线性代数和群论知识,对于一个初学者来说,门槛确实有点高。例如,在讨论量子纠错码的部分,作者用了好几页篇幅来推导Shor算法的复杂性,这个推导过程严谨到近乎苛刻,让我不得不一遍遍对照课本上的矩阵运算才能勉强跟上思路。尽管如此,书中对于**未来计算范式**的描绘,特别是将量子计算与生物信息学交叉结合的潜力分析,确实激发了我极大的兴趣。我原以为这会是一本关于如何优化多核CPU性能的实用指南,结果却掉进了一个更宏大、更具哲学意味的计算世界。特别是最后关于“计算的极限”的讨论,作者引用了哥德尔不完备定理,使得整本书的格局瞬间拔高,让人不得不重新审视我们对“计算”这个概念的传统认知。这种跳跃性的内容组织方式,无疑会给那些只对工程实践感兴趣的读者带来一些困惑。

评分

这本书的行文风格充满了**学术的严谨和历史的厚重感**。它更像是一本梳理计算理论发展脉络的史诗,而不是一本面向实操的教科书。作者对早期冯·诺依曼架构的局限性进行了深刻的反思,并且花了相当大的篇幅去追溯SIMD指令集的演进,从向量处理机到现代GPU的流式多处理器(SM)。令人印象深刻的是,书中对**内存墙问题**的分析极其到位,通过大量图表展示了不同存储介质的延迟和带宽差异,这种数据驱动的论证方式极具说服力。但是,这种对“为什么”的穷根究底,却牺牲了对“怎么做”的讲解。例如,在介绍CUDA编程模型时,作者只是笼统地提到了内核函数的启动和线程层次结构,对于如何通过精妙的内存访问模式来最大化吞吐量,几乎没有给出任何具体的代码示例或优化技巧。对于一个希望通过阅读本书来提升自己并行代码性能的程序员来说,这无疑是一种折磨——你知道问题所在,却找不到解决的钥匙。整体感觉像是听了一场精彩绝伦的学术报告,但没有拿到任何可以带回工位上实践的工具包。

评分

评分

评分

评分

评分

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2026 book.wenda123.org All Rights Reserved. 图书目录大全 版权所有