- 1、本文档共23页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 5、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 6、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 7、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 8、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
序
到这里 ,终于可以松一 口气了 ,一个持续多年的工作总算可以告一段落了。本系列 源于我2012年想写的 《并行乱弹》一
书 ,乱弹是乱弹琴的意思。按我的本意 ,并不想把它写成一本非常严谨的著作 ,当时更无意出版 ,因此并不是非常注意全书逻辑
的严密性 ,虽然经过我和编辑的多次修改 ,但想必问题依 旧难以避免 ,在此诚恳地请求读者谅解。
本系列的3本书相互之间有联系 ,也有其独立性 : 《并行算法设计与性能优化》介绍常见的串行代码优化方法和并行算法的
设计 ; 《并行编程方法与优化实践》介绍常见的向量化和并行编程环境及一些实例 ; 《科学计算与企业级应用的并行优化》则介
绍领域相关的算法与应用的性能优化。
如果说要写一本简短的武侠小说来描写主角是如何学习这3本 “秘笈”的话 ,我想故事是这样的 :在2015年 ,主角是某位 内
向宅男码农hpc ,因为程序速度太慢天天被产品经理骂 ,受项 目经理 白眼,每天工作到晚上10点 ,遭到家人埋怨。在某个月黑风
高的晚上 ,某条街道上那位江湖人称 “风辰”的 “HPC帮”护法长老收hpc为不记名弟子 ,并传授给hpc 《并行算法设计与性能
优化》 《并行编程方法与优化实践》及 《科学计算与企业级应用的并行优化》3本 “秘笈” , “风辰”临走时收了传功费用1024
万元。hpc如获至宝 ,休假一月潜心修炼。一月后出关 ,容光焕发 ,程序速度大幅度提升 ,产品经理天天请吃大餐 ,项 目经理忙
着加项 目奖金。此后 ,hpc每天下午5点即下班回家 ,修身养性 ,陪家人一 吃饭、购物。
愿这3本书能够真正成为改变读者生活的良师益友 !
风辰
2015年5 月17 日于深圳
前言
IT行业急需这本书
和本系列的前两本书一样 ,在解释为什么笔者认为软件工程师需要这本书之前 ,笔者先来介绍并行、并发和代码性能优化这
3个概念 ,因为理解这3个概念是阅读本系列3本书的基础。
·并行对应 的英文单词是parallelis ,是指在具有 多个处理单元的系统上 ,通过将计算或数据划分为多个部分 ,将各个部分
分配到不同的处理单元上 ,各处理单元相互协作 ,同时运行 ,以达到加快求解速度或者提 高求解 问题规模 的 目的。
·并发对应 的英文单词是concurrency ,是指在一个处理单元上运行 多个应 用,各应 用分时占用处理单元 ,是一种微观上 串
行、宏观上并行 的模 式,有 时也称其为时间上 串行、空间上并行 。
·代码性能优化是指通过调整源代码 ,使得其生成的机器指令能够更高效地执行 ,通常高效是指执行 时间更少、使用的存储
器更少或能够计算更大规模 的问题。
从大的方面来说 ,并行和并发都是代码性能优化的一种方式 ,但是今天并行和并发已经是如此重要 ,以至于需要 “开宗立
派”。为了明晰并行、并发和代码性能优化的边界 ,在本书中,代码性能优化特指除了并行和并发以外的代码优化方法 ,比如向
量化和提高指令流水线效率。在本书中,笔者将向量化独立出来解说。
2003年以前 ,在摩尔定律的作用下 ,单核标量处理器的性能持续提升 ,软件开发人员只需要写好软件 ,而性能的提升就等
待下次硬件更新来解决 ,在2003年之前的几十年里 ,这种 “免费午餐”模式一直在持续。2003年后 ,主要 由于功耗的原因,这
种 “免费午餐”已经不复存在。为了生存 ,各硬件生产商不得不采用各种方式提高硬件的计算能力。目前最流行的3种方式如
下 :
1)让处理器在一个周期处理多条指令 ,多条指令可相同可不同。如Intel Haswell处理器一个周期可执行4条整数加法指
令、两条浮点乘加指令 ,而访存和运算指令也可同时执行。
2)使用向量指令 ,主要是SIMD和V LIW技术。SIMD技术将处理器一次能够处理的数据位数从字长扩大到 128或256位 ,也
就提升了计算能力。
3)在同一个芯片中集成多个处理单元
1亿VIP精品文档
相关文档
最近下载
- 八年级学生劳动监测试题及答案.doc VIP
- 水平二 四年级篮球18课时大单元设计 -----传接球+投篮技术组合.pdf
- 麻醉学的历史发展与前景展望培训ppt课件.pptx
- 青岛市城市道路检查井通用图集-给水.PDF VIP
- 重庆市2022-2023学年七年级下学期期末考试数学试题(含答案解析).docx
- 2022-2023学年湖南省长沙市高一年级下册期末物理试卷附答案解析.pdf VIP
- 2024中国学生营养日之奶豆添营养少油更健康.pptx
- 湖南省长沙市2022-2023学年高一年级下册期末考试化学试题(解析版).pdf VIP
- 大熊猫的知识资料大全.docx
- 新松叉车式AGV详细介绍.pptx VIP
文档评论(0)