并行编译简介

并行编译简介

ID:74245441

大小:1.34 MB

页数:51页

时间:2021-12-28

并行编译简介_第1页
并行编译简介_第2页
并行编译简介_第3页
并行编译简介_第4页
并行编译简介_第5页
并行编译简介_第6页
并行编译简介_第7页
并行编译简介_第8页
并行编译简介_第9页
并行编译简介_第10页
资源描述:

《并行编译简介》由会员上传分享,免费在线阅读,更多相关内容在应用文档-天天文库

1、并行编译简介国家高性能计算中心(合肥)22021/12/8并行编译简介并行编译器的组成及任务数据依赖关系循环的向量化与并行化国家高性能计算中心(合肥)32021/12/8并行编译器的组成及任务源代码程序分析程序优化并行代码生成向量机:组织向量循环寄存器分配流水线调度共享存储多机系统:任务划分处理机调度同步分布存储多机系统:数据和计算分布通信同步数据依赖与控制依赖关系分析数据流分析包括循环向量化与并行化在内的各种优化并行语义识别,处理指令级并行调度国家高性能计算中心(合肥)42021/12/8数据依赖关系Def1:语句S和T

2、,若存在变量x使之满足下述条件之一,则称语句T依赖于语句S,记为ST,否则S和T之间没有数据依赖关系:(1)流依赖:SfT,若xOUT(S)且xIN(T)且T使用S计算出的x的值;T流依赖于S;(2)反依赖:SaT,若xIN(S)且xOUT(T)但S使用x值先于T对x的定值;T反依赖于S;(3)输出依赖:SoT,若xOUT(S)且xOUT(T)但S较之T先对x进行定值;T输出依赖于S;国家高性能计算中心(合肥)52021/12/8e.g.考虑语句序列:S:A=B+DT:C=A*3U:A=A+CV:E=A

3、/2依赖关系示例IN:BD,OUT:AIN:A,OUT:CIN:AC,OUT:AIN:A,OUT:ESfTSfUSoUTfUTaUUfV国家高性能计算中心(合肥)62021/12/8依赖关系示例e.g.循环语句:fori=1to100doS:A[i]=B[i+2]+1;T:B[i]=A[i-1]–1;endforS(1):A[1]=B[3]+1T(1):B[1]=A[0]–1S(2):A[2]=B[4]+1T(2):B[2]=A[1]–1S(3):A[3]=B[5]+1T(3):B[3]=A[2]–1...S(

4、100):A[100]=B[102]+1T(100):B[100]=A[99]–1fa依赖关系:SfTSaT国家高性能计算中心(合肥)72021/12/8数据依赖关系Def2:语句S和T在循环L中。如果S的实例S(i)和T的实例T(j)以及变量uS,变量vT,满足:(1)u和v至少有一个是输出变量;(2)uS(i)和变量vT(j)表示同一个存储单元M(3)在L的顺序执行中,S(i)先于T(j)(4)在L的顺序执行中,S(i)之间T(j)没有其他对M的写操作;则u、v引起T依赖于S,即ST,称为T(j)依赖

5、于S(i),其中:流依赖:uOUT(S),vIN(T)反依赖:uIN(S),vOUT(T)输出依赖:uOUT(S),vOUT(T)T对S的依赖即为满足上述条件的偶对(S(i),T(j))的集合。国家高性能计算中心(合肥)82021/12/8依赖距离和依赖向量令α=(α1,α2,…,αn)和β=(β1,β2,…,βn)是n层循环内的n个整数下标向量,假定α和β存在数据相关性,则依赖距离向量(DependentDistanceVector)D=(D1,D2,…,Dn)定义为β-α;而依赖方向向量(Dependent

6、DirectionVector)d=(d1,d2,…,dn)定义为:或1或0或-1国家高性能计算中心(合肥)92021/12/8例如,有如下的三层循环嵌套:fori=l1tou1doforj=l2tou2dofork=l3tou3doA(i+1,j,k–1)=A(i,j,k)+Cendforendforendfor则数组A的三维迭代之间的相关距离向量D=(i+1–i,

当前文档最多预览五页,下载文档查看全文

此文档下载收益归作者所有

当前文档最多预览五页,下载文档查看全文
温馨提示:
1. 部分包含数学公式或PPT动画的文件,查看预览时可能会显示错乱或异常,文件下载后无此问题,请放心下载。
2. 本文档由用户上传,版权归属用户,天天文库负责整理代发布。如果您对本文档版权有争议请及时联系客服。
3. 下载前请仔细阅读文档内容,确认文档内容符合您的需求后进行下载,若出现内容与标题不符可向本站投诉处理。
4. 下载文档时可能由于网络波动等原因无法下载或下载错误,付费完成后未能成功下载的用户请联系客服处理。