多处理器编程的艺术 - (美)Maurice Herlihy, Nir Shavit

多处理器编程的艺术

(美)Maurice Herlihy, Nir Shavit

出版时间

2013-05-01

ISBN

9787111418580

评分

★★★★★
书籍介绍
工业界称为多核的多处理器机器正迅速地渗入计算的各个领域。多处理器编程要求理解新型计算原理、算法及编程工具,至今很少有人能够精通这门编程艺术。 现今,大多数工程技术人员都是通过艰辛的反复实践、求助有经验的朋友来学习多处理器编程技巧。这本最新的权威著作致力于改变这种状况,作者全面阐述了多处理器编程的指导原则,介绍了编制高效的多处理器程序所必备的算法技术。了解本书所涵盖的多处理器编程关键问题将使在校学生以及相关技术人员受益匪浅。 本书特色 本修订版结合2008年第1版出版以来课堂教学和读者反馈的勘误和修改意见,对全书进行了多方面的修订和更新。 循序渐进地讲述共享存储器多线程编程的基础知识。 详细解释当今多处理器硬件对并发程序设计的支持方式。 全面考察主流的并发数据结构及其关键设计要素。 从简单的锁机制到最新的事务内存系统,独立、完整地阐述了同步技术。 给出大量利用Java并发工具包编写的可完全执行的Java实例。 附录提供了采用其他程序设计语言和包(如C#、C及C++的Pthreads库)进行编程的相关背景知识以及硬件基础知识。
AI导读
核心看点
  • 详解共享内存多线程编程基础与同步技术
  • 剖析无锁数据结构设计与高效并发算法
  • 提供Java并发工具包可执行实例与硬件背景
适合谁读
  • 计算机专业在校学生及并发编程初学者
  • 需掌握多核架构原理的软件工程师
  • 追求高性能多线程开发的资深技术人员
读前提醒
  • 需具备离散数学基础及大O符号理解能力
  • 建议结合原著或论文深入理解线性一致性
  • 注意书中翻译瑕疵,重点研读算法原理部分
读者共识
  • 理论深度极高,阅读门槛较高且较为吃力
  • 内容权威实用,是并发领域的经典权威著作
  • 翻译质量参差不齐,建议配合原文或笔记阅读

本导读基于书籍简介、目录、原文摘录、短评和书评生成,不等同于全文精读。

精彩摘录
  • "举个例子,如果你在星期一存入工资,但是由于银行在提款后重排了存款的顺序,导致到下一个星期五才退出资金收据,这将使你感到非常恼火。"
  • "For example, we might be unhappy if we deposit our paycheck on Monday, but the bank bounces our rent check the following Friday because it reordered our deposit after your withdrawal."
  • "the TASLock performs very poorly, and the TTASLock performance, while substantially better, still falls far short of the ideal."
  • "Now consider the behavior of the TTASLock algorithm while the lock is held by a thread A. The first time thread B reads the lock it takes a cache miss, forcing B to block while the value is loaded into B's cache. As long as A holds the lock, B repeatly reread the value, but hits in the cache every t"
  • "This notion of local spinning, where threads repeatly reread cached values instead of repeatedly using the bus, is an important principle critical to the design of efficeient spin locks. Here is a key observation: if some other thread aquires the lock between hte first and second step, then, most li"
作者简介
Maurice Herlihy 哈佛大学的数学学士和麻省理工学院的计算机科学博士,目前为美国布朗大学计算机科学系教授,曾工作于卡内基-梅隆大学和DEC剑桥实验室。他是美国ACM会士,2003年分布式计算领域Dijkstra奖获得者。 Nir Shavit 以色列希伯来大学的计算机科学博士,目前为麻省理工学院电子工程和计算机科学系教授、以色列特拉维夫大学计算机科学系教授。1999~2011年期间,他担任Sun实验室的技术人员。 两位作者在2004年获得了理论计算机领域最高奖——哥德尔奖(G?del Prize),2012年他们共享了分布式计算领域的Edsger W. Dijkstra奖,40多年来他们一起合作,从事并行和分布式计算教学和研发工作。
下载
收藏