深入理解并行编程

[美] Paul E.Mckenney(保罗·E·麦肯尼)

出版时间

2017-07-01

ISBN

9787121315084

评分

★★★★★
书籍介绍
《深入理解并行编程》首先以霍金提出的两个理论物理限制为引子,解释了多核并行计算兴起的原因,并从硬件的角度阐述并行编程的难题。接着,《深入理解并行编程》以常见的计数器为例,探讨其不同的实现方法及适用场景。在这些实现方法中,除了介绍常见的锁以外,《深入理解并行编程》还重点介绍了RCU的使用及其原理,以及实现RCU的基础:内存屏障。最后,《深入理解并行编程》还介绍了并行软件的验证,以及并行实时计算等内容。 《深入理解并行编程》适合于对并行编程有兴趣的大学生、研究生,以及需要对项目进行深度性能优化的软硬件工程师,特别值得一提的是,《深入理解并行编程》对操作系统内核工程师也很有价值。
作者简介
Paul E. McKenney is the core contributor of Linux kernel .
AI导读
核心看点
  • 从硬件视角剖析并行编程难题
  • 深度解析RCU机制与内存屏障
  • 涵盖并行软件验证与实时计算
读者共识
  • 内容经典深刻,值得反复研读
  • 排版存在瑕疵,阅读体验略差
  • 作者功力深厚,被誉为大师之作
精彩摘录
  • "Therefore, if you wish to argue that parallel programming will remain as difficult as it is currently perceived by many to be, it is you who bears the burden of proof, keeping in mind the many centuries of counter-examples in a variety of fields of endeavor."
  • "the primary goals of parallel pro- gramming are performance, productivity, and gener- ality."
  • "This book is intended primarily for developers working near the bottom of the stack, where performance and generality are paramount concerns."
  • "It is important to keep in mind that parallelism is but one way to improve performance. Other well- known approaches include the following, in roughly increasing order of difficulty: 1. Run multiple instances of a sequential applica- tion. 2. Construct the application to make use of exist- ing paral"
  • "Most people have an intuitive understanding that passing messages between systems is considerably more expensive than performing simple calcula- tions within the confines of a single system. How- ever, it is not always so clear that communicat- ing among threads within the confines of a single share"
  • "shared-memory parallel programs must normally deal with no obstacle worse than a cache miss, while a distributed parallel program will typically incur the larger network communication latencies."
  • "3.3.3 Light, Not Electrons Although the speed of light would be a hard limit, the fact is that semiconductor devices are limited by the speed of electrons rather than that of light, given that electrons in semiconductor materials move at between 3% and 30% of the speed of light in a vacuum."
目录
第1章 如何使用本书 1
1.1 路线图 1
1.2 小问题 2
1.3 除本书之外的选择 3
1.4 示例源代码 4

显示全部
用户评论
现代编程必读书,译者是国内最顶尖的大规模集群的专家,最后豆瓣评价说翻译太次?
“从硬件的角度阐述并行编程的难题”,对Java程序员门槛不低
看完还是很有收获的,内容编排上有些乱,看的费劲
作者功力太强,全篇围绕着内核的并发/并发进行讲解,推荐给有OS基础的读者。
对并行算法,RCU,内存屏障的讲解很深刻,附录C一定要看;甚至还涉及了STM,HTM的分析,出乎意料。
这本书的排版很不好。比如说代码没有缩进;不能跳转到小练习的答案;代码与说明隔的比较远,不好关联起来读...但是翻译本身没有什么问题,语句通顺,可以先读一遍英文的,再读一遍中文的,确保自己读懂了
翻译好坏先不说,参考文献呢??
更偏向硬件层次, backend推荐看看concurrency in go
下载
收藏