并行计算领域著名专家撰写,百度深度学习研究院“杰出科学家”吴韧鼎力推荐
结合大量示例和伪代码,全面讲解通过并行算法设计实现单核/多核代码、GPU和处理器的性能优化与并行化秘技,并首次提出实现复杂度的全新度量标准
近两三年来,在互联网企业中,GPU和并行计算越来越受到重视。无论是国外的Google、Facebook还是国内的百度、腾讯、阿里和360,都在使用代码优化、并行计算和GPU来完成以前不能完成的任务。而现在中小型企业也在使用代码优化和并行化技术来提升产品的使用体验。对于软件开发人员来说,如果不掌握并行计算和代码性能优化技术,在不久的将来就会被淘汰。
本书不但介绍了全新的代码性能优化的度量方法和标准,还介绍了常见的并行编程模型与环境、并行算法设计及编程模式的实践、遗留代码并行化和超级并行等读者最为关心的问题,使广大开发人员可以快速进入并行计算的实战工作。
本书亮点:
提出并解释了实现复杂度的概念及如何使用实现复杂度来分析程序性能。
介绍常见的串行代码优化方法。
提出了设计并行算法的步骤、方法和准则,以及如何将并行算法映射到硬件上以获得高性能。
更多精彩,点击进入品牌店查阅>>
《高性能计算技术丛书:并行算法设计与性能优化》是“并行计算与性能优化”系列的第1本,主要讲解了并行计算的核心理论、算法设计和实践,以及代码的性能优化,第2本和第3本则涵盖了并行编程方法与优化实践、科学计算与企业级应用的并行优化等重要主题,这些内容被许多开发人员视为“不传之秘”。本书作者是国内的并行计算专家,曾任英伟达并行计算工程师和百度在线高级研发工程师,在该领域的经验和修为极为深厚,他毫不吝啬地将自己多年的积累呈现在这3本书中,得到了百度深度学习研究院“杰出科学家”吴韧的高度评价和强烈推荐。
《高性能计算技术丛书:并行算法设计与性能优化》结合大量示例和伪代码,详细介绍了单核代码的性能优化和向量化技术,在现代多核处理器上如何设计并行算法,以及基于GPU和移动处理器(ARM)的代码性能优化与并行化。
《高性能计算技术丛书:并行算法设计与性能优化》12章,逻辑上分为四大部分:
并行计算理论基础
主要介绍并行现状、与并行计算紧密相关的现代处理器的技术与特点,算法与程序性能的度量和分析的新旧标准及实用工具,以及代码依赖关系的分析和去除处理。
代码优化
首先从系统、应用、算法、函数、循环、语句和指令7大维度讲解了常见的串行代码优化手段,然后讲解了如何通过多种方式将现有的串行代码向量化和并行化,以提高效率和利用率。
并行算法设计考量
主要讲解了如何设计优良的并行算法以及将并行算法映射到具体硬件上,涵盖常见的并行编程环境、并行算法设计方法、并行算法的缺陷、编程模式实践、一般准则,等等。
遗留代码的并行化
主要讲解了如何找出软件的计算热点,如何合理地选择部分并行或者整体并行,然后将实现后的代码嵌入原软件,以提高企业现有代码的利用率,并以实例加以说明。
★我一直认为,计算机科学就是计算的科学, 能写出正确而高效的代码是这个学科以及相关学科的基本功。高效的代码意味着代码作者对计算硬件细节和计算软件系统细节的充分及深入了解,对代码并行化以及代码性能优化的深刻认识。以近年极度火爆的深度学习为例,人们应该同样记住两位英雄人物:Alex Krizhevsky和Yangqing Jia。他们的优秀程序设计能力和代码优化能力让他们鹤立鸡群, 他们的工作让世人受益匪浅。本书的作者风辰也是一位优秀、务实的并行计算和代码性能优化人才,他将多年的并行计算实践和代码性能优化经验及感悟以全新并具有高度的视角集结成书,与众多程序员分享代码向量化和并行化的奥义。书中有大量风辰独有的真知灼见,当你购买这本书时, 恭喜你, 你已经找到了你正在寻找的、提高自身修为的一扇大门。
——吴韧 百度深度学习研究院“杰出科学家”