- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
並列計算機論-e.ics.nara.ppt
並列計算システム特論演習 ループ表現 ループの並列実行 並列化の例 ループ?インターチェンジ ループ?アンローリング ループ?ディストリビューション ループ?インターチェンジ ループ?ピーリング ストリップ?マイニング ループ?フュージョン ループ?コラプシング : 複雑な依存関係を持つループの並列化 ループ?スキューイング適用後 Do I=1,M Do J=I,N+I A(I,J-I+1) = (A(I,J-I+1)+A(I+1,J-I+1)+A(I,J-I+2))/3 Enddo Enddo 巡回する依存関係を持つループの並列化 課題 依存巡回における各依存は実距離によってラベル付けされる。 ネストしているループがあたかも単一ループであるかのように巡回縮小が適用される。 3. 実依存縮小 (TD 縮小) 1 2 3 4 5 6 3 4 5 6 7 8 9 10 A B J I 11 12 7 8 13 14 0 TD 巡回縮小 DO K = 1 , NM , λ ENDDO A ( I , J ) = B ( I –3, J - 5 ) B ( I , J ) = A ( I – 2, J – 4 ) DOALL I = T1, T2 DOALL J = L1, L2 ENDDOALL ENDDOALL (c) T1 = ( K DIV M ) + 1 T2 = ( ( K + λ) DIV M ) + 1 T3 = ( K MOD M ) + 5 T4 = ( ( K + λ) MOD M ) – 1 + 5 IF I T1 THEN L1 = 5 ELSE L1 = T3 IF I T2 THEN L2 = N2 ELSE L2 = T4 S 1 δ1 S 2 δ2 ??? δk-1 S k δ k S 1 を、それぞれ長さ N1, N2, ???,Nm のm個のループの中でネストした、k個のステートメントから成る依存巡回とする。 <φi1,???, φ i m> : 距離ベクトル Φ i : δ i ( i = 1, ???, k ) の実距離 TD縮小によって得られる reduction factor は単純縮小によって得られる減少係数の総数以上である。 min (Φ1,???,Φ k )≧Π min (φ1i, φ2i ,???, φ k i) m i=1 添字式の違い 依存関係の距離 DO I = 2 , N A ( 3I + 1 ) = ??? ??? = A ( 2I - 4 ) ENDDO 増分係数ρ= 2 3 I + 1 2 I – 4 の時、フロー依存あり 差分 D = 3 I + 2 – 2 I + 4 = I + 5 D ρ I + 5 2 = 回のイタレーション以降はA ( 3 I + 1 ) は使えない DOALL を含む形に変換可 依存距離の計算 J = 2 L 1 : INC = MIN ( N – J , CELL (( J + 5 ) / 2 ) –1 ) DOALL I = J , J + INC A ( 3I + 1 ) = ??? ??? = A ( 2I - 4 ) ENDDOALL J = J + INC + 1 IF J N GOTO L 1 依存関係、保持 変換は効果的か? ループ長 マシン特有の同期命令の性能 D やρのサイズ などの要因によって決まる 単一ループにおけるa I + b の形の線形表現に対する距離計算の概要 DO I = 1 , N A ( a I + b ) = ??? ???= A ( c I + d ) ENDDO フロー依存が存在する a i – c i = d – b が成り立つ gcd ( a , c ) がd – b を割り切る i = i 0 + j = j 0 + t c gcd (a , c ) t a gcd (a , c ) 解のひとつが( i 0 , j 0 ) ならば、任意の解 ( i , j ) は、 添え字I に対し、ある i , j があり 1 I N かつ a i + b = c j + d * SCS特別講義 平成13年10月15日 計算能力増大 並列アーキテクチャとコンパイラ 逐次処理のソフトウェアへの投資、莫大 物理的限界 並列計算 既存のソフトウェアを並列計算機で効率よく作動させるにはどうすれば良いだろう? リストラクチャリング?コンパイラ Fortran Processor C Processor コンパイラの役割 PARAFRASE-2 Parallel Fortran Parallel
文档评论(0)