- 1、本文档共37页,可阅读全部内容。
- 2、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。
- 3、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 4、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第四章 程序性能评价与优化 第四章 程序性能评价与优化 4.1 并行程序的执行时间和并行算法的时间复杂性 ● 4.1.1 并行程序的执行时间 ● 4.1.2 并行算法的时间复杂性 ● 4.1.3 代价最优算法 4.2 并行程序的性能评价 ● 4.2.1 加速比定律 ● 4.2.2 基准测试程序 4.3 程序的性能优化 ● 4.3.1 串行程序性能优化 ● 4.3.2 并行程序性能优化 4.1 并行程序的执行时间和并行算法的时间复杂性 4.1.1 并行程序的执行时间 在消息传递系统中,求解一个算法的整个执行时间 tp 应包括: 计算时间 tcomp 通信时间 tcomm 即:tp = tcomp + tcomm 对 COW 而言,通信时间一般近似地表示为: tcomm = tstartup + n tdata 在对计算时间进行计时,常采用程序中需要执行的计算步来表示。 4.1.2 并行算法的时间复杂性 令 f(n) 和 g(n) 是定义在自然数集合N 上的两个函数, 定义1: 如果存在两个正数 c 和 n0 ,使得对于所有 的 n ? n0 均有f(n) ? c g(n) ,则标记为: f(n)=? ( g(n) ) 我们称 g(n) 为 f(n) 的上界。 定义2: 如果存在两个正数 c 和 n0 ,使得对于所有 的 n ? n0 均有f(n) ? c g(n) ,则标记为: f(n)= ? ( g(n) ) 我们称 g(n) 为 f(n) 的下界。 4.1.2 并行算法的时间复杂性 定义3:如果存在正数 c1、c2 和 n0 ,使得对于所有的 n ? n0 均有c1 g(n) ? f(n) ? c2 g(n) ,则标记为 f(n)= ? ( g(n) ) 我们称 g(n) 为 f(n) 的紧致界。 即:如果 f(n)=? ( g(n) )且 f(n)= ? ( g(n) ) 则 f(n)= ? ( g(n) ) 算法的执行时间也称算法的时间复杂性,常用其上界? 、下界 ? 和紧致界 ? 表示。 4.1.2 并行算法的时间复杂性 计算/通信比: tcomp / tcomm 如果计算和通信时间具有相同的时间复杂性,则当问题规模 n 增加时,通信开销往往会随之增加; 我们希望计算/通信比大于1,当问题规模 n 增加时,通信开销会随之相对减少。 例如:通信时间= ? ( n ),而计算时间= ? ( n2 ),当 n 增大到一定值后,计算时间将支配整个并行算法的执行时间。 4.1.3 代价最优算法 并行算法的代价:并行算法的运行时间 t与所需的处理器数 p 之积,即 c = t * p。 如果一个并行算法的代价与相应的(最佳)串行算法的执行时间在同一个数量级上,则称该并行算法为代价最优的。 4.2 并行程序的性能评价 4.2 并行程序的性能评价 并行程序性能评测与并行计算机体系结构、并行算法、并行程序设计一起构成了“并行计算”研究的四大分支。在并行计算系统上进行计算的主要目标就是要加速整个计算过程,所以研究并行系统(并行算法、并行程序)加速性能十分重要。 随着计算规模的增加和机器规模的扩大,研究计算系统的性能是否能随着处理器数目的增加而按比例的增加,就是并行计算的可扩展问题。为了方便地、可比较地评价并行计算机系统的性能,人们提出了许多基准程序,了解这些基准测试程序对于我们客观公正地评价并行计算机系统非常重要。 4.2.1 加速比定律 在给定的并行计算系统上给定的应用,并行程序的执行速度相对于串行程序加快的倍数,就是该并行程序的加速比。 4.2.1 加速比定律 我们要给出两个加速比性能模型: 适用于固定计算负载的 Amdahl 定律 适用于扩展问题的 Gustsfson 定律 4.2.1 加速比定律 Amdahl 定律的出发点: 固定不变的计算负载; 固定的计算负载分布在多个处理器上的, 增加处理器加快执行速度,从而达到加速的目的。 ?Gustsfson 定律的出发点: 对于很多大型计算,精度要求很高,即在此类应用中精度是个关键因素,而计算时间是固定不变的。此时为了提高精度,必须加大计算量,相应地亦必须增多处理器数才能维持时间不变; 除非学术研究,在实际应用中没有必要固定工作负载而计算程序运行在不同数目的处理器上,增多处理器必须相应地增大问题规模才有实际意义。 4.2.1 加速比定律 参数定义: P
您可能关注的文档
最近下载
- 2013款别克昂科拉用户使用手册.pdf
- 高考语文高考帮备考教案(新教材):10图文转换.pptx VIP
- 第八章 进食障碍(定).ppt
- 商务英语,语言学概论,汉英对比语言学,(外语教学与研究出版社)大题.pdf
- 山西经贸职业学院 内部质量保证体系建设与运行实施方案 .pdf
- 中国近现代史纲要(海南大学)知到智慧树章节答案.docx
- 广东药科大学2021-2022学年第1学期《高等数学(上)》期末考试试卷(B卷)及标准答案.pdf
- 新闻传播法教程魏永征课后答案.docx
- 课程思政领航课《财务会计》项目四任务2:存货计量教案.docx
- 沪教版英语小学五年级上学期期末试卷及解答参考(2024年).docx VIP
文档评论(0)