并行程序设计(19)

2021-02-21 15:16

2.7 程序性能优化 串行程序性能优化

调用高性能库,比如优化的BLAS,FFTW等 选择适当的编译器优化选项 合理定义数组维数

注意嵌套循环的顺序,尽量改善数据访问的局部性 循环展开

并行程序性能优化

减少通信量、提高通信粒度

全局通信尽量利用高效集合通信算法 挖掘算法的并行度,减少CPU空闲等待 负载平衡

通信、计算的重叠

通过引入重复计算来减少通信,即以计算换通信 技术先行,缺乏理论指导

程序的语法/语义复杂, 需要用户自已处理 任务/数据的划分/分配 数据交换 同步和互斥 性能平衡

并行语言缺乏代可扩展和异构可扩展, 程序移植困难, 重写代码难度太大 环境和工具缺乏较长的生长期, 缺乏代可扩展和异构可扩展 3 并行程序设计模型

3.1 计算圆周率的样本程序

计算圆周率的c语言代码段(串行程序) #define N 1000000 main() { double local, pi = 0.0, w; long i;

w=1.0/N;


并行程序设计(19).doc 将本文的Word文档下载到电脑 下载失败或者文档不完整,请联系客服人员解决!

下一篇:_悬崖上的金鱼公主_宫崎骏之童心复萌

相关阅读
本类排行
× 注册会员免费下载(下载后可以自由复制和排版)

马上注册会员

注:下载文档有可能“只有目录或者内容不全”等情况,请下载之前注意辨别,如果您已付费且无法下载或内容有问题,请联系我们协助你处理。
微信: QQ: