
上QQ阅读APP看书,第一时间看更新
1.8 本章小结
本章是全书所涉及的基础知识的简单介绍,介绍了许多与并行和向量化相关的重要内容,包括但不限于本节内容。
并行和性能优化的两大作用:①发挥硬件的计算性能,提升程序的吞吐量、增加计算规模或减少计算时间;②为了满足某些功能性需求。
为什么需要向量化和并行:①依靠硬件厂商提升性能的“免费”时代已经结束;②自动向量化工具已经可用,但是只能向量化简单代码,并且性能往往并不理想;③应用对性能的需求依旧在提高,软件开发人员没有选择。
并行和代码性能优化面临的现实困难;①没有很好的向量化和并行设计方法学;②向量化和并行化遗留代码并不容易;③向量化或并行代码的可扩展性和可维护性差;④任务、数据划分及并发访问控制难;⑤对开发人员的过高要求。
一些不修改代码也能利用多核处理器的性能的几种替代方法:①同时运行程序的多个实例;②利用已有的并行库;③优化串行代码。
目前主流的向量和多核计算平台:X86 CPU、GPU和ARM。
处理器是程序的运行平台,不同的现代处理器具有许多相同和不同的特性,在编写代码时如果能够很好地利用这些特性,那么就可以很好地发挥硬件的性能,下一章笔者介绍现代处理器具有的一些典型特性。