多处理器编程的艺术(修订版)

《多处理器编程的艺术(修订版)》
基本信息
原书名:The Art of Multiprocessor Programming, Revised First Edition
作者: (美)赫利希(Herlihy, M.)    (美)谢菲特(Shavit, N.)   
译者: 金海 胡侃
丛书名: 计算机科学丛书
出版社:机械工业出版社
ISBN:9787111418580
上架时间:2013-5-8
出版日期:2013 年5月
开本:16开
页码:1
版次:1-1
所属分类:计算机 > 计算机组织与体系结构 > 微处理器/CPU
多处理器编程的艺术(修订版)_第1张图片
更多关于 》》》《 多处理器编程的艺术(修订版)》
内容简介
    计算机书籍
  《多处理器编程的艺术(修订版)》从原理和实践两个方面全面阐述了多处理器编程的指导原则,包含编制高效的多处理器程序所必备的算法技术。此外,附录提供了采用其他程序设计语言包(如c#、c及c++的pthreads库)进行编程的相关背景知识以及硬件基础知识。
   《多处理器编程的艺术(修订版)》适合作为高等院校计算机及相关专业高年级本科生及研究生的教材,同时也可作为相关技术人员的参考书。 
目录
《多处理器编程的艺术(修订版)》 
出版者的话 
译者序 
前言 
教学建议 
第1章引言1 
1.1共享对象和同步2 
1.2生活实例4 
1.2.1互斥特性6 
1.2.2道德7 
1.3生产者-消费者问题7 
1.4读者-写者问题9 
1.5并行的困境9 
1.6并行程序设计11 
1.7本章注释11 
1.8习题11 
第一部分原理 
第2章互斥14 
2.1时间14 
.2.2临界区14 
2.3双线程解决方案16 
2.3.1lockone类16 
2.3.2locktwo类17 
2.3.3peterson锁18 
2.4过滤锁19 
2.5公平性21 
2.6bakery算法21 
2.7有界时间戳23 
2.8存储单元数量的下界25 
2.9本章注释27 
2.10习题28 
第3章并发对象31 
3.1并发性与正确性31 
3.2顺序对象33 
3.3静态一致性34 
3.4顺序一致性35 
3.5可线性化性38 
3.5.1可线性化点38 
3.5.2评析38 
3.6形式化定义38 
3.6.1可线性化性39 
3.6.2可线性化性的复合性40 
3.6.3非阻塞特性40 
3.7演进条件41 
3.8java存储器模型43 
3.8.1锁和同步块44 
3.8.2volatile域44 
3.8.3final域44 
3.9评析45 
3.10本章注释46 
3.11习题46 
第4章共享存储器基础50 
4.1寄存器空间50 
4.2寄存器构造54 
4.2.1mrsw安全寄存器55 
4.2.2mrsw规则布尔寄存器55 
4.2.3m-值mrsw规则寄存器56 
4.2.4srsw原子寄存器57 
4.2.5mrsw原子寄存器59 
4.2.6mrmw原子寄存器60 
4.3原子快照62 
4.3.1无障碍快照63 
4.3.2无等待快照64 
4.3.3正确性证明66 
4.4本章注释67 
4.5习题67 
第5章同步原子操作的相对能力70 
5.1一致数70 
5.2原子寄存器72 
5.3一致性协议74 
5.4fifo队列74 
5.5多重赋值对象77 
5.6读-改-写操作79 
5.7common2 
rmw操作80 
5.8compareandset()操作81 
5.9本章注释82 
5.10习题83 
第6章一致性的通用性87 
6.1引言87 
6.2通用性88 
6.3一种通用的无锁构造88 
6.4一种通用的无等待构造91 
6.5本章注释95 
6.6习题95 
第二部分实践 
第7章自旋锁与争用98 
7.1实际问题98 
7.2测试-设置锁100 
7.3再论基于tas的自旋锁102 
7.4指数后退102 
7.5队列锁104 
7.5.1基于数组的锁104 
7.5.2clh队列锁106 
7.5.3mcs队列锁107 
7.6时限队列锁110 
7.7复合锁112 
7.8层次锁118 
7.8.1层次后退锁118 
7.8.2层次clh队列锁119 
7.9由一个锁管理所有的锁123 
7.10本章注释123 
7.11习题124 
第8章管程和阻塞同步126 
8.1引言126 
8.2管程锁和条件126 
8.2.1条件127 
8.2.2唤醒丢失问题130 
8.3读者-写者锁131 
8.3.1简单的读者-写者锁131 
8.3.2公平的读者-写者锁132 
8.4我们的可重入锁134 
8.5信号量135 
8.6本章注释136 
8.7习题136 
第9章链表:锁的作用139 
9.1引言139 
9.2基于链表的集合140 
9.3并发推理141 
9.4粗粒度同步142 
9.5细粒度同步143 
9.6乐观同步146 
9.7惰性同步149 
9.8非阻塞同步153 
9.9讨论157 
9.10本章注释157 
9.11习题158 
第10章并行队列和aba问题159 
10.1引言159 
10.2队列160 
10.3部分有界队列160 
10.4完全无界队列163 
10.5无锁的无界队列164 
10.6内存回收和aba问题166 
10.7双重数据结构170 
10.8本章注释172 
10.9习题172 
第11章并发栈和消除174 
11.1引言174 
11.2无锁的无界栈174 
11.3消除176 
11.4后退消除栈176 
11.4.1无锁交换机177 
11.4.2消除数组179 
11.5本章注释181 
11.6习题181 
第12章计数、排序和分布式协作184 
12.1引言184 
12.2共享计数184 
12.3软件组合185 
12.3.1概述185 
12.3.2一个扩展实例190 
12.3.3性能和健壮性191 
12.4静态一致池和计数器192 
12.5计数网192 
12.5.1可计数网193 
12.5.2双调计数网194 
12.5.3性能和流水线201 
12.6衍射树201 
12.7并行排序204 
12.8排序网204 
12.9样本排序207 
12.10分布式协作208 
12.11本章注释208 
12.12习题209 
第13章并发哈希和固有并行212 
13.1引言212 
13.2封闭地址哈希集213 
13.2.1粗粒度哈希集214 
13.2.2空间分带哈希集215 
13.2.3细粒度哈希集217 
13.3无锁哈希集219 
13.3.1递归有序划分219 
13.3.2bucketlist类222 
13.3.3lockfreehashset[t]类223 
13.4开放地址哈希集225 
13.4.1cuckoo哈希225 
13.4.2并发cuckoo哈希226 
13.4.3空间分带的并发cuckoo哈希230 
13.4.4细粒度的并发cuckoo哈希集231 
13.5本章注释233 
13.6习题234 
第14章跳表和平衡查找235 
14.1引言235 
14.2顺序跳表235 
14.3基于锁的并发跳表236 
14.3.1简介236 
14.3.2算法238 
14.4无锁并发跳表243 
14.4.1简介243 
14.4.2算法细节245 
14.5并发跳表251 
14.6本章注释251 
14.7习题251 
第15章优先级队列253 
15.1引言253 
15.2基于数组的有界优先级队列253 
15.3基于树的有界优先级队列254 
15.4基于堆的无界优先级队列256 
15.4.1顺序堆256 
15.4.2并发堆258 
15.5基于跳表的无界优先级队列262 
15.6本章注释264 
15.7习题265 
第16章异步执行、调度和工作分配266 
16.1引言266 
16.2并行分析271 
16.3多处理器的实际调度273 
16.4工作分配274 
16.4.1工作窃取275 
16.4.2屈从和多道程序设计275 
16.5工作窃取双端队列276 
16.5.1有界工作窃取双端队列276 
16.5.2无界工作窃取双端队列279 
16.5.3工作平衡282 
16.6本章注释283 
16.7习题284 
第17章障碍287 
17.1引言287 
17.2障碍实现288 
17.3语义换向障碍288 
17.4组合树障碍289 
17.5静态树障碍291 
17.6终止检测障碍293 
17.7本章注释295 
17.8习题296 
第18章事务内存302 
18.1引言302 
18.1.1关于锁的问题302 
18.1.2关于compareandset()的问题303 
18.1.3关于复合性的问题304 
18.1.4我们能做什么305 
18.2事务和原子性305 
18.3软事务内存306 
18.3.1事务和事务线程309 
18.3.2僵尸事务和一致性310 
18.3.3原子对象311 
18.3.4如何演进311 
18.3.5争用管理器312 
18.3.6原子对象的实现314 
18.3.7无干扰原子对象315 
18.3.8基于锁的原子对象318 
18.4硬事务内存323 
18.4.1缓存一致性324 
18.4.2事务缓存一致性324 
18.4.3改进325 
18.5本章注释325 
18.6习题326 
第三部分附录 
附录a软件基础328 
附录b硬件基础340 
参考文献350 
索引359
本 图书信息来源: 中国互动出版网

来自 “ ITPUB博客 ” ,链接:http://blog.itpub.net/16566727/viewspace-760709/,如需转载,请注明出处,否则将追究法律责任。

转载于:http://blog.itpub.net/16566727/viewspace-760709/

你可能感兴趣的:(多处理器编程的艺术(修订版))