28
Automatic Data Distribution for CFD Applications on Structured Grids Michael Frumkin 1 and Jerry Yan 2 NAS Technical Report NAS-99-012, December 99 {frumkin,yan}@nas.nasa.gov NAS Parallel Tools Group NASA Ames Research Center Mail Stop T27A-2 Moffett Field, CA 94035-1000 Abstract Data distribution is an important step in implementation of any parallel algorithm. The data distribution determines data traffic, utilization of the interconnection net- work and affects the overall code efficiency. In recent years a number data distribu- tion methods have been developed and used in real programs for improving data traffic. We use some of the methods for translating data dependence and affinity relations into data distribution directives. We describe an automatic data alignment and placement tool (ADAPT) which implements these methods and show it results for some CFD codes (NPB and ARC3D). Algorithms for program analysis and derivation of data distribution implemented in ADAPT are efficient three pass algorithms. Most algorithms have linear complexity with the exception of some graph algorithms having complexity O(n 4 ) in the worst case.

Automatic Data Distribution for CFD Application on

  • Upload
    others

  • View
    19

  • Download
    0

Embed Size (px)

Citation preview

Page 1: Automatic Data Distribution for CFD Application on

Automatic Data Distribution for CFD Applications onStructured Grids

Michael Frumkin1 and Jerry Yan2

NAS Technical Report NAS-99-012, December 99

{frumkin,yan}@nas.nasa.govNAS Parallel Tools Group

NASA Ames Research CenterMail Stop T27A-2

Moffett Field, CA 94035-1000

Abstract

Datadistribution is animportantstepin implementationof any parallelalgorithm.The data distribution determines data traffic, utilization of the interconnection net-work andaffectstheoverall codeefficiency. In recentyearsanumberdatadistribu-tion methods have been developed and used in real programs for improving datatraffic. We use some of the methods for translating data dependence and affinityrelationsinto datadistributiondirectives.Wedescribeanautomaticdataalignmentandplacementtool (ADAPT) which implementsthesemethodsandshow it resultsfor some CFD codes (NPB and ARC3D). Algorithms for program analysis andderivation of data distribution implemented in ADAPT are efficient three passalgorithms. Most algorithms have linear complexity with the exception of somegraph algorithms having complexity O(n4) in the worst case.

��������� ������������������ ����� �"!�����#%$�&'����� $�(*)+� )-,.����"/10����(*)+� 2�3'�54�6�7�6�$�����898'�:�"�;�!�����<=$�,.)->54�7�6�?�3'��7�7�72���(@)+�+A+!�BC!�#%!������ $�(*)+� )-)+DE��#F����#G��0�/H���@,.�����"��/"$�����8"8'���"�;�!�����<=$�,.)->54�7�6�?�3'��7�7�7

Page 2: Automatic Data Distribution for CFD Application on

I

Page 3: Automatic Data Distribution for CFD Application on

J

K+L+M NPO Q RTS�UPVWO XYRTNZ\[^]_]a`^bdcfegih_j�[lkmk�en eo]�ep@`rqsnth_uwvsb=`rx�[zyavs[^b|{|`^b|u}egi~ [�`^{�eovaeb=e]_]_[^]svsbd`^�

c�b=eu}�C��en e�]�`^~WenGh�`^g�eg�k�e~�~ [zyCy�vaen�nG[^b|g�yae{�{�[^~�n�nG�+[�eu}`^q�gint`r{�~F`ruwuwqsg+h_~Fe�nGh�`rg�y�h_g\nG�+[�vsb=`lcrbdeuw�a[^{�{�[r~�nGh_x�[^g+[lyCy�`r{�nG�+[�~Fe~��+[^��uw[^u}`rb p�~ ��eg+g+[r]-egTk~F`ruwuwqsg+h_~FenGh�`rg�g+[^nG��`rb �*����en eEnGbde{�{�h_~avs]�eg+g+h_gTcP��e�y+h_uwva`^b|n eg+nl{|`^b�cfeh_gih_gTcvs[rb {|`^b|u}eg+~�[�`r{zx�[^~�n|`^b�egTk���������u}e~��+h_gi[ly��=h_nzh�yty�nGh_]_]FhHuwva`rb n|eginz{|`^b�~ ~����-��}��u�e~ �+hHg+[lytegTk���h_]_]��f[�u}`^b|[�~�b h_n�hH~We]�{|`rb�u}e~��+h_g+[zy���hHn���kz[r[^vs[rb�uw[^u}`rb p�+h_[^bdeb ~��+p*�

  bd`^~ [zyCy�h_gTc�kz[^vs[rgTkz[rginTk�en e¡h_nG[ru}y�b [l¢�qsh_b|[zy�nG�+[£h_nG[^u}y�n `£�l[£]�`ze�kl[zk¤h_gin `nG�+[£yCeuw[avsbd`^~ [zyCyC`^bTenWnG�+[£yCeuw[�nGh_u¥[l����en e¡kl[^vs[rgTkz[^g+~ [£egTk¤k�en e*]�ep*`^qsn+kl[^�nG[rb uwh_g+[�nG�+[¥k�en e¦nGb=e{�{�h_~�enEnG�i[§[^¨W[^~ qsnGh�`rg©nGh_uw[z�Wª@�i[�xt`r]_qsuw[¥egTk�y�vs[^[lk�`^{k�en etnGbde{G{�h_~�~Feg��l[o`rvsnGh_uwh_j�[zko�lp«evsvsb=`rvsb h�enG[oe]_h�c�g+uw[^g+n�eg�k�klh�y¬n�b h_�lq�nGh�`^g�`^{nG�+[­k@en e��

��g®u}egip¯evsvs]_h_~FenGh�`rg�y±°²hHg+~ ]_qakzh_gTc´³-`ruwvsqsn enGh�`rgTe]¥µf]_qsh�k¶�-pfgTeuwh_~Fy°²³�µf��·-`^g¸y�nGb q�~�nGq�b [zk¹c�b h�k�yC·�nG�+[�k�en e�kl[^vs[rg�kl[^g+~�[lyºeb [»��[^]_]¤y�nGb|qs~�nGq�b [lk��¼ qs~ �½kz[^v�[^gTkz[rgi~ [zyP~Feg��f[�[r¨Wvsb [lyCy�[zk��fp¾y¬n�b qs~ nGqsb|[zk�e{G{�h_g+h_nGpmb [r]�enGh�`^gTyP�f[^�nG��[r[^g�eb bdep@y�egTk­~Feg��f[¿nGbdeg�y�]�enG[lk­h_g+n `¿À   µº°²À�h�c��   [^b|{|`^b|u�eg+~ [¿µ*`^b|nGb=egT·k�en eme]_h�c�giuw[rg+n�eg�kÁk@en e©klh�y�nGb h_�lq�nGh�`^gÂy�n enG[^uw[rg+n yC���-[rb h_x�[zkÃh_g\nG�+h�y¦��epf�k�en e¿kzh�y�nGb|h_�lqsnGh�`rgTyi~F`rg+x�[^b nlnG�+[Ävsbd`zc�b=euÅh_g+n `¦ePk@en eTvaebde]_]_[^]W{|`^b|uÆ��h_nG����[^]_]`rb=cfegih_j�[lk�k@en e¡nGb=e{�{�h_~F�

��g}n��ih�y¿vaev�[^b¦��[�vsb|[zy�[rgin¦eg}Ç-qsn `ru}enGh_~§È�en e§Ç¦]_h�crg+uw[rg+n�egTk¾É.]�e~ [^�uw[^g+nËÊ¿`l`^]l°²�-�-�   ª�·Ëkz[ly�h�crg+[lk¤eg�k£h_uwvs]_[ruw[^g+nG[lk£n `a{|e~�h_]_h_n enG[a~W`^g+x�[^bdy�h�`^g�`^{³�µf�\~F`lkz[ly+n `�À   µ@��ª��+[�n `l`^]Ë��e�yTy�qs~ ~�[zyCy�{�qs]_]_p�evsvs]_h_[zk-n `-eEg+q�uw�l[^b�`r{f³�µf�~F`lkz[ly¬�sh_g+~�]_q�kzh_gTc���� ¼   eb=e]_]_[^]�Ì@[^g+~��+u}eb �*y-°²�   Ì�·²�aͲÎ�ϲ�aegTk��-Ða³ J �-�aͲÑ�Ï���-�-�   ª§h_uwvs]_[^uw[rg+n y*e�giq�uw�l[^ba`r{.�fgT`^��g�k�en eÄklh�y¬n�b h_�lq�nGh�`^g�n�[^~��+g+h�¢�qs[ly*°�y�[r[¼ [^~ nGh�`^g�Ò��'·²��h_g+xt`^]_x�h_gTc£u¥[ru}`^b|p­n�b=e{�{�h_~¡b|[zkzq�~�nGh�`rg§x�h�eok@en eokzh�y�nGb h_�fqsnGh�`rgw`rvsnGh_�uwh_j�enGh�`^gT�FZ\[�y�n eb|n�{�b=`ruÓnG�+[¤vsb=`lc�b=euÓu}`lkz[^]¡eg�kÔeg�h_g+nG[^b|gTe]�b [rvsb [ly�[^g+n e�nGh�`rg�`r{+n��i[ovsb=`lcrbdeu}��ª��+[^g���[�eg�e]_pfj�[£nG�+[¤eb|b=epwe{�{�h_g+hHn�p¥`rg�nG�+[o]¬`l`^v�]_[rx�[^]_�g+[zy�nz]_[^x�[r]�egTk�b=`rqsnGh_g+[Ä]H[rx�[^]iegTk«y¬�T`r�Õ��`r�Õn `�nGbdeg�y�]�enG[ÄnG�i[¦e{�{�h_gih_nGp-b [r]�enGh�`^gh_g+n `�À   µ§k@en etu}evsvsh_gTc�klh_b [r~�nGh_x�[zy*egTk�kzh�y�~�q�yCyfh_ginG[rb vsbd`^~ [zkzq�b=e]fk�en|eÄkzh�y�nGb h_��lq�nGh�`^gTyC��ª��+[rgÖ��[Ô~F`ruwvaeb [�nG�+[\k�en e�u}evsvsh_gTc½klhHb|[^~ nGh_xf[ly¥c�[rgi[rb=enG[lk\�lp

Page 4: Automatic Data Distribution for CFD Application on

Î

�-�-�   ª×��hHn��¯k@en e½u}evsvsh_gTclyÔqay�[lkØh_gÙÀ   µÚxf[rb=y�h�`^gTy\`r{��   Ì I � J egTk�-Ð�³ J ����Z\[Ä~F`rg+~�]_qakl[ÄnG�+[�vaevs[^b*��h_nG�¥e¿y�qsb x�[rp�`r{f[^¨Wh_nGh_gTc�k�en e¿klh�y¬n�b h_�lq�nGh�`^guw[^n���`lk�y���~F`rg+~�]_qay�h�`rg�y���egTk¤vs]�eg�y�{|`rb�{�qsn�qsb [£��`^b|�*�

Û L+ÜPQ RTÝTQ Þ+ß àáR�SPâ+ã�-�-�   ªäegigT`rn enG[lytµfå�Ðaª@Ða���Åvsbd`zc�b=eu}y���h_nG�Ôk�en ePn�b=e{�{�h_~­`rvsnGh_uwh_j�hHgTc

k�en e§e]_h�c�giuw[rg+nÄegTk»klh�y¬n�b h_�lq�nGh�`^gäkzh_b [r~�nGh_x�[zyo°²��[­��h_]_]sq�y�[­nG�+[­��`rb=k»æu}evs�vsh_gTcfç�n `¦b [r{�[^b�n `¦�@`^nG�Ôkzh_b|[^~�n�h_xf[lyC·�egTk«��h_nG�ºÀ   µ�h_gin�[^b {|e~ [��l]�`r~��*yC�=���-�   ªh_gTy�[^b|n yPklh_b [r~�nGh_x�[zyE[^h_n��i[rb�h_uwuw[lkzh�enG[^]_p��l[r{|`^b|[-]�`l`^v�g+[zy�n y¿`rb��f[^{|`rb [-nG�+[�{�h_b=y�n[^¨W[r~�q�n e�l]_[�y¬n|enG[^uw[rginth_g}e¤y�qs�fb=`rqsnGh_g+[z�rª@�+[zy�[�kzh_b|[^~�nGh_x�[ly¿k�`�gT`^n�e{�{�[r~�n*~W`^g+�nGbd`^]F{�]�`r�Ø`^{fnG�+[�vsbd`zc�b=eu®`^gºy�h_gTc�]_[�vsbd`^~ [zyCyC`^bd�|ª@�i[¦klhHb|[^~ nGh_xf[ly��d�T`^��[rx�[^b|�d~Feg�Tex�[§y�h¬kl[�[^{�{�[r~�n yÄ`^g�vaeb=e]_]_[r]fu}e~��+h_g+[zyth_{sv�b=`^~ [zyCyC`^bdy�eb|[�gT`^nay�pfgi~ �+b=`^g+h_j�[lk�l[r{|`^b|[�egTk¥e{�nG[rbEnG�+[�[^¨W[r~�qsnGh�`rgm`^{snG�+[�Ðaè��-é@��ê¦�áeg�k§Ðaè��-� ¼ ª@Ða��Ì��-ª@è�°�y�[r[Í�Í � Î�Ï�Ï�·Ekzh_b [r~�nGh_x�[zyC�FZ\[¤��h_]_]¡e�yCy�qsuw[¤n���enTnG�+[�vsb=`lcrbdeuÓh�y¡~F`ruwvsh_]_[zkº��h_n��äegÀ   µ±~F`ruwvs]_h�egin�~W`^uwvsh_]_[rb��l[r{|`^b|[Ô[^¨W[r~�q�nGh�`^gÅegTk\nG�Ten�nG�+[Ôvsbd`^~�[lyCyC`^b=y§h_g+�xt`^]_x�[lk­h_g«n��i[£[^¨W[r~�q�nGh�`^g�eb [¤y�plg+~��+bd`^g+h_j�[zk¤�l[r{ `rb [¤egTk�e{�nG[rb�Ðaè���é���ê��ëegTkÐaè��-� ¼ ª�Ð���Ì���ª�èÔkzh_b [r~�nGh_x�[zyC�

µ*`^b�egTe]_p@y�h�y¦egTk�nGb=egTy�{|`^b|u}enGh�`^g»v�qsb va`ly�[zy��Ee�µlå­Ðaª�Ð��-�®vsb=`lc�b=euìh�yb [rvsb [ly�[^g+nG[lk-�fp­~F`^g+nGbd`^]sea{�]�`^�ícrbdevs�wÍ � Ï���ª@�+[Pg�`lkz[lyE`^{inG�+[-c�bdevs�§b [rvsb [ly�[^g+nvsbd`zc�b=euî�*e�y�hH~T�l]�`r~��*y*°²Ì�Ì�·zegTk�eb ~Wyfb [rvsb [ly�[^g+nËva`lyCy�h_�l]_[�n�b=egTy�h_nGh�`^gTyf�f[^nG��[r[^gÌ�Ì¡��ª��+[oyC`^q�b ~�[�vsb=`lc�b=eu´��h_]_]r�l[�vaebdy¬[lk£h_g+n `oe*~F`rg+nGb=`r]r{�]�`^�¸c�b=ev���eqac�uw[^g+nG�[zk���h_nG��vaeb=y�[onGb [r[zy@{|`rbT[le~��©y�n enG[^uw[rg+n ���-�-�   ªºu}`lkzh_{�h_[zy@n��i[o~F`rg+nGb=`r]l{G]�`r�c�b=evs��{�b=`ruÚ���+h_~���nG�+[¿b|[zy�qs]_nGh_gTc�eg+gT`^n enG[lk­vsbd`zc�b=euÚ��h_]_]z�f[­c�[^g+[rb=enG[lk��

Z\[«b|[^{|`rb uwqs]�en�[«nG�+[�kl[^{�h_g+h_nGh�`^g\`^{�kl[^vs[rgTkz[^g+~�[��l[rnG��[^[rg\crbdeuwu}eb�enG�nGb|hH�fqsnG[lya�fpÔyCepfh_gTcºæ�k@en eoh_nG[ruðïwkl[^vs[rgTk�yo`^gäk�en e�h_nG[ru×ñ«h_{Txte]_qs[�`r{tï�kl[^�vs[rg�k@y�`^gäxte]_qs[Ô`r{�ñtò«°�y�[^[ÔÍ � ÏTva� I Ñ�Î��%·�����{Pn��i[Ôk�en|e§h_nG[^u}y�eb|[»kl[^{�h_g+[zkÔ�lpxteb h�e�l]_[lysóôegTk�õ�b [ly�vs[^~�n�hHx�[r]_pl�F��[­yCep�nG�Ten�æCóÕkz[^v�[^gTk�y�`rg�õ£ò����{ióÕegTk�õeb [¦eb bdep*y¬�^��[�~We]_]FnG�+[�y�[rn�`r{lvaeh_b=y�`r{@kz[rvs[^gTkz[rg+n�eb bdep-[^]_[ruw[^g+n y�æCö5÷H÷^øúùføHûüñ­ý%þ ÿ� öWû�ø��Fù�� þ=û��Tþ þ=ù-óîegTk�õ£ò��^ª@�i[�e{G{�h_g+h_nGp�b [^]�en�h¬`rgº~Wegº�f[¦nGb=egTy�]�enG[zk�h_g+n `�eb b=epe]_h�c�giuw[rg+n �tª��+[�evsvsbd`^vsb|h�enG[�kzh�y�nGb|h_�lqsnGh�`rg¸`r{�e]_h¬c�g+[zk¹eb|b=ep*y�b [zklqs~�[ly�nG�+[k�en e¡u}`rx�[^uw[rgin+vs[^b|{|`^b uw[lk­�fp¤nG�+[£vsb=`lc�b=eu}�

Page 5: Automatic Data Distribution for CFD Application on

� LPR�R��� äÞ+O Þ��©ã XYÝTNPßÖâ+NPO��g¦n��ih�y@y�[r~�nGh�`^g-��[�~F`rgTy¬h�kl[^b�nGb=egTy�]�enGh�`^g�`r{�k�en e�kl[^vs[rgTkz[^g+~�[o`rg¦n��i[�]�`z`rv

]_[^x�[r]rh_g+n `�k�en eÄe]_h�c�giuw[rg+n �Yé�`l`^v¤]_[^x�[r]fe]_h¬c�g+uw[^g+nËh�y*kz[rb h_x�[zk�{�b=`^uînG�+[�ö5÷ú÷røúùføúû²ñýGþ � öFû�ø��Wù¦�l[^n���[^[rgmeb b=ep*y*b|[^{�[rb [rgi~ [zk§h_g�nG�+[�]�`z`rvs�+egTk�n��i[�]�`l`^v��PöFû²ö���ýGöFù��'÷�þ ý� ý%ö����«°²�¦ª@ê�·��

� ÷ú÷^øHùløHû²ñ�ýGþ � öFû�ø��Fù��=µ*`rb¿eÄvaeh_b£`^{aeb|b=ep*y*qay�[lk�h_g�nG�+[�yCeuw[�]�`z`rvÔy�n enG[ruw[^g+nG���[}kl[^{�h_g+[wnG�+[}e{�{�h_g+h_nGpÃb|[^]�enGh�`rgÕe�y�e�~F`^b|b [ly�va`^gTkz[rg+~�[w�f[^nG��[r[^g¹eb bdepÃ[r]_[^�uw[^g+n ytb [r{�[^b b|[zk§��h_nG��nG�+[�yCeuw[�xte]_qs[§`r{snG�+[�]�`l`^v¥h_g�kl[^¨+�=é�[^naeb bdep*y

aegTk

beb [�e~�~�[lyCy¬[lk-��h_nG�§h_g�kl[^¨�{�qsg+~�nGh�`rgTy

idxaegTk

idxbb [zy�vs[r~�nGh_x�[^]_p*��ª��+[-e{�{�h_g+�

h_nGp�b [r]�enGh�`^g�~Feg��l[£b [rvsb [ly�[^g+nG[lk�e�y�e¡]_h�y�n�`^{Tkz[rvs[rg�kl[^g+nivaeh_bdy �

do i=1,n a(idxa(i))=b(idxb(i)) end doc Aff(a,b)={(idxa(i);idxb(i)), i=1,...,n}

��{@nG�+[^b|[«eb [�uwq�]_nGh_vs]_[«eb bdep@y�h_g�nG�+[«y�n enG[ruw[^g+nG�.nG�+[^gº{|`^b�[le~���v�eh_bo`^{¡eb b=ep*y��y�qs~ ��b [^]�enGh�`rg�[^¨Wh�y�n yC� ¼ h_uwh_]�eb ]_pf�ie�~F`rg+nGb=`r]@kz[rvs[^gTkz[rg+~�[ob [zy�q�]_n y@h_g©e{�{�hHg+h_nGp§b|[^�]�enGh�`^gTyf�f[^nG��[r[^g�nG�+[�eb bdep@yfh_g+xt`^]_x�[lkoh_g�nG�+[¡~F`^g+nGbd`^]fy�n enG[ruw[^g+n�egTk§e]_]feb b=ep*yh_g�[ze~ �«Ì@Ì�h_uwuw[zklh�enG[^]_p¥k�`ruwh_g�enG[lk­�fp¤nG�+[¤y�n enG[^uw[rg+n �

��öWû²ö!��ýGöFù��ü÷�þ=ý � ýGö"���$#%� è�e~���xteb h�e�f]_[£qay�[lk¤h_g�nG�+[£]�`l`^v�h�y@b [rvsb [ly�[^g+nG[lkºe�ye�gT`zkz[oh_g��-ª@ê«����y¡y��T`^��g�h_g�µlh�c�qsb|[ � �FnG��`£gT`lkz[ly�eb|[£~F`rg+gi[r~�nG[lk¤�lpweg�eb|~h_{�nG�+[�xte]_qs[«`^{�n��i[�{�h_b=y�n�x*eb|h�e�l]_[�h�ytqay�[lk§{|`rba~W`^uwvsq�n enGh�`^g»`r{�nG�+[«y�[^~F`rgTkw°²h_g`rnG�i[rb���`rb=k@y¬�@e¤k@en e£hHn�[^u kz[ly�~�b h_�f[zk��fp�nG�+[�y¬[r~F`rg�k�x*eb|h�e�l]_[�kl[^vs[rgTk�y¿`^g}ek�en e�h_nG[ru kl[zy�~�b|h_�l[lkº�lpwnG�i[�{�h_b=y�n ·��FZ\[ºeg+gT`^n enG[�[ze~��©�-ª�êÙeb ~¦~F`rg+g+[^~�n�hHgTcnG��`�eb bdep*yE��h_nG�}eg}e{�{�h_g+h_nGp�b|[^]�enGh�`rgw�l[rnG��[r[^gwnG�+[�eb bdep*y���µ*`^b¦eb bdep � egTkeg+p�`^{sh_n y�egi~ [zy�n `rb'&§h_g�nG�+[o�-ª@ê¸egme{�{�h_g+hHn�p§b|[^]�enGh�`rg��f[^nG��[r[^g � eg�k�&§~Feg�l[¥h_g+{�[^b b|[zk��lp±evsvs]_pfh_g�cwnG�+[ºö5÷ú÷røúùføúû²ñ)(*��öFøHù�ý,+ � þ�e]�`^gTcw[ze~ �ôkzh_b [r~�nG[lkÔvaenG�{�b=`ru-&¤n ` � �

���Ë=��.�"��/1D«A+0��"0l /_0���#%8'��//.�/1010 �s!�#�� #%��<t�"�i0�BC��!�<t0z�����8'� #G!����32t!��"��Ai0��'0z;����425.i/1010 �32*����/H�Ë���<=��#0�/H�60 /H����/_0�D�#%�'0��"��Da����'#%$12*!��"�*#%�'0��"��Da����"#87�0��<:9E������������"��<;r�s0��*0�/H�W!�80�B�0�/1!�0<;r���l0�#%#%!�������<�!��*)!�#F� #%��<T!��=9d�

Page 6: Automatic Data Distribution for CFD Application on

>

?A@CB!DFEHG�IKJ ��en e¡ªËb=egTy�{�[^bTê�bdevs��`r{+h_g+nG[^b|gTe].]�`l`^v»`^{xf[r~�n `rb h_j�[lk�eqsn `lyC`^b|nGh_gTc£µfµfª�{�b `^uÚµfª��f[^g+~��+u}eb|�@�

�$��þ � ÷ú÷^øHùløHû²ñML3��öFøúùONP+ � þK��³-`rg�y�h�kl[^b�n���`­y�n enG[ruw[^g+n y�h_g�e¡]�`z`rv

do i=1,n b(idxb1(i))=c(idxc(i))

!Aff(b,c)={(idxb1(i);idxc(i))} a(idxa(i))=b(idxb2(i))

!Aff(a,b)={(idxa(i);idxb2(i))}end do

ª@�i[£~��Teh_g�bYq�]H[£{|e~�h_]_h_n enG[ly�nG�+[¿[^¨Wv�b�[zyCy�h�`^g�`r{Te{RQsg+h_nGp�b�[^]�en�h¬`rg�{|`^bTh_g�klh_b�[^~ nG]_pkz[rvs[^gTkl[^g+n�eb bdep*y �

Aff(a,c)={(idxa(i);idxc(j)),j = max{J: J<=i,idxb1(J))=idxb2(i)}}

ª@�i[�{|`^]_]�`^��hHgTc¦[^¨+euwvs]_[�{�q�b nG�+[^b�h_]H]_q�y�nGb=enG[ly*�T`r�Æn|`�h_nG[^bdenG[§e{�{�h_g+h_nGp«b|[^]�e�nGh�`rg�y%�

do i=1,n c(idxc0(i))=d(idxd(i))

!Aff(c,d)={(idxc0(i);idxd(i))} b(idxb1(i))=c(idxc(i)) a(idxa(i))=b(idxb2(i))end do Aff(a,c)={(idxa(i);idxc(j)), j = max{J: J<=i,idxb1(J))=idxb2(i)}} Aff(a,d)={(idxa(i);idxd(k)), k=max{K: {K<=i, idxc0(K)=idxc(j), where j = max{J: J<=i,idxb1(J))=idxb2(i)}}

ª@�i[¥e{�{�h_g+h_nGpw~��Teh_g©b|qs]_[��+[^]_vay¡n|`¤~W`^uwvsq�nG[�nG�+[¤~ ]�`zy�qsb|[¥`^{¿e{�{�h_g+h_nGpwb|[^]�e�nGh�`rg�yE`rg¥ea]�`l`^v��-ª@ê«����{tevsvs]_h_[lk-n `-egweb bdep�e�yCy�h�c�g+[zk-h_g§nG�+[�]�`l`^vs�rh_nf��h_]_]Ë[^¨W�

y

u x1 x2

x

do j = 1, m x1 = y(j,i11+k) x2 = y(j,i12+k) x(j,i21+k) = x1 + x2 x(j,i22+k) = u*(x1 - x2)end do

Page 7: Automatic Data Distribution for CFD Application on

S

vsb|[zyCy�h_g½e{�{�h_gih_nGpmb [r]�enGh�`^gTy�`^{�eg\eb bdep©��h_nG��[ze~��½eb bdep©h_n�kz[^v�[^gTk�y�`^gT�z��gc�[^g+[rb=e]_��kzqs[-n `¦n��i[

max`^vs[rb=enGh�`rg¥h_gixt`r]_xf[lk�h_g¥nG�+[¦~ ��eh_g¥b q�]_[^�znG�+[�e{�{�hHg+h_nGp

b [r]�enGh�`^g«h�ysn `z`¿~F`ruwvs]_[^¨�n `¿�l[P[r¨Wvsb [lyCy�[zk�[r¨Wvs]_h_~�h_nG]_pT#�C��g«vsb=e~�n�h_~�[^��nG�+[­e{�{�hHg+h_nGpb [r]�enGh�`^gÖ`^{�nG[rgÃ~Fegä�l[�[^¨Wvsb|[zyCy�[zk»[r¨Wvs]_h_~�h_nG]_p\`rb¦~WegÃ�l[»evsvsbd`^¨Wh_u}enG[lkm�fp\ey�h_uwvs]_[�[r¨Wvs]_h_~�h_nsb [r]�enGh�`^gT�=µ*`^b�[^¨+euwvs]_[r�Ëh_{�eb b=ep�h_gTkzh_~�[lyÄeb [�]_h_gi[leba{�q�gi~ nGh�`^gTy`r{+nG�+[o]¬`l`^v�h_gTkz[r¨W�FnG�+[^g�nG�+[¤e{�{�h_g+h_nGp�b|[^]�enGh�`rg�~Weg��f[£b [rvsb [ly�[^g+nG[lk¤�lpwe¡]_h_g+[lebu}evsvsh_gTc¦�l[rnG��[^[rg»eb b=ep�h_gTkzh_~�[lyC�=ª��+[�u}eVU�`^b h_nGp�`r{�e{�{�h_gih_nGp�b [r]�enGh�`^gTyt��[�[^g+�~F`rqsg+nG[rb [zk¤{|e]_]zh_gin `£nG�+b [r[¿~ ]�e�y�y�[lyC�

W ù�þ ÿ|ûX��ÿ��Fù�þ@ö5÷H÷^øúùføúû²ñ¤ý%þ � öFû�ø��Fù��d��ª@�+h�y+nGpfvs[-`^{te{�{�hHg+h_nGp­b [^]�enGh�`rgTy+~Feg��f[�nGb=egTy��]�enG[lk�h_g+n `�nG�+[¦e]_h�crg+uw[rginlvsb=`rxfh�klh_g�c�~F`ruwuwqsg+h_~FenGh�`rg+��{�b [r[�~F`ruwvsqsn en�h¬`rgTyC�|��yy��T`^��g�h_g¤µfh�crq�b [ I �^[ze~ �¤[r]H[ruw[^g+n@`^{löokz[^v�[^gTk�yT`^gºe¿y�h_g�c�]_[Ä[r]H[ruw[^g+n@`^{=��egTke­y¬h_gTc�]_[¦[^]_[ruw[^g+n¡`^{Y(��dª@�+[¦À   µ©e]_h�c�g+uw[^g+n¡kzh_b [r~�nGh_x�[�e�yCy�[^b|n y�nG�Ten@nG�+[zy�[¦[r]_[^�uw[^g+n y�eb|[ºe]_h�c�gi[lk��F��y�b|[zy�qs]_nG�igT`�~F`^uwuwq�g+h_~FenGh�`^gTy�eb [�g+[^~�[lyCyCeb p}°²b [lclebdkz�]_[zyCy«`^{£nG�+[�klh¬y�nGb|h_�lqsn�h�`^gT·��+µ@`rb­nG�+[¥nGbdeg�y�]�enGh�`rg�n|`¥�l[¥va`lyCy�h_�l]_[�en¿u}`zy�n­`rg+[y�qs�*y¬~ b h_vsni~W`^[r{�{�hH~ h_[^g+ni~Feg��f[­kzh_{�{�[rb [rgin+{Gbd`^u[Z�\ � �'� ��]_^ �

?A@CB`D'EaG5bKJ ªWbdeg�y�]�enGh�`rg�`^{T`rgi[r��n `r�|`^g+[­e{RQ�g+h_nGp¤bY[^]�enGh�`rg�y�h_g+n `¤eg�e]Hh�c�g+uw[^g+nvsb�`^x�h�kzh_gTco~F`ruwuwqsg+h_~FenGh�`rg«{�bY[^[£~F`^uwv�qsn enGh�`rg�yC���`rnG[¿nG�TeninG�+[¤e]_h¬c�g+uw[^g+n

y¬n|enG[^uw[rgin+{|`^bF(�h�y�y�nGb�`rgTcr[rb�nG�+[rg�b�[z¢�qsh_b�[lk­�lp � ÷ú÷dc²ö�eR(�f��

g û²þ ù�(�ø � � ÷H÷^øHùløHû²ñhNaþ � öFû�ø��Wùi�K� ª@�+[�u}`ly�nË~F`ruwu}`^g�~Fe�y�[¡��[�`^�@y�[rb x�[¡h_g�`^qsbaevs�vs]_h_~FenGh�`rgTy�h�y§`rgi[r��n `r�G{�[r� e{�{�h_g+h_nGp}b|[^]�enGh�`rg�y��l[^n���[^[rgôeb bdep@y«°²{�[^� u¥[legTy§e{�h_¨W[zk§g+q�uw�l[^b|�Ëh_g�kl[^vs[rgTkz[^g+na`rg�nG�i[«eb bdep�y�h_j�[zyÄegTk§nG�+[�giq�uw�l[^bo`^{�]�`l`^v¥h_nG�

����&'�*� �����"!����f4��12*�z#%���42§�"�0���"���$0 /H�j;^���:D���8��������k�!�����"�0��0��*�����:DE�����C��8DE�=���"!�<=!�DE����#%!����0���0�/1/_0��!�#F0�8ml=��62*!��"�*0��*������Da������8�0�����'���/r0�/1/_0���!�#F(=n=3'����Da0 �����"���2���=��l#%����'01oi��8�"���z)p=&q.�(§<=!�/_�:���"!�BC�6rts"�54"u'$10=�����1v1w�0������ 2*#��'���=#%�z��������0���!����*<=� DaDE!���#F!��*0���!����#%�x;r#%��/1!y0 ���!�#G�C0���<�!����"������/r�Vox0 /1��#%#%!�����#���80���!����*<=�=DEDa!���#F!��*0���!����*#%�x;r#%��/1!y0 �"�

!HPF$ ALIGN A(i) WITH B(i+3)!HPF$ ALIGN B(j) WITH C(5*(n-j)-4)!HPF$ DISTRIBUTE C(BLOCK) do i=1,n b(n-i)=c(5*i-4) a(i-1)=b(i+2) end doc Aff(a,c)={(i-1;5*j-4), j=max{J:J<=i,n-J=i+2}}c or Aff(a,c)={(i-1;5*j-4), j=max{J:n-2<=2*i,J=n-i-2}}c or Aff(a,c)={(i-1;5*n-5*i-14), n-2<=2*i}

Page 8: Automatic Data Distribution for CFD Application on

Ñ

[^bdenGh�`^gTyC·��Cè@¨Wvs]_hH~ h_ntkzh_{�{�[rb [rgi~ [�`rvs[^bden `^bdys{|`^b�y�nGb q�~�nGq�b [zk�kzh�y�~�b|[^nGh_j�enGh�`rg�c�b h�k�y��{|`^bo[^¨+euwvs]_[^�Ec�h_x�[§b h�y�[§n|`wy�qs~��»b [r]�enGh�`^gTyC�˪��+[ly¬[«b [r]¬en�h�`^gTyÄ~Fegm�f[wevsvsbd`^¨Wh_�u}enG[lk��fp»e�y¬nG[rg+~�h_]aeg�k���[�~We]H]snG�+[^u y�nG[^g+~�h_]sb [r]�enGh�`^gTyC�rª¡`�`rvsnGh_uwh_j�[�e]_h¬c�g+�uw[^g+ni{|`^b�e�y¬n�[^g+~�h_]zb [^]�enGh�`rg«��[¿gT`^n�[Pn���eni{|`^b��f]�`^~��¥kzh�y�nGb h_�fqsnGh�`^g�nG�+[¿uw[zyCyCe�c�[y�h_j�[¡vs[^bsvaeb|nGh_nGh�`^g�v�`^h_g+n.h¬y�nG�+[�y¬q�uë`r{skzh�y�n eg+~�[ly*`r{.nG�+[�e]_h�c�giuw[rg+nËva`rh_g+nË{�bd`^unG�+[�`^nG�+[rbEy�nG[^g+~ h_]�va`^h_g+n y��Wy�[^[¡µfh�crq�b [ J �Yª�`¡uwh_g+h_uwh_j�[�nG�+[¡uw[zyCyCe�c�[oy�h_j�[¡��[�q�y�[�dø�� þ�(�ûX�Fýz�acúva`rh_g+n y*y�vs]_h_nGnGh_gTc�y�nG[rg+~�h_]�va`rh_gin|yfh_g+n `¡nG��`�y�[rn y*`r{.[z¢�qae]fy�h_j�[l·.e�yte]_h¬c�g+�uw[^g+nÄva`rhHg+n yC� ¼ `^�*{|`^b�y�nG[rg+~�h_]¿e{�{�h_g+h_nGp»b [r]�enGh�`^gTy��*��[mc�[^g+[^bdenG[me]_h�crg+uw[rgin¦e�y�lh�y�[r~�n `rb=yt`r{znG�+[�e{�{�hHg+h_nGp¦va`rh_g+n y�h_g­nG�+[�e]_h�crg+[r[z� ��~�pf~�]_h_~¿kzh�y�nGb h_�fqsnGh�`^g¤{|`^b�y�nG[^g+�~�h_]@e{�{�h_g+h_nGp§b [^]�en�h¬`rgTy@��`^q�]�k¤~�b|[zenG[�eg�`rb=kl[^b¿`^{�u}e�c�g+h_nGqakz[ou}`^b|[£~F`ruwuwqsg+h_�~FenGh�`rgTy�nG�Teg«�f]�`^~��¥kzh�y�nGb|h_�lqsn�h¬`rg�egTk­h�y�gT`^ni~W`^gTy�h�kz[rb [zkºe�y�e¡x*e]_h�kº`^vsnGh�`rgT�

?A@CB!DFEHG!{KJ ª@�+[�u¥[lyCyCe�cr[-y�h_j�[�vs[^b*vaeb|nGh_nGh�`^g�va`rh_g+nlh�yTy�qsu×`^{*klh�y�n eg+~�[zyE`^{fnG�+[e]_h�c�g+uw[^g+niva`rh_gin+{Gb `^uÚnG�+[¤`^nG�+[rb�y�nG[^g+~ hH]zv�`^h_g+n yC�

��ý,+�þ}|�þ,��þ ù�|�þ=ù6(�þK�Ë��{anG�+[rb [§h�y�e�kzh_b [r~�nG[lk¥v�enG�mh_gm�-ª@êÆ���+hH~ �¾y�n eb n|y�egTk[^gTk@yÄh_g»n��i[�yCeuw[«gT`lkz[^�snG�+[^gÔnG�+[^b|[«h�y¦e�kz[^v�[^gTkz[rg+~�[«~Feb|b h_[zk��fp�nG�+[«]�`z`rva�ª@�ih�y¡vaenG��e]_]�`r��y�q�y¡n `¤h_nG[rb=enG[�nG�+[¤~��Teh_g©b q�]H[l�F��y�e�b [ly�qs]_nG�i[le~���eb b=epw[r]_[^�uw[^g+nTkz[rvs[^gTk@y�`rg�uwq�]_nGh_vs]_[£[^]_[ruw[^g+n y¡`^{�nG�+[¤yCeuw[¤eb|b=ep*��ª��+[^b|[¤eb [onG��`£h_uw�va`rb n eg+n�~Fe�y�[zy%�CnG�+[-kl[^vs[rgTkz[^g+~ [Ph¬yaænGb q�[zç����+[^g§vsb|[^x�h�`rqay�]_p­~F`ruwvsqsnG[lk�eb b=ep[^]_[ruw[^g+n y¿eb [�qay�[zk©egTkmæ�eginGh�ç£���+[^g}e£qay�[lk©eb bdep�[r]_[^uw[rgin*h�y¿`^x�[rb ��b h_n�nG[^g+�Í �I Ï�� ª��+[�eg+nGh�kz[rvs[^gTkl[^g+~�[¡~Weg��f[¡b [ru}`^x�[lk�{�b=`^u¸nG�+[¡]�`l`^v��fp�u}e�fh_gTc�eg­[^¨W�nGbdeP~F`^v�p©`^{@nG�+[�eb bdep*�d��{@nG�+[¦nGb|qs[�kz[^v�[^gTkz[rgi~ [��Te�y�e¿~F`^gTy�n eg+n�y�nG[rv�|¤nG�i[rgÔe

~ � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

� � � � � � � � � � � � � � � � � �

� � � � � � � � � � � � � � � � � � �� � � � � � � � � � � � � � � � � � �

� � � � � �

� � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � � �

� � � � � � � � � � � � � �

Page 9: Automatic Data Distribution for CFD Application on

Ò

~�pf~�]_h_~mkzh�y�nGb|h_�lqsnGh�`rg¹`^g+n `�|mvsbd`^~�[lyCyC`^b=y¦��`rqs]�k}~�b|[zenG[w~W`^uwuwqsg+h_~WenGh�`^g�{�b [r[~F`ruwvsqsn enGh�`rgTyC�

�+LPR�R����äâ�ËO� �Þ+OYÞ��©ã X Ý�NPßÖâ+NPO¡Þ+N�S� äX,�WO Q Xz�-UPOYX RTN��{�eb|b=ep*ytb [r{�[^b|[^g+~�[lk«hHgÔe�]�`l`^v¥g+[ly�ns�Tex�[�u}`^b|[�n���egÔ`^g+[«kzh_uw[rgTy¬h�`rg»° J

egTk�Î-klhHuw[rgTy�h�`^gTe]�eb bdep@yteb|[¡u}`ly�n.~F`ruwu}`^g­{|`^b�y�nGb q�~�nGqsb|[zk«crb|h�k�³�µf��·^nG�+[^g��[�uwq�y¬ns~F`rgTy�h�kz[^b£e]_]�]�`z`rvay�y�q�b b=`rqsgTkzh_gTc¦~F`^uwvsq�n enGh�`^gTyt��h_nG��nG�+[§eb|b=ep*y*n|``r�ln eh_g�~F`^uwv�]H[rnG[-k�en e¿e{�{�h_gih_n�p@����g¤³�µf�Âevsvs]_h_~FenGh�`rgTy��d]�`l`^v«h_gTkl[^¨o�@`rqsgTk�yTeb|[qay�q�e]_]Hp�]_h_g+[leb+{�q�gi~ nGh�`^gTy@`r{ËnG�+[oy�qsb bd`^q�g�klh_gTc¡]¬`l`^v¤h_gTkzh_~�[ly����+[^g+~�[�nG�+[�g+[zy�nWh_g+�kz[r¨�k�`ru}ehHg�~Weg«�f[­kl[zy�~�b|h_�l[zkºe�y�e�y¬[rn�`r{+hHg+nG[lc�[^b�v�`^h_g+n y�h_g�e¡va`^]_pf�+[zklb=`^g=#�

�$��þF(*��öFøúù�ý,+ � þT{|`^b�]�`l`^v�gi[ly�n y�h�y�y¬h_uwh_]�ebTn `­`rg+[¿{|`rb�]�`z`rvay%�

do 10 I from PI b(idxb1(I))=c(idxc(I)) a(idxa(I))=b(idxb2(I))10 continue Aff(a,c)={(idxa(I);idxc(J)), J=max{j: j<=I,idxb1(j)=idxb2(I)}}(*)

���+[^bY[¿nG�+[max

`^vs[rb=enGh�`rg�eg�k¤h_gi[l¢�qae]_h_nGp����4 ¢¡$£¥¤�eb�[¿v�[^b {|`rb uw[lk­h_g�nG�+[¿]_[r¨Wh_�~F`lc�b=evs�+h_~Fe]i`^b�kl[^b�h_uwva`ly�[zk��fp¦nG�+[�g+[ly¬nzh_gTkzh_~�[lyC�|µ@`rb�y�n enG[^uw[rg+n yi��hHn���klhH{%{�[rb �[^g+nig+[ly�nGh_gTc£nG�+[£~��Teh_g�bYqs]_[£h�y�y¬h_uwh_]�eb/�

do 10 I from PI do 20 J from PJ b(idxb1(I,J))=c(idxc(I,J))20 continue do 30 K from PK a(idxa(I,K))=b(idxb2(I,K))

���6¦��$2*!����|� #G�.Da� ���'!�<=!�Da���#%!����0��|!��<=!�����#%$:8'� �����"!�����#�0��<�<=��DE0�!��#�!��@�'�!�#�#%�����'!������&'�%2*!����|Da01k��0 /1��#%����'0��"!�����DE��/1�Ë����Da0 0�����0��<*�"���Ë0��0��������§;r���t2*�����s����� 0 #r0��<*���#G�"#rDE��/_�Ë�"/10��#z0 0�/_�����"�¬;���/=�Co 0�DE30 ����$�!��#%�"�:0�<���8 do i=1,nx do j=1,ny(i) do k=1,nz(i,j) a(idxa1(i,j,k),idxa2(i,j,k),idxa3(i,j,k))= b(idxb1(i,j,k),idxb2(i,j,k),idxb3(i,j,k)) end do end do end do

2*�62*!����42*/_!��"� do 10 I from PI a(idxa(I))=b(idxb(I))10 continue

Page 10: Automatic Data Distribution for CFD Application on

��¨

30 continue10 continue

Aff(a,c)={(idxa(I,K);idxc(L,J)),(L,J)=max{(l,j):l<=I,idxb1(l,j)=idxb2(I,K)}}

è�¨+euwvs]_[l�d�$��þ©��ýz�A� � þ�ª«�5÷'(���þK(*¬FøHùi­¤ûX��öWû�öFù¿þ � þKª�þ=ùlû��%÷�öFý ýGö�ñ¤ø��*ö5÷H÷^øúù�þ®�¿øúûX�£öFùþ � þKª�þ=ùlû$�%÷¡öWùi�WûX��þ ýsöFý ýGö�ñ�ø��H¯�°�ÿ¥(*�AªF� � þ û²þd�=Z\[«y���`r�ÅnG�TensnG�+[M&$�"� � þ öFù!±£ù�ö"��� öA(*¬°�ýz�A� � þKª¾h�y¡e�y�vs[r~�h�e]l~We�y�[�`^{�~We]_~�qs]�enGh_gTc§e{�{�h_g+h_nGp§{|`rbPegmeb b=ep«[^]_[^uw[rg+n+h_g�nG�+[e�@`rx�[�y��T`^��g�b|[^]�enGh�`rgm°�²Y·�� é@[^n�g+[ly¬ns]¬`l`^v¥�@`^q�gTk�y�eb [ ¨ egTk � �Wuw[legih_gTc�nG�Ten°¢£@h�yÄe��*`z`r]_[zeg�~�q��l[z�=é@[^nT£¥¡¢c�³8eR�t�t� eR³8f@���+h_~���uw[zegTytnG�TensnG�+[�h_g+[z¢�q�e]_hHn�p´���  3¡$£¥¤h�y�nGb q�[¿{|`rb�e]_]/��{�b=`ruµ°¢£����g�nG�+h¬y�~We�y�[¿h_{�øy|�ï¶�K³�c��*fsh�yaeg�eb|�lh_nGbdeb p�]_h_g+[zeb�{|`rb u `^{�@nG�+[^g�~We]_~�qs]�enGh_gTc�nG�+[oxte]_qs[�`r{·sh_g©°�² ·Ëh�y�e�y�vs[^~ h�e]l~Fe�y�[�`r{�nG�+[¸&$�"� � þ öFù¹±£ù�ö"��ÿ� öA(*¬�°�ýz�A� � þKªº�@��g½vsb=e~�n�hH~ [^���T`r��[^x�[^b|��nG�+[�g+qsuw�f[^b�`^{«eb bdepÕkzh_uw[^gTy�h�`^gTy�h�y{�h_¨W[zk�°²hHn¡k�`^[ly�gT`^n�[r¨W~�[^[lk S {|`rb�³�µf�¹~F`lkz[zyC·@egTk«h_gTkz[r¨¤{�qsg+~�nGh�`rgTy�eb [�]_h_g+[leb{�qsg+~�n�h¬`rgTyC����g�nG�+h�yi~We�y�[ÄnG�+[¦e{�{�h_g+h_nGp�b [^]�en�h¬`rg�~Feg��l[Ä~We]_~�qs]�enG[lk¦h_g�va`^]_pfgT`^uwh�e]nGh_uw[¿�fp�é�[^gTy�nGbde�»úy�e]�cl`rb h_nG�+uw��y�[r[­Í I�I Ï��

ª@�i[�~��Teh_g�b|qs]_[§e]_]�`^��ytnG�+[o~W`^gTy�nGb q�~�nGh�`rgm`^{�egme{�{�h_gih_n�p«b [^]�en�h¬`rg�{|`rbE[le~��kzh_b|[^~�n�[zk�vaenG��~W`^uwh_gTc¤n `�ö¦{�b=`ru¼�­eg�k�vae�yCy�h_gTcº`rgi]_p¥nG�+b=`^q�c���vsb|hHxtenGh_j�e�f]_[eb bdep*y��fª@�+[�q�gih�`rgÁ`^{�nG�+[ly�[�b [r]�enGh�`^gTy¤`rx�[^b�e]H]£klh_b [^~ nG[zk»vaenG�Ty£n `�ö�{�b=`^u �pfh_[^]�k�ytnG�+[o{�h_gTe]*e{�{�h_g+h_nGp«b|[^]�enGh�`rg��l[rnG��[^[rg�ö­eg�k��^� ª@�i[�b|[^]�enGh�`rg�]_h�y�n y�e]_]f[r]_[^�uw[^g+n y�`^{3�@q�y�[zk�{|`^b�~F`ruwvsqsn enGh�`rg�`^{lnG�+[�[^]_[^uw[rg+ns`r{.ö¿egTk�~Feg­�f[�~F`^gTy�h�kz[rb [lke�y�`^g+[r��n `^��u}eg+p�u}evsvsh_gTcl�

��g§u}`ly¬n�vsb=e~�nGh_~We]W~We�y�[zy��rnG�+h�y+h�yEe£`rgi[r��n `^��{�[r�Úy�nG[^g+~�h_]Ëb [r]�enGh�`^g+�lea�lh�y�[r~�n `rb%#`r{ËnG�+[oy�nG[rgi~ h_]lc�h_x�[zy@eg�`^v�nGh_u}e]le]_h�c�giuw[rg+n ���±eg+p�³�µf�Öy�nG[rg+~�h_]�yl�Tex�[oe*~ [^g+nG[rb`r{�y�pfuwuw[^n�b p����+h_~���~Feg��l[£qay�[zkºe�y�nG�+[­e]_h�c�giuw[rg+niva`^h_g+nG��y�[r[¿µfh�c�qsb [£Î��

���¶½ !�#%�����"��/r��80¶l �!��"�l#%���!��*�3'<=!�Da���#%!����0���#R0 0����l!�#�0¶0 ��!����#%� ���*�"��0��C��0����*������/H< !��0��"�l�� 0=��/¾0 ��0����0 0�#%#%!�����"�/H���=���*!��V;^!�#%�����"#F�"��l#%���'��6�3t0 ��!���8pK¿-#%�"������!���#%��42*#F�"��0��������BC��/1�s#%�����0�#�0�;r!�#%�����"��/"�

Page 11: Automatic Data Distribution for CFD Application on

� �

?A@CB!DFEHG�ÀKJ å�vsnGh_uwh_j�h_gTc@~F`ruwuwqsg+h_~FenGh�`rg�yr�fp¡~��T`z`ly�h_g�c¡y�nG[rg+~�h_]�lh�y�[^~ n `^bPe�y�nG�i[¤e]_h�c�giuw[rg+niva`^h_g+n �

� � ø�­�ù�ª�þ=ùfû}�¿øúûX� g ñ��=û²þ�ª'���5÷ÂÁ*øúù�þYöWý'Ã6�Wýxª'����è�e~��Õeb b=ep}b|[^{�[rb [^g+~ [ºh_g¾nG�+[]�`z`rvÔg+[zy�n¿kz[r{�h_g+[zy�e¦u}evsvsh_gTcw`r{En��i[§g+[zy�n¿k�`ru}eh_g©h_g+n `web b=ep�h_gTkz[^¨my�vae~�[l�À�[^b|[¿��[£~F`rg�y�h�kl[^b�]_h_g+[leb�u}evsvsh_gTcfy%�

���+[^bY[�|�egTk'£�eb�[£eb b=ep�egTk¿nG�+[agi[ly�nFh_gTkzh_~�[lyzb�[zy�vs[r~�nGh_x�[^]_p � � h�y�e@u}enGb h_¨Ä��h_nG�~F`rgTy�n egin+[^]_[^uw[rg+n y�egTk��Th�y�e¡x�[r~�n `^bT��h_nG��~F`rg�y�n eg+ni[r]_[^uw[rg+n yC�

µ*`^b�]_h_g+[zeb�h_gTkz[^¨£{�qsg+~�nGh�`rg�y��dnG�+[�e{�{�h_g+h_nGp¦b [r]�enGh�`^g¤~Feg­�l[�[r¨Wvsb [ly�y�[lk�hHg¤nG�+[{|`^b|u«�

Aff(x1,x2)={(A1*I+b1;A2*I+b2), I from PI}Z\[¿�©egin+n `¿nGbdegTy¬]�enG[£nG�+h�y�b [r]¬en�h�`^g�h_g+n `­e]_h�c�g+uw[^g+n�kzh_bY[^~�nGh_x�[ly�`^{+nG�+[¿{|`rb u

!HPF$ ALIGN Y1(i1,...,in) WITH . Y2(m1*j1+c1,...,mn*jn+cn)���+[^b|[¹ª¹ÄVeR�t�t� eRªOÅÄeb|[�h_g+nG[zc�[rb�uwqs]_nGh_vs]_h_[rb=y��Æ(1ÄVeR�t�t� eR(1ÅÄeb [Äh_g+nG[zc�[^b¡y��ih_{�n y��Æc�øtÄVeR�t�t� e%øÇÅ4f�ÿ¥Èc��1ÄVeR�t�t� e �xÅ4fih�yae£klh_uw[^gTy�h�`^g«vs[^b|uwqsn enGh�`rgi�lõ:Ä¡eg�k�õ:É¡eb [�ïÊÄVe�ïÊÉ�`rbÄeqs¨Wh_]_h�eb p¤nG[^uw�vs]�enG[lyC�

��g�e¡~F`ruwu}`^g�~Fe�y�[r�����+[rg�`rg+[¿u}enGb|h_¨«°�yCep � ³F·Wh�y�gT`^gTy�h_gTcrq�]�eb ��nG�+[¿b|[^]�e�nGh�`rg«u}ep��l[£��b h_nGn�[^g�[^¨Wvs]_h_~ hHn�]Hp©�

!HPF$ ALIGN C(i,*,*) WITH A(i-1,*,*)!HPF$ DISTRIBUTE(BLOCK,*,*) :: A do k=2,nz do j=1,ny do i=1,nx A(i-1,j,k)=0.2*(C(i,j,k)+C(i,j-1,k)+ > C(i,j+1,k)+C(i,j,k-1)+C(i,j,k+1)) end do end do end doC Aff(A,C)={(i-1,j,k;i,j,k)C &(i-1,j,k;i,j-1,k)&(i-1,j,k;i,j+1,k)C &(i-1,j,k;i,j,k-1)&(i-1,j,k;i,j,k+1)}C Stencil Affinity (1,0,0), (1,-1,0), (1,1,0),C (1,0,-1), (1,0,1)C with bisector (1,0,0)

d AI b+=

Page 12: Automatic Data Distribution for CFD Application on

�I

Aff(x1,x2)={(d1;A2A1-1d1-A2A1

-1b1+b2),d1from A1PI+b1}(1)��{fnG�+[�u}enGb h_¨ � É � Ä¥Ë Ä ~Feg��l[�nGb=egTy�{|`^b|uw[zk-n `¦eg�h_g+nG[zc�[^b�kzh�e�cf`^gTe]Wu}enGb h_¨

di-

agc�ªOÄVeR�t�t� eRª¹Å4f��lp¥e¡vs[rb uwqsn|enGh�`^g�`^{+n��i[£~F`r]_qsuwgTy���nG�+[^g«ÿ � É � Ä¥Ë Ä �8Ä8Ì3�8ÉY¡

c�(1ÄVeR�t�t� eR(1Å4fih�yEeg§h_g+nG[zc�[^btx�[^~ n `^bÄegTk-nG�+[Pb�[^]�enGh�`rg§~Feg§�l[PnGb=egTy�]�enG[lk-n `�egwe]_h¬c�g+�uw[^g+n�klh_b�[^~ nGh_xf[6�

!HPF$ ALIGN x1(i1,...,in) WITH . x2(m1*j1+c1,...,mn*jn+cn) !(2)

���+[^b|[�c�øtÄVeR�t�t� e%øÇÅ4f�ÿ¥È¢c��1ÄVeR�t�t� e �xÅ4f�h�y�nG�+[¿~W`^]_qsuwg�vs[rb uwqsn|enGh�`^gT���{snG�+[£u}enGb|h_¨ � É � Ä¥Ë Ä ~Weg+g�`rn+�f[ob [zklqs~�[lk¤n|`¤e¦kzh�e�cf`^gTe]l{|`rb uí�fp§vs[^b|uwqs�

n enGh�`rgº`^{l~F`r]_qsuwgTy��dnG�+[^gº° � ·r��`rqs]�k¦b [l¢�qsh_b [Ävsb|[zy�[^g+~ [�`r{@cr[rg+[^bde]F]_hHg+[leb�{|`rb u}yh_g¥nG�+[�e]_h�c�gÔy�q��@y�~�b h_vsn@]_h�y�n@���+h_~��¥h�yTgT`^n@vs[rb uwh_nGnG[lk�h_g¥À   µf��y¬[r[�Í � Î�ϲ�zva� ����> �ª@�i[¿b [r]¬en�h�`^g�° � ·F~Feg+gT`^n��l[¿[^¨Wvsb|[zyCy�[zk­�lp­À   µ­��é���ê��íkzh_b [r~�nGh_x�[�e]�yC`Ph_{i�*`^nG�� É � Ä¥Ë Ä egTk � Ä � É¥Ë Ä �Tex�[-gT`^g+h_g+nG[lcr[rb�[^]_[ruw[^g+n yC�r��g}y¬q�~��}e¿~Fe�y�[-��[�~Feg¥]�`l`^�{|`^baeÄy�q��lu}enGb|hH¨­`^{ � Ä�egTk � Éi�Texfh_gTc�nG�+[¡vsbd`^vs[rb nGp*�Y��{sy�qs~���y¬q��lu}enGb|h_¨P[^¨Wh�y�n y��nG�+[­e]_h�c�g+uw[^g+nih�y�vs[rb {|`rb uw[zkº`^g�nG�+[¿~W`^b|b [ly¬v�`^gTkzh_gTc�y�[^n�`r{+h_g�klh_~�[zyC�

�$��þ©­�þ=ù�þ ýGöFû�øy�Fù}�5÷Tö � øy­�ù6ªPþ ùfû�|�øHý%þK(�û�øÎÍþ,�tqay�[zy�n��i[�e]_h�c�giuw[rg+n*c�b=evs�wkl[^b h_x�[lk{�b=`ruí�-ª�ê���ª��+[ogT`zkz[ly¡`^{�nG�+[�e]_h¬c�g+uw[^g+nTc�bdevs�©eb [£gT`rg�vsb h_xtenGh_j�e�l]_[�eb b=ep*y`r{��¦ª@ê«�¡��gëeb ~�~W`^g+g+[^~ n y�n���`�gT`lkz[zy��Tex�h_gTcÕe\klh_b [^~ nG[zkÕvaenG�îvae�yCy¬h_gTcnG�+b=`rqac��¥vsb|h_x*en�hHj�e�f]_[�eb b=ep*y¿`^g+]_p@�rZ\[�eg+gT`^n enG[-[le~���eb|~¤`r{*nG�+[�e]_h�c�g+uw[^g+nc�b=evs�©��h_nG��e�]_h�y�nP`r{T~ ]�`zy�qsb|[zy�`r{Pe{�{�h_g+h_nGpwb [^]�en�h¬`rgTy�e]�`^gTc�[le~���y�h_uwvs]_[¤vaenG�~F`rg+gi[r~�nGh_gTc�nG�i[�eb b=ep*yÄh_gm�-ª@ê5#�Ë�Ø~�]�`ly�qsb [�`^{oeg¾e{�{�h_g+h_nGp�b|[^]�enGh�`rg¾e]�`rgTc�evaenG��h�yTeEb [ly¬q�]_n@`^{*y�qs~ ~�[zyCy�h_x�[¦ev�vs]_hH~WenGh�`^g¥`r{ln��i[�~��Teh_g�b qs]_[-e]�`^gTc�eb ~FyT`r{fnG�+[vaenG�T�

µ*`^bT[le~��©eb ~Äh_g�nG�+[¤e]_h�c�giuw[rg+nTcrbdevs�+����[�egTe]Hpfj�[£n��i[�e{�{�h_gih_nGp§b [r]�enGh�`^gTyenGn e~ �i[lkºn|`¤h_n �W��{£e]H]*b [^]�en�h¬`rgTy�eb [�[r¨Wvsb [ly�y�[lk¥hHgmnG�i[�{|`rb u ° � ·aegTkº�Tex�[�nG�+[yCeuw[�kzh_uw[^gTy�h�`^g�v�[^b uwq�n enGh�`^g+��nG�+[^g���[­��h_]_]ac�[^g+[rb=enG[�kzh_b|[^~�nGh_x�[�° I ·�����g�nG�+[kzh_b|[^~�n�hHx�[r��[ze~ �«uwqs]_nGh_vs]_h_[rbth�ysnG�+[­c�b [zen�[zy�n�~W`^uwu}`rg�kzh_x�h�y�`rb�`^{iuwq�]_nGh_vs]_h_[^b=y�`^{nG�+[�b [r]�enGh�`^gTy���nG�+[©y��+h_{�n¡h�y�e¤�lh�y�[^~�n|`^b«`^{ÄnG�+[�b|[^]�enGh�`rgTy�y��+h_{Gn|y�egTk)c�øtÄVeR�t�t� e%øÇÅ4f�ÿ¥È

�iÏ!ÐAÑ �t���Ç��� Ñ �¢�P�K�j�i�¥Ò8���¥�i�j�ÇÓd�¢�����¥��� �X�Ç�K�®�K�i� Ñ �¢�P�¥� Ñ ��� ÏjÔ �i�Ç�iÓd���ÇÓd�¥���©�Î� � �P� �Î�z�ÇÒÕ�P���t�X�ÇÖ���Ç�Ç�1� �X�Ç�K�i���×���$�V�K�P�����Î� �Î�Ç���®�K�i� Ñ �¢�j�¥�i�����A�Ç�z�¥�1�X�¥�'��� � Ñ ��� �i� Ñ � ���1���P���t�,Ò8�Ç�ÎØHÙ�ÚÎÛ%Ü1ÝÎ� �hÑ �¥�z�Û��Ç��� Ñ �¢�i���OÞK�¥� ��ÐAß �i�K�A�¥� Ï

Page 13: Automatic Data Distribution for CFD Application on

�J

c��1ÄVeR�t�t� e �xÅ4f�h�y�nG�+[¿~W`^uwu}`^g�klh_uw[^gTy�h�`^g�vs[rb uwqsn en�h¬`rgT���{�nG�+[^b|[¦eb|[¦klh_b [r~�nG[zk-vaenG�Ty+~W`^g+g+[^~ nGh_gTc � eg�kà&�hHg§�@`^n��¥kzh_b [r~�nGh�`rg�y��rnG�+[^g

nG�+[^b|[¡h�yty�[r]_{�e{G{�h_g+h_nGp¦{|`^b � °�eg�kM&@·�� ª@�+[�y�[r]H{�e{�{�h_g+h_nGp¦b [r]�enGh�`^g­~Feg+gT`rn.�l[�nGb=egTy��]�enG[lk�hHg+n `�e]_h�c�g+uw[^g+nG��h_n��Te�yan `­�f[­nGb=egTy�]�enG[lk�h_gin `ºegÃeb bdepÔklh�y¬n�b h_�lq�nGh�`^gT����{nG�+[¦kzh_uw[rg�y�h�`rg¤u}evsvsh_gTc�h�yigT`rnzh�kz[rg+nGh_nGpf�dnG�+[^g�nG�+[�y�[r]_{@e{�{�h_g+h_nGp-b [r]�enGh�`^g�h�yin `z`~F`ruwvs]_[^¨¦n `£�l[£�Teg�kl]_[zk�egTk¤nG�+[­eb bdep�h¬y�{�]�e�cfc�[zk�e�y�gT`rgTkzh�y�nGb h_�lq�nG[zk@�

ª@�i[my�[^]_{¦e{�{�h_g+hHn�pmb|[^]�enGh�`rg�~Feg}�f[�h_nG[^bdenG[zkm�lp�evsvs]_plh_gTc�nG�+[�~��Teh_g}b q�]H[e]�`^gTc�eE~ h_b ~�q�]�eb@v�enG� � ÿ¥È¢&zÿ¥È � uwqs]_nGh_vs]_[�nGh_uw[zyC��ª��+h�y+~�b|[zenG[lyTe{�{�h_g+hHn�p�`^{f[le~��[^]_[ruw[^g+n@`^{ � ��h_n��ºeTg+qsuw�l[rb@[^]_[ruw[^g+n y�`r{ � �|��gºc�[rg+[^b=e]_�^nG�+[�h_nG[rb=enG[lk�e{�{�hHg+h_nGph�y�n|`z`£~F`ruwvs]_[^¨�egTk¤nG�+[¤eb b=ep§h�y�e]�yC`£{�]�e�cfcr[lkºe�y�gT`rg�klh�y�nGb h_�lq�nG[zk@���g�nG�+[£u}e�U:`rb h_nGp�`^{fvsb=e~ nGh_~Fe]W~Fe�y�[zy��^nG�+[¦e{�{�h_g+h_nGp�h�y�y�h_uwvs]_[¦egTk¦~Weg¤�f[Äh_nG[rb=enG[lk¦[^¨Wvs]_h_~�h_nG]_pegTk¥nGb=egTy�]�enG[zk¥h_g+n `¥e�kzh�y�nGb h_�fqsnGh�`^gmuwh_gih_uwh_j�h_gTc§~F`ruwuwqsg+h_~FenGh�`rgTyC�F��yCy�q�uw[nG�TeninG�+[¤y¬[r]_{Te{�{�h_gih_nGp�b|[^]�enGh�`rg«~Weg��l[¿[r¨Wvsb [lyCy�[zk­��h_nG��]_h_g+[zebT{|`^b|u}y%�

Aff(A,A)={(I;C*I-z), I from PI}�-vsv�]_hH~WenGh�`^g�`r{+nG�+[¿~��Teh_g�b q�]_[­c�h_x�[zy

Aff(A,A)={(I;C*J-z),J=max{j: j<=I,j=C*I-z}, I,J from PI}

��nsy��T`r��yfnG�Ten.nG�+[�e{�{�h_g+h_nGp¦b [^]�en�h¬`rg­h�yfxt`rh¬k�h_{3LHáz£�ÿ�âAÈ$£�� ��g­nG�+h¬y�~Fe�y�[r�=nG�+[¡b [r]�enGh�`^gh�yÄegmeg+nGh_�|kl[^vs[rg�kl[^g+~�[«egTk§~Feg��l[�[^]_h_uwh_gTenG[zk§�fp«u}e�fh_gTc«eg�[r¨WnGb=e�~F`rvsp�`^{� � ��{aLHáz£�ÿ�âA $£¡eg�k�Lwh�yÄeÄgT`rg�y�h_gTc�qs]�ebau}enGb|hH¨�°²nG�+h�y*v�b=`rvs[^b|nGp«h�y*g+[r~�[ly�yCeb|p«{|`rbkzbd`^vsvsh_gTc­nG�+[

max`rvs[^bdenGh�`^gwh_gwnG�+[�b [r]�enGh�`^gT·�nG�+[rgwnG�+[-b|[^]�enGh�`rgw~Fegw�f[-{�q�b �

nG�+[^bPy�h_uwvs]_h_{�hH[lk¢�

Aff(A,A)={(I;C*(C*I-z)-z), I,C*I-z from PI}egTk­{|`rb:¬Äh_nG[rb=enGh�`rgTys��[¿�Tex�[

Aff(A,A)={(I;J), J=Ck*I-(Ck-1+...+1)*z), I,C-1*J+z from PI}

��g§u}`zy�nlv�b=e~�nGh_~We]W~Fe�y�[ly��ÊL�h�y�nG�i[�q�g+h_nlu}enGb h_¨§egTk¦nG�+[�b [r]�enGh�`^g§~Feg��f[Ä{�q�b nG�+[rby�h_uwvs]_h_{�h_[zk¢�

Aff(A,A)={(I;I-k*z), I,I-(k-1)*z from PI}��{*nG�+[^b|[�eb [�e¿giq�uw�l[^b�`r{@~ hHb|~�q�]¬eb¡v�enG��yT���+h_~��Ôy�n eb|n�°�egTk�[^gTk�·f��h_nG� � e

nG�+[¿b|[^]�enGh�`rgTy�e]¬`rgTconG�i[£vaenG�Ty�~Feg��l[£~F`ruw�lh_g+[zk=�

Page 14: Automatic Data Distribution for CFD Application on

� Î

Aff(A,A)={(I;I-v), v=k1*z1+...+kq*zq,I,v-zl from PI} (3)

���+[^b|[®âiÄVeR�t�t� etâdãteb|[¦yC`�~Fe]_]_[zk�kz[^v�[^gTkz[rgi~ [Äx�[r~�n `^bdy��zegTkä³� ¢¡ �  ¢¡3å^��ª��+h�y+nGpfvs[-`^{kz[rvs[^gTkl[^g+~�[£h�ys~W`^gTy�h�kz[rb [lk­h_g�Í I Ï��

é�[rninG�+[­e{�{�h_g+h_nGp�b [r]�enGh�`^g�e]�`^gTc�`rgi[£vaenG��{�b=`ru-&¤n ` � �f[

Aff(B,A) = {(I;idxa(I)), I from IP}egTk�øy|�ï�öAcX£�f¥ 3¡$£��Ë�-v�vs]_h_~FenGh�`^g�`r{�nG�+[§~��Teh_g»b q�]_[§n `´c�æ8f�y��T`^��yÄnG�TenanG�+[�yCeuw[x�[^~ n `^bdyaeb|[­kl[^vs[rgTkz[^g+~ [¿x�[^~ n `^bdys{|`rb�Ì¡�

Aff(B,A) = {(I;J-v), v=k1*z1+...+kq*zq, v-zl and I from PI, J=max{j: j=idxa(I),j<=I} }= = {(I;idx(I)-v), v=k1*z1+...+kq*zq, v-zl and I from PI}

¼ qsvsv�`zy�[¦nG�+[rb [¦h�yPe�klh_u¥[rgTy�h�`^g�`^b|nG�T`zcf`^gTe]+n `¦nG�+[�kl[^vs[rg�kl[^g+~�[-xf[r~�n `rb=y��uw[zeg+h_gTc�nG�Ten�e]_]r~W`^uwva`rg+[^g+n y*`^{.nG�+[�x�[r~�n `rb=yfh_g-n��i[�kzh_uw[^gTy�h�`rg�eb|[�j�[rb=`z�Y�-h�y��nGb|hH�fqsnGh�`rg�`^{�nG�+[¤`^b|nG��`lcf`^gTe]�klh_uw[^gTy�h�`^g�b|[zy�q�]Hn|y�h_g�e�yCy�h�crg+h_gTc�`r{Te]_]�e{�{�h_g+[¤eb �b=ep�[^]_[ruw[^g+n yfn `�n��i[�yCeuw[�vsb=`r~�[lyCy�`rb=�Yå­gi]_p�h_g+nG[^b|�|eb b=ep�~F`ruwuwqsg+h_~FenGh�`rg�yf��h_]_]�l[�g+[^~�[lyCyCeb pÔ{|`^b-nG�+[�~F`ruwvsqsn en�h¬`rgTyC�fª��+[ly�[�~F`ruwuwqsg+h_~FenGh�`rgTy¿~WegÃ�l[m`rvsnGh_�uwh_j�[zk¤��h_nG��evsvsb=`rvsb h�enG[¤e]_h�crg+uw[rg+n�e�y�kzh�y�~�qayCy�[lk�e�@`rx�[z�

��{�eg�`rb n���`lcf`^gTe]�kzh_uw[rgTy¬h�`rg�k�`r[zy�gT`rn.[^¨Wh�y�nG�=gT`�À   µ�kzh�y�nGb|h_�lqsnGh�`rg­��`^q�]�kvsqsn@e]_]ie{G{�h_g+[Ä[^]_[ruw[^g+n y�`^{ � `rgin `ÄnG�+[�yCeuw[Ävsb=`r~�[ly�yC`rb�egTk�[rx�[^b|p¦À   µ�kzh�y�nGb h_��lq�nGh�`^g}`^{ � ��`^q�]�k��Tex�[�kz[rvs[^gTkl[^g+~�[lyT�l[rnG��[r[^g�klh�y¬n�b h_�lq�nG[zk©y�[^~ nGh�`^gTyP`r{ � ���g«nG�ih�y�~We�y�[^�rnG�+[�c�[^g+[^bdenGh�`^gw`r{�À   µ�klhHb|[^~ nGh_xf[lyEy��T`^qs]�k�n e�f[�h_g+n `�e~�~W`^qsg+n�nG�+[~F`ruwvsh_]_[^b/»úyPe�lh_]_h_nGp�n `-vsh_vs[^]_h_g+[-nG�+[¦~F`ruwvsqsn|enGh�`^gTyC�^��{*n��i[-~F`ruwvsh_]_[^b�h�y�e�f]_[¦n|`vs[rb {|`^b|uÙvsh_vs[^]_h_g+[zk«vsb=`r~�[zyCy�h_gTc«`r{�nG�+[§y�[^~�n�h¬`rgTyt��hHn��mkl[^vs[rg�kl[^g+~�[ly��ËnG�i[rg�nG�+[kzh�y�nGb|h_�lqsnG[lk«kzh_uw[rg�y�h�`rg�y��T`rqs]�k��l[�~ �T`zy�[^g¤n `Äu¥h_g+h_uwh_j�[zy�y�[^~ nGh�`^gºkz[rvs[^gTkz[rg+~��[zy�°²nG�+[�klh_u¥[rgTy�h�`^gÔ��h_nG��nG�i[�]_[le�y¬n¡g+qsuw�l[rb�`r{�kl[^vs[rg�kl[^g+~�[�x�[^~ n `^bdy��Tex�hHgTcgT`^g+j�[rb=`£~F`^uwva`rg+[^g+n yC·��

��{ËnG�+[�À   µ�~F`^uwv�hH]_[rb+h�ylgT`^n�e�l]_[an `�vsh_vs[r]Hh_g+[�~F`^uwvsq�n enGh�`rg�y���nG�+[�]�`z`rv­g+[zy�ny��T`^q�]�ko�f[¡b [l`^bdkz[rb [zk�n|`¡vs[^b|{|`^b|uî~W`^uwvsq�n enGh�`^gTy���h_nG��h_gTkz[rvs[^gTkl[^g+nsy�qs�@y�[rns`^{[^]_[ruw[^g+n yC����gTkzh_~�[ly�`^{�nG�+[­y�q��@y�[^n|y�~Feg��f[¿h�kl[^g+nGh_{�h_[zk¤�lp�[l¢�qaenGh�`rgç�¢áz£aè­~W`^gTy�nG����+[^b|[ � h�yðeÓnGh_uw[ x�[r~�n `rbÙ]_[zex�h_gTc e]_]¶kz[rvs[^gTkz[rg+~�[zyÚhHg nG�+[ vae�y�n,�

Page 15: Automatic Data Distribution for CFD Application on

�8�

�¢ázâdÄ8 ¢é8eR�t�t� eR�¢ázâdã4 3éF���g�nG�+[o~Fe�y�[����+[^gmeg©`rb nG�T`zcf`rgTe]lx�[^~ n `^ba[^¨Wh�y�n y��F��[�c�[^g+[^bdenG[�eÄnG[^uwvs]�en�[

egTk¾e]_h�c�gÃ�@`rnG� � egTkê&»��hHn��Ãh_n �f�ëu}e¨Wh_u}e]a[l¢�qsh_xte]_[^g+~�[�~�]�e�yCy¤`r{-c�b=evs�gT`zkl[zyl�Tex�h_gTc�kzh_b|[^~�n�[zkovaenG�Tylh_g-�*`^nG��klh_b [r~�nGh�`^gTyfh�yl~Fe]_]_[zk�æ�y�nGb=`rgTc�]Hp�~F`^g+g+[r~�nG�[zkº~F`^uwv�`^g+[^g+n ç§`r{TnG�+[�c�b=evs�T��ª��+[ºy�[^n�`r{�y�nGbd`^gTc�]_pº~W`^g+g+[^~ nG[zk�~W`^uwva`rg+[^g+n y{|`^b|u}yÄe�kzh_b [r~�nG[lk�e~�pf~�]_h_~­crbdevs�+��egTk«��[«enGn e~ �»ePnG[^uwvs]�enG[�n|`�[ze~��ºgT`zkz[�`^{nG�+[¤c�b=evs�T��ª@�i[�e{�{�h_gih_n�p�b [r]�enGh�`^g�{|`^bE]�`z`rv�gi[ly�n+nG�+[^g�[^¨Wvsb|[zyCy�[zk¥e�y�e]_h�c�g+uw[^g+n`r{�[le~��Ôeb bdep©`^{@nG�+[«y�nGbd`^gTc�]_p�~F`^g+g+[r~�nG[lk«~F`ruwva`^g+[rgin���hHn��ºnG�i[¦nG[ru¥v�]¬en�[^�se�yy��T`^��g�h_g�µfh�crq�b [ � �

ê¦[^g+[^bdenGh�`^gº`r{@e]_h�c�giuw[rg+n�y�n enG[ruw[^g+n yi{|`rb�[le~��¤~F`rg+g+[^~�n�[zk¦~F`^uwva`rg+[^g+n@`^{e¿klh_b [r~�nG[zk�c�b=evs�§��h_nG�¥e{�{�h_g+hHn�p�b [r]�enGh�`^gTyTenGn e~ �+[zk-n `�[^x�[rb p�eb ~�h�y+v�[^b {|`rb uw[lkh_g�nG�+b [r[­y�nG[rvayC�

•� ��Á~W`^uwu}`rg«n�[^uwvs]�enG[£h�yac�[rgi[rb=enG[lk­{|`rb�e]_]z]_[ze{|y�`r{+nG�+[¿~F`ruwva`r�g+[^g+n �è¡e~���]_[ze{+h�y�~F`rg+gi[r~�nG[lk­n `£nG�+[¿nG[ruwvs]�enG[¿��h_nG��ebY~�egTk�evsvsb�`r�vsb|h¬en�[­e{RQsg+h_nGp�b�[r]�enGh�`^g�enGn e~ �i[lk­n `£nG�+[­ebY~FyC�

•I � �¾b�`l`^nG[lk§y�vaeg+g+hHgTcÄnGb�[r[¡h�yf~W`^gTy�nGb qs~�nG[lk�{|`^b�[ze~��­~F`ruwva`^g+[rgin.��h_nG�nG�+[¿n�[^uwvs]�enG[¤e�y�nG�i[£b�`l`^n �

•J � µ*`^bT[ze~���gT`rg«b `z`rnigT`zkl[­`r{in��i[¤y�vaeg+g+h_g�conGb�[r[^��nG�+[¤e]_h�crg+uw[rginkzh_bY[^~�nGh_x�[£h¬y�c�[rgi[rb=enG[lk­{|`rb�nG�+[¤eb�~�]_[ze�klh_gTc£{�b�`ruÚnG�+[¿gT`lkz[¿n|`¿nG�+[b�`l`^n�°�k@eb �f[^bPeb�~Fy�h_g�nG�+[¿µfh�c�qsb�[ > ·

Page 16: Automatic Data Distribution for CFD Application on

��>

?A@jB!D'EaG5ëKJ è@¨+eu¥v�]_[­`r{in��i[¤c�[^g+[^bdenG[zkºkzh_b�[r~�nGh_x�[zy�{|`rb�`rgi[¤`^{+nG�+[£g+[zy�n y�`r{��Ða³ J �

?A@CB!DFEHG5ìKJ ª@�i[¤k�en e¡n�b=egTy�{�[^b�c�bdevs��`^{+nG�+[¿g+[ly�n�`^{+nG�+[µfh�c�qsb�[ � ���eb|�¥eb�~Fy�y��T`^�ëe�y�vaeg+g+h_gTconGb�[^[l�

!HPF$ TEMPLATE tmpl_nest_41(64,64)!HPF$ DISTRIBUTE(BLOCK,BLOCK) :: tmpl_nest_41!HPF$ ALIGN FR(:,:,*) WITH tmpl_nest_41(:,:)!HPF$ ALIGN (:,:,*) WITH FR(:,:,*) :: ZX,ZY,ZZ,XX,XY,XZ,YX,YY,YZ!HPF$ ALIGN Q(:,:,*,*) WITH FR(:,:,*) DO 32 K=KLOW,KUP,1 KP1=KPLUS(K) !K+1 KM1=KMINUS(K) !K-1 DO 32 J=2,JM,1 BZ1=ZX(J,K,L)**2+ZY(J,K,L)**2+ZZ(J,K,L)**2 RHO=Q(J,K,L,1)*Q(J,K,L,6) U=XT+(XX(J,K,L)*Q(J,K,L,2)+XY(J,K,L)*Q(J,K,L,3)+XZ(J,K,L)*Q(J + ,K,L,4))/Q(J,K,L,1) V=YT+(YX(J,K,L)*Q(J,K,L,2)+YY(J,K,L)*Q(J,K,L,3)+YZ(J,K,L)*Q(J + ,K,L,4))/Q(J,K,L,1) S1=-RHO*ZX(J,K,L)*(U*(Q(J+1,K,L,2)/Q(J+1,K,L,1)-Q(J-1,K,L,2)/ + Q(J-1,K,L,1))*0.5+V*(Q(J,KP1,L,2)/Q(J,KP1,L,1)-Q(J,KM1,L,2)/Q + (J,KM1,L,1))*0.5) S2=-RHO*ZY(J,K,L)*(U*(Q(J+1,K,L,3)/Q(J+1,K,L,1)-Q(J-1,K,L,3)/ + Q(J-1,K,L,1))*0.5+V*(Q(J,KP1,L,3)/Q(J,KP1,L,1)-Q(J,KM1,L,3)/Q + (J,KM1,L,1))*0.5) S3=-RHO*ZZ(J,K,L)*(U*(Q(J+1,K,L,4)/Q(J+1,K,L,1)-Q(J-1,K,L,4)/ + Q(J-1,K,L,1))*0.5+V*(Q(J,KP1,L,4)/Q(J,KP1,L,1)-Q(J,KM1,L,4)/Q + (J,KM1,L,1))*0.5) R1=S1+S2+S3 FR(J,K,L)=(-2.*R1/BZ1+4.*FR(J,K,L1)-FR(J,K,L2))/3.32 CONTINUE CONTINUE

Page 17: Automatic Data Distribution for CFD Application on

��S

í LîPUÕ��Q RTU�O X N�â�PâïTâ+ã� �Þ+OYÞ� �X,�WOYQ=Xz�-UPOYX RTNµ*`^b¿k�en e¦kzh�y�nGb h_�fqsnGh�`rg©`^g�nG�+[�y�qs�fb=`rqsnGh_g+[o]_[^x�[^]_�W��[£�fqsh_]�k¥eY����ö"� þ'(*�Fùfû�ýR� �

÷ � �A�´­�ý%ö"���¤°   ³�µfê«·fÍ �8� Ï���ª��+[¦c�bdevs�¤gT`lkz[ly�eb|[Ä]�`z`rv«g+[zy�n y+�Tex�h_g�c�enl]_[ze�y�n@`rg+[gT`^g+vsb|h_x*en�hHj�e�f]_[¤eb bdepw°ü{|`r]_]�`^��h_gTc§Í �8� ÏË��[¤y��fh_v�n��i[o]�`z`rvay¡°²qay�qae]_]_p§h_nG[^bdenGh�`^g]�`z`rvayC·���h_nG��nG�+[Äh_gTkz[^¨ogT`rnlqay�[zk�e�yTeg¥eb bdep-h_gTkz[r¨+·���ª���`�]�`z`rv«gi[ly�n yTeb [Ä~W`^g+�g+[^~ nG[zk£�fp�eg�eb ~�h_{Wn��i[rb [�h�y�e*va`lyCy¬h_�f]_[anGbdeg�y�h_nGh�`rg-{Gbd`^u´nG�+[a]�e�y�nWÌ@̺`^{�`rg+[a]�`z`rvg+[zy�n.n `¡n��i[�{�h_b=y�n.Ì�Ìw`r{segT`rnG�+[^bs]�`l`^v�g+[ly¬n|�Yê¦h_x�[^g�eg�e]_h�c�g+uw[^g+nsc�b=evs��eg�k�nG�+[�-é@��ê¦�¶egTk��-� ¼ ª@Ða��Ì@�-ª@è©kzh_b|[^~�n�hHx�[lyE°²u}evsvsh_gTc­kzh_b [r~�nGh_x�[zyC·�{|`rb*[le~��§g+[zy�nt`^{  ³Pµlê¦�.h�yTh_n�va`lyCy¬h_�f]_[¦n `¦~F`^uw�fh_g+[¦nG�+[�kzh_b [r~�nGh_x�[zy�{|`rb�ePvaeh_b�`r{¡e�kiU:e~�[^g+n@g+[zy�n yh_g   ³�µfêàð

��g¥y�h_uwvs]_[Ä~Fe�y�[zyT°²h_{@e]_h�c�g+uw[^g+nlh�yinG�+[¦yCeuw[Äh_g¤�*`^nG��g+[zy�n yC·�nG�+[¦eg�y���[rb@~Feg�l[�`^�ln|eh_gi[lk«�lp�~F`^uwv�eb h_gTc�klh¬y�nGb|h_�lqsn�[zk�klhHuw[rgTy�h�`^gTy�`^{¡eb b=ep*y�h_g�[le~��ºg+[zy�n �ª@�ih�y�evsvsb=`le~��+�s�T`r��[^x�[rb ��k�`^[ly�gT`^n�e]_��ep*y���`rb �*�.��g\c�[^g+[rb=e]_�sn��i[�egTy���[rb�Te�yÄn `«�l[�`^�ln eh_g+[lkw�fpÃen�n e~��+h_gTc«nG�+[�y�[^~W`^gTk}e]_h�c�g+uw[^g+n£c�b=evs�»n|`§nG�+[«{�h_b=y�nc�b=evs�¥egTk�c�[^nGn�hHgTc�eEu}evsvsh_gTc�{|`rb@nG�+[�~F`^uw�fh_gi[lk�c�b=evs�¥°²h_g�nG�+[¦yCeuw[Ä��ep�e�y��[£klh�k£h_nF{|`rb+]�`l`^v­g+[zy�n+c�b=evs�TyC·�����{Ëuw[^bdcrh_gTc¡nG�+[au}evsvsh_gTcoklhHb|[^~ nGh_xf[ly@k�`^[lyzgT`rnkz[r~�b [le�y�[ÄnG�+[�giq�uw�l[rb¡`^{*klh�y¬n�b h_�lq�nG[zk�kzh_uw[^gTy�h�`^gTy��^nG�+[¦y�~F`rvs[-`^{fnG�+[Äu}evsvsh_gTc~Feg��l[�[^¨WvaegTkz[lk¦n `Äh_g+~ ]Hq�kz[Ä�*`^nG��g+[zy�n yC��å­nG�i[rb ��h�y�[r�^nG�i[-y�[^~F`rgTk¦g+[zy�n@y��T`^q�]�k�l[�~F`ruw�lh_g+[zko��h_nG��eg�`rnG�+[^bEe�kdU:e~�[rg+nWg+[zy�n ����{ËnG�+[a~F`ruwu}`^g-g+qsuw�f[^bE`^{�kzh�y�nGb|h_�l�qsnG[lk�klh_uw[^gTy�h�`^gTyoh�y ¨ �tnG�+[^gä[rh_nG�+[^b�e§b [lkzh�y�nGb h_�lq�nGh�`^gä�f[^nG��[r[^gänG�+[ºg+[zy�n y�`rbvsh_vs[r]_hHg+[�n��i[�~W`^uwvsq�n enGh�`^gTy���h_nG�Âk�en|e��Tex�h_g�c¾kz[rvs[^gTkz[rg+~�[��l[rnG��[r[^gÂy�[r~��nGh�`rg�yC�^Z\[¦qay�[�e�y�h_uwvs]_[¦nGb=e�kl[^�|`r{�{@u}`zkl[^]+�l[^n���[^[rgºb [lkzh�y�nGb h_�fqsnGh�`rgÔegTk«v�hHv�[^�]_h_g+h_g�cPn `�~��T`z`ly�[Ä�l[rnG��[r[^g�nG�+[zy�[¦e]_nG[rb gTenGh_x�[zyC��ª@�+[Äb [lkzh�y�nGb|hH�fqsnGh�`rgº`r{*eg¥eb b=ep`r{ty�h_j�[F¯¸`^gM�ovsbd`^~�[lyCyC`^bdy�b [l¢�qsh_b|[zys~F`^uwuwq�g+hH~WenGh�`^g�`^{¶¯-ÿ�¯ºñ_�o[r]_[^uw[rg+n yC��ª@�i[vsh_vs[r]_hHg+[lk¤~F`ruwvsqsn en�h¬`rg�b [l¢�qsh_b|[zy@n `£~W`^uwuwqsg+h_~WenG[�÷dáz¯òáz��ñ_|¦[^]_[^uw[rg+n y��F���+[^b [k�h�y�nG�+[�eb bdep�y�hHj�[Ph_g«nG�+[Pvsh_vs[^]_h_g+[zk�kzh_b|[^~�n�h¬`rgwegTk�÷Eh�y�nG�+[Pg+qsuw�l[rb�`r{�n��i[�kl[^�vs[rg�kl[^g+~�[ox�[^~ n `^bdyC��ª@�i[o~W`zy�nT`r{�vsh_vs[r]_h_g+[¤y�n eb|nGqsvºh�y¡e�{|e~ n `^b¿`^{a³�Ì$��|�ñ¾¯Ø`^{snG�+[[^¨W[r~�q�nGh�`^g-nGh_uw[Ê�Y�äu}`rb [�vsb [r~�h�y�[avs[rb {|`^b|u}eg+~�[au}`lkz[r]^nG�TenWn e�f[lyzh_g+n `oe~�~F`rqsg+nnG�+[«vsh_vs[^]_h_g+[«�l]�`^~ �lh_gTc�{|e~�n `rb ��nG�+[�y�n eb nGq�v½egTkw]�enG[rg+~�pä`^{�n��i[«~F`ruwuwqsg+h_~Fe�nGh�`rg�y¡egTkº`rxf[rb ]�evsvsh_gTc§`^{�nG�+[o~F`^uwuwq�gih_~WenGh�`^gTy@��h_nG��n��i[ovsh_vs[^]_h_g+[lk¤~F`ruwvsqs�n enGh�`rgTy*eg�k���h_]_]��l[¡h_gi~ ]_qakz[lkoh_g�nG�+[¡g+[^¨WnËb [r]_[ze�y�[�`^{znG�i[¡n `l`^]��Y�Õy�hHuwh_]�ebsu}`zkl[^]

Page 18: Automatic Data Distribution for CFD Application on

� Ñ

h�y�qay�[lk­n `¿n�b=e�kz[r�|`^{�{+b|[zkzh�y�nGb|h_�lqsnGh�`rg�egTk�y�[^b|h�e]z[^¨W[^~ qsnGh�`rg�`r{Te¡g+[zy�n �ó ï�ö§ªF� � þK� ¼ `ruw[§hHuwva`rb n|egina³�µl�×evsvs]_h_~FenGh�`rg�yÄqay�[§�-�-�o°Ge]_nG[rb gTenGh_x�[wkzh_�

b [r~�nGh�`rg«h_uwvs]_h_~ hHn|·iyC`r]_xf[rb=y�Í I¶¨ Ï���-�-�TyC`^]_x�[lysh_g«ïF����ñF��egTk�â=��klh_b [r~�nGh�`^gTy�y�qs~�~ [zy��y�h_x�[^]_p*� ¼ `r]Hx�[rb�h_gäe�vaeb nGh_~�q�]�eb-klh_b [^~ nGh�`^g��Te�yokl[^vs[rgTkz[^g+~�[ly�h_gä`rgi[ºklhHb|[^~ nGh�`^gegTk¤v�b=`^�+h_�fhHn|y¡kzh�y�nGb h_�fqsnGh�`rg�h_g�nG�+h�y¡kzh_b [r~�nGh�`rg©°²h_{�vsh_vs[^]_h_g+h_gTc�h�y@gT`^nEex*eh_]�e�f]_[z·��ª@�ih�ysuw[zegTy�nG�Ten�nG�+[^b [P[r¨Wh�y�n y�gT`�y�hHgTc�]_[PÀ   µ�klh�y¬n�b h_�lq�nGh�`^g§{|`rbÄeg§�-�-��yC`^]_x�[rb=�¼ `r]Hx�[rb=y�h_g�ïF�¡egTk§ñF�¡kzh_b [r~�nGh�`rgTyt�Tex�[¹â¤e�y�~F`ruwu}`^gÔkzh�y�nGb h_�fqsnGh�`rg»klh_u¥[rgTy�h�`^gegTk�y�`r]_x�[^bdy�h_g�ñF�¡egTkäâ ��kzh_b [r~�nGh�`rgº�Texf[�ïºe�y�~F`ruwu}`^gÔklh�y�nGb h_�lq�nGh�`^g�kzh_uw[^g+�y�h�`^gT�F��g�eg©�-�-�£yC`^]_x�[^b|�inG�+[�b [lkzh�y�nGb h_�fqsnGh�`rg©~Feg©�l[¥k�`rg+[�[^h_nG�+[^b¿�l[rnG��[r[^g�ïF�egTk­ñF�TyC`^]_x�[^bdy�`rb��f[^nG��[r[^g�ñF�TegTk5â �TyC`r]_xf[rb=yC���g�[zy�nGh_u}enGh�`rg�`r{+��`rb ��g+[^~ [zy��yCeb pÁ{|`rb�b|[zklh�y¬n�b h_�lq�nGh�`^gØe{�{�[^~ n y«nG�+[}~��T`^h_~ [½`r{ºevsvsbd`^vsb|h�enG[�b|[zklh�y¬n�b h_�lq�nGh�`^gva`rh_gin|��Ì¡e�y¬[lk�`^g�nG�+[oegTe]_p@y�h�y*`^{.nG�+[�~F`ruwuwqsg+h_~FenGh�`rg-b [l¢�q�hHb|[zko{|`rb�b [lkzh�y�nGb h_�fqs�nGh�`rgi��ïF��egTk-ñF��yC`r]_xf[rb=ys��[rb [¿~��T`ly�[^g«n `¿��`rb �¤��h_nG��k�en|eokzh�y�nGb h_�fqsnG[lk�h_g«nG�+['â �kzh_b|[^~�n�h¬`rg�h_g��-Ða³ J ���

ª@�i[¡v�b=`rvae�clenGh�`rg�`r{znG�+[¡u}evsvsh_gTc�kzh_b|[^~�n�h_xf[ly*e]�`rgTc�eb|~Fy*`r{   ³�µfêäb [ly�qs]_n yh_g±eg+g�`rn enGh�`rg½`r{Ä[ze~ �±y�`rqsb|~�[©egTk¾y¬h_g+��`r{ÄnG�i[mc�b=evs�}��h_nG�}nG�+[©klh_b [r~�nGh_x�[zyC�ª@�i[ly�[�eg+g�`rn enGh�`rg�y��dn `zc�[rnG�+[^b���h_nG�­h_g+{|`rb u}enGh�`rg�`^g¤h_gÕô�`rqsn,ôznG�+b=`rqac���y�qs�fb=`rqs�nGh_g+[­eb=c�qsuw[rgin yaegTk�`^g«n��i[­y�qs�fb=`rqsnGh_g+[¿~F`^uwu}`rg«�l]�`r~��*yaeb [¿qay�[lk�{|`^b�kz[rb h_x��h_gTcë`^{ÔnG�+[´{�h_g�e]�b [lkzh�y�nGb h_�fqsnGh�`rg�yÁeg�k y�qs�fb=`rqsnGh_g+[´h_g+nG[^b|{|e~�[zyC��ª��+[´À   µy�n egTk�ebdk­b [l¢�qsh_b|[zy�e�y�qs�fb=`rqsnGh_g+[¿n|`¿vsb|[zy�[rb x�[¿nG�+[¤kzh�y�nGb h_�fqsnGh�`rg�`^{Teb bdep*ysx�h�y�h_��l]_[¡n|`�`^nG�+[rbEy�q��lb=`rqsnGh_g+[lyC�Yª¡`¡~F`ruwvs]_p���h_nG�­nG�+h¬y�b [l¢�qsh_b|[^uw[rgin.��[¡vs[rb {|`rb uÙe�kz�U1qay�nGuw[rg+n�`^{+nG�+[¤eg+g�`rn enGh�`rg�y%�

•µ*`^bT[ze~���eb|b=ep¥eb�c�qsuw[rginG����[¿~��T`l`zy�[£nG�+[¿u}evsvsh_gTc�`^{+nG�+[¤eb b=ep¥en`rgi[¤`^{+nG�+[¤yC`^q�b�~�[£g�`lkz[¤`^{   ³�µlê¦��h_g+~�]_qakl[¿nG�+h�y�u}evsvsh_gTc�°�e�ysv�b�[^�y�~�b|hHv�nGh_xf[£u}evsvsh_gTcf·+eninG�+[­y�qs�fb�`rqsnGh_g+[¿h_g+nG[rb {|e~�[r��egTk­b�[ru}`^x�[¿nG�+[u}evsvsh_gTc�kzh_b�[r~�nGh_x�[zy�{�b�`ruÚnG�+[­yC`rqsb�~�[£gT`zkl[z�

•µ*`^bT[ze~���]_[le{+g�`lkz[¤`^{   ³�µfê�����[£~F`^uwv�eb�[¿nG�+[PQsgTe]zu}evsvsh_gTc�`^{[ze~ ��y¬q��lb�`rqsnGh_g+[¤eb�c�qsuw[^g+ni��h_nG��nG�+[£u}evsvsh_gTc¤`rg�nG�+[¿]_[le{Teg�kb�[ly�n `^bY[¿nG�+[¿u}evsv�h_g�coh_{+g+[^~ [zyCyCeb pW�

•µ*`^bt[ze~ �web b=ep�`rgwea~F`^uwu}`rg§�l]�`r~��­qay�[lk-h_gw`^nG�+[rb�y�q��lb�`rqsnGh_g+[zy��r��[Q�b=y�nih_gT¢�qsh_b�[¤kzh�y�nGb|h_�lqsnGh�`rg�`^{+nG�+[¤eb b=ep���h_nG��À   µ�u}evsvsh_gTcoh_gT¢�qsh_b p{�qsg+~�n�h¬`rgTyC�å�g�[ze~ �«]_[le{+gT`zkl[­`r{in��i[   ³�µfê±��[¿bY[zy�n `rb�[¿nG�+[£u}evs�vsh_gTcoh_{ig+[r~�[ly�yCeb|pF�

Page 19: Automatic Data Distribution for CFD Application on

� Ò

õ L+M NPO â+Q��PQ RTVWâ+SPU�Q=Þ+ã� �Þ+OYÞ� �X,�WOYQ=Xz�-UPOYX RTN��gmnG�+[¤~W`^gTy�h�kz[rb=enGh�`^gTy�e�@`^x�[r�i��[¥e�yCy¬q�uw[zk¥nG�TenPy�n enG[ruw[^g+n y�k@`¤gT`rnTh_g+�

~�]_q�kz[­y¬q��lb=`rqsnGh_g+[­`^b�{�qsg+~�nGh�`rg«~Fe]_]�yC�Cª¡`Pb|[^u}`rxf[¿nG�+h�yae�yCy�qsuwvsnGh�`rgi����[P~Weg«[^h_�nG�+[^b¡h_g+]Hh_g+[¦nG�+[«y�qs�fb=`rqsnGh_g+[«`rb�q�y�[�À   µ©y�qs�fb=`rqsnGh_g+[�h_g+nG[rb {|e~�[¦n `�[r¨Wvsb [lyCy�nG�+[k�en e£u}evsvsh_gTc­h_g¥nG�+[�y�q��lb=`rqsnGh_g+[l�^ª@�+[-h_g+]_h_gih_gTc­b [l¢�qsh_b [lyEnG�+[�yCeuw[�egTe]_p@y�h�yenË[le~���~Fe]_]fy�n enG[^uw[rg+n�egTkou}ep�gT`rnËb [ly�qs]_nËh_g�eg+p�q�y�[^{�qs]fklh¬y�nGb|h_�lqsn�h�`^g�h_{.nG�+[^b|[h�yTgT`�y�h_gTc�]_[�k�en e¤kzh�y�nGb|hH�fqsnGh�`rg¥h_gTy�h�kz[-nG�+[-bd`^qsn�h_gi[l�^ª@�+[-qay�[�`r{*À   µmy�qs�fb=`rqs�nGh_g+[�h_ginG[rb {|e~ [�]_h_uwh_n ytnG�+[�[^¨Wvsb|[zyCy�h�`^g»`r{�nG�+[«k�en e�u}evsvsh_gTc¦nG�+b=`rqac���nG�+[�b=`rqs�nGh_g+[�h_g+nG[^b|{|e~�[z��ª��+[»k@en e�u}evsvsh_gTcfy£h_gÖy¬q��lb=`rqsnGh_g+[�uwq�y¬n�~F`ruwvs]_pÔ��h_nG�änG�+[À   µ�b [l¢�qsh_b|[^uw[rg+n�`^{+vsb|[zy�[rb x�h_g�c�k@en e�kzh�y�nGb h_�fqsnGh�`^gTy��fpºe¡~We]H]_[r[z�

��g�`^q�b*n|`z`r]H����[P�Tex�[�q�y�[zk�nG�+[Ph_gin�[^b v�b=`^~ [zklqsb=e]sk�en e£klh�y�nGb h_�lq�nGh�`^g«uw[^nG�+�`lk�y¿kz[rxf[r]�`^vs[lk©enÄͲÒ�ϲ�@Í �J ϲ�@Í �8� Ïteg�kmÍ � Ò�Ï��r�-nt[ze~��w~Fe]_]Ey�h_nG[r�lnG�+[-h_g+nG[rb vsbd`^~ [^�kzq�b=e]�egTe]_p@y�h�y�vsb=`rx�h�kz[zy�nG�+[�u}evsvsh_gTc�`r{�kzqsuwuwp�eb=c�qsuw[rg+n y¦`rg+n `�e~ nGqae]eb=c�qsuw[rg+n yC�Eª��+h�y�u}evsvsh_gTcÃh�y�qay�[lk±n `±en�n e~��¹nG�+[±y�qs�fb=`rqsnGh_g+[±e]_h�c�g+uw[^g+nc�b=evs�©n `¤nG�+[¤]�`z`rv»gi[ly�nPe]Hh�c�g+uw[^g+nPc�b=evs��eg�kºnGbdegTy�{ `rb u nG�+[¤u}evsvsh_gTc¥kl[^�~�]�eb|[zkwenay�qs�lbd`^q�nGh_g+[�h_g+nG[^b|{|e~�[�h_g+n `�nG�+[�g+[ly¬nsu}evsvsh_gTcf�=��{�nG�+[�u}evsvsh_gTcfy�eb|[~F`ruwvaenGh_�l]_[r��uw[legih_gTconG��eninG�+[¿g+qsuw�f[^b�`r{�kzh�y�nGb|h_�lqsnG[lk�kzh_uw[^gTy�h�`rg�y�{|`^b�~W`^uw��lh_g+[lk¤c�b=evs�Tylh�yz]�ebdcr[rb+nG�Teg ¨ ��nG�+[^g-nG�+[£y�~F`rvs[£`r{Ë�@`^nG�-u}evsvsh_gTcfyl~Feg-�l[a~W`^uw��lh_g+[lkz��`^n��i[rb ��h�y�[¤k�en e¡b [lkzh�y�nGb|h_�lqsnGh�`rg�eni[ze~ �«~We]_]sy�h_nG[£��h_]_]z�l[£gi[r~�[lyCy�eb|p*�

��g�u}eg+p�³�µf�îvsb=`lcrbdeu}y��@y�q�~��Ãe�yE�-Ð�³ J �-�@ebdcrq�uw[^g+ntb [lkzh_uw[rg�y�h�`rg+hHgTch�y¿eo~F`ruwu}`^g�~F`^gTy�nGb|qs~�n ���-~ ~F`^bdkzh_gTc­n `�nG�+[�À   µ»y�n egTk�eb=kl�lh_g�nG�+h�yE~Fe�y�[�°�y�[r[Í � Î�ϲ�zva� ��>I ·²�z�*`^nG��e~ nGqae]TegTk�klqsuwuwpmeb=c�qsuw[rg+n yTuwqay�n@�f[�kl[^~�]�eb|[zk©e�yPy�[^�¢�q�[^g+nGh�e]��   e�y�y�h_gTc�eb bdep��lp�b|[^{�[rb [^g+~ [¿n|`¿h_n y�{�h_bdy�ni[^]_[ruw[^g+n+h�y�e]�y�`£gT`rnivs[rb uwh_nG�nG[lk�h_g�À   µ*� ª��+[�evsvsbd`^vsb|h�enG[�eb bdepwy�[r~�nGh�`^g�h�y@b|[z¢�q�h_b [lk�hHgTy�nG[le�k�� ª�`o~W`^uwvs]_p��h_nG�wnG�+h�yTÀ   µ�b|[z¢�q�h_b [ru¥[rg+nG�l��[-�Te�k�n `�b [^��b h_nG[-�fp��TegTk©yC`^uw[�y�qs�lbd`^q�nGh_g+[~Fe]_]�y¿��h_nG�}vae�yCy�h_gTcmeg±evsvsbd`^vsb|h�enG[©eb|b=ep�y�[^~�n�h¬`rg}h_gTy¬n�[ze�k�`r{¦eg±eb b=ep»[r]_[^�uw[^g+n �

ö L�©U�O RTßÖÞ+O X V äÞ+O Þ��©ã XYÝTNPßÖâ+NPO�Þ+NPS\ÜPãYÞ+VËâ+ßÖâ+NPO�÷TRTRTã�ø,�ù ú�©Ü'÷ºûª@�i[�k�en eÄe]_h�crg+uw[rgin�egTk�klh�y¬n�b h_�lq�nGh�`^g�nG[^~ �ig+h�¢�q�[zy*kz[ly¬~ b h_�l[lkoh_g-v�b [^x�h�`rqay

Page 20: Automatic Data Distribution for CFD Application on

I¶¨

y�[^~ nGh�`^gTy���ex�[«�f[^[rg»h_uwvs]_[^uw[rg+nG[zk�h_gÔ�-�-�   ª��.ª��+[«n|`z`r]th�y���b h_nGnG[rg»h_gÔ³º\3\egTk�h�yi�*e�y�[zk�`^gºeE{�[^�Øy�n egTk@eb=k¦³º\3\�~�]�e�yCy�[ly�y�qs~��ºe�y+é�h�y�nG�   `rh_g+nG�/ü¿[^~�n|`^b¡egTk�±enGb h_¨+� ¼ `ruw[�e�kzxteg+~�[lk«~ ]¬e�yCy�[ly�y�qs~ �Ôe�y   `^]_pfgT`^uwh�e]�°�y�pfuw�@`r]_h_~£va`^]_pfgT`^uwh_�e]�·²� ¼ é@µ@`rb u °�y�p*y�nG[^u `^{T]_h_g+[zebP{|`rb u}yC·TegTkº�¦ê¦b=ev��ä°²�«� ¼ �-h_b [r~�nG[zkºê¦b=evs�~�]�e�yCyC·��Tex�[P�l[r[^g§h_uwvs]_[ruw[^g+nG[lk�eg�k���h�kz[r]_p­qay�[lk�hHg«nG�+[�n|`z`r]���ª@�i[P�fqsb=kl[^g�`^{µfå�Ðaª@Ða�-�áv�b=`zc�bdeu¯vaeb=y�h_gTc��TegTe]_p*y�h¬y¦egTk¥~W`zkz[wc�[^g+[rb=enGh�`rgmh�y�vs]�e~�[lk}`^g³��   ª�`l`r]¬y�Í ��� Ï��

³��   ª�`l`r]¬y�°²³-`^uwv�qsnG[^b¿�-h�kz[lk   eb=e]_]_[r]_h�yCenGh�`^g�ª¡`l`^]�yC·+�Tex�[¤�f[^[rgäkz[rx�[^]_�`rvs[zk¥h_gm�-g+h_x�[^bdy�h_nGp}`r{aê�b|[^[rg+��h_~��+�+�ºý¶Í ��� Ï��W³��   ª�`l`^]�y�kl[^u}`^gTy�nGbdenG[zkwnG�+[e�lh_]_h_nGp�n `Ävaeb=y�[r�.egTe]_pfj�[¦egTk¦vaeb=e]_]_[^]_h_j�[¦eEg+qsuw�l[rb¡`^{f³�µf�¹evsvs]_h_~Fen�h¬`rgTy��dh_g+�~�]_q�kzh_gTc-�   Ì�egTk��-Ða³ J ���^��y�e¿b|[zy�qs]_n¡`r{�egÔe�c�b|[^[^uw[rg+n@�l[rnG��[^[rg¥nG�+[¦�-g+h_�x�[^bdy�hHn�p�`r{�ê�b|[^[rg+��h_~��½egTk���� ¼ �í�-uw[zyPÐa[ly�[zeb|~���³�[^g+nG[rb ��nG�+[�³��   ª�`l`^]�yc�b=`rqsv�vsbd`^x�h�kz[lk   ebde]_]_[^]˪¡`z`r]�yTc�bd`^qsv©enf�«� ¼ ��h_nG�weg§�   ����ª��+h�y�h_g+~�]_qakl[zyEekz[ly�~�b h_vsn�h¬`rg½`r{�h_g+nG[rb gTe]¿k�en eºy�nGb qs~ nGqsb|[zy¿qay�[zk©�fpm³��   ª�`l`^]�y��@h_g+nG[^b|g�e]Evsbd`^�c�b=eu¯b|[^vsb|[zy�[^g+n en�h¬`rg¾°�evsvs]_h_~FenGh�`rg¾k�en e¦�*e�y¬[l·²�Te¦g+qsuw�f[^b¤`^{aqsnGh_]_h_nGh_[ly�egTk�e~F`lkz[¤cr[rg+[^bden `^bd�

�-�-�   ªäqay�[zy�nG�+[�³��   ª�`l`^]�y-c�[^g+[^bdenG[zkäk�en e�@e�y�[�n `«v�[^b {|`rb u e�y�h_gTc�]H[vae�yCy�nG�+b=`rqac���n��i[�yC`^qsb|~�[�v�b=`zc�bdeu}����nf�lq�hH]�k@yTe   ³�µfê�{|`^btnG�+[����T`^]_[�evsvs]_h_~Fe�nGh�`rg�egTk�e�k�en|e�n�b=egTy�{�[^b�c�b=ev���°²�-ª@ê«·W{|`rb�[ze~ �«]�`l`^v�g+[ly¬n|�C��n�eg+g�`rn enG[lys[le~��eb ~§��h_nG�ÃnG�+[©e{�{�h_g+h_nGp»b|[^]�enGh�`rg}�l[rnG��[r[^g±eb|b=ep*y¿b|[^vsb|[zy�[rginGh_gTc�n��i[meb|~§[^gTk�yC�ª@�i[�~W`^uwvs]_[r¨Fh_n�p�`^{lvsb=`r~�[zyCy�h_gTc¦eTgi[ly�n.��h_n���ù-eb bdep@yih�y W c�ùÆþVf@egTk�h�ytk@`^uwh_gTenG�[zk��lp�~F`ruwvsqsn�hHgTc�nG�+[-~�]�`ly¬q�b [�`^{�e{�{�h_g+h_nGp�b [r]�enGh�`^gTyC�^��yPe¿b [ly¬q�]_nG��k�en|e­e]_h¬c�g+�uw[^g+nEkzh_b|[^~�n�hHx�[ly¡eb|[�c�[^g+[^bdenG[zk�{|`rbE[ze~ ��g+[zy�n � ª@�i[§kzh_b [r~�nGh_x�[zy�eb [onG�+[rg�]_h_{�nG[lk�@`rnGn `ru×qsväe]�`rg�c­nG�+[�eb ~Fy¿`r{   ³�µfê¹�fp�~�b [lenGh_gTc�y�qs�fb=`rqsnGh_g+[-h_g+nG[rb {|e~�[ly¿egTk[^h_n��i[rb�uw[rb=c�h_gTc¤klh_b [^~ nGh_x�[zy�`^bTvs]�e~�h_gTcob [zklh�y�nGb h_�lq�nGh�`^g�kzh_b|[^~ nGh_xf[lyC�

ÿ L������â+Q=XYßôâ+N�O,����XYO����� ��RTS�â�Z\[-�Tex�[-vs[^b|{|`^b|uw[zk©yC`^uw[�hHg+h_nGh�e]�[^xte]_qaenGh�`rg�`r{*n��i[�k@en e­klh�y�nGb h_�lq�nGh�`^gTy

c�[^g+[rb=enG[lk­�lp��-�-�   ª¡�ª��+[£n `z`r]z��e�y�b q�g�`^g��   Ì��©`^b �fh_gTc�`^g�y�h_gTc�]H[¤y�nGb q�~��nGqsb|[zk�crb|h�k¢��Ì�ª@� ¼   ��é��ÖegTk£µfª¥eg�k�`^g�eg�e[^b=`lkzpfgTeuwh_~Äevsvs]_h_~FenGh�`rg-�-Ða³ J ����¢�q�e]_h_n enGh_x�[Ä~F`ruwvaeb h�yC`^g���h_nG��nG�+[¦k�en e¿klh�y¬n�b h_�lq�nGh�`^gTy+qay�[zk-hHg��TegTkz��b h_n�nG[^g

Page 21: Automatic Data Distribution for CFD Application on

I��

À   µ�h_uwvs]_[ruw[^g+n enGh�`rgTyP`^{t�   Ì�Í S Ï*egTk��-Ða³ J �ÚͲÑ�Ï�h�yPc�hHx�[rg¥h_g¥ª¡e�l]_[ � �r�-]_]evsvs]_h_~FenGh�`rgTy+[^¨W~�[rvsnlé@�\qay�[�b [lkzh�y�nGb h_�lq�nGh�`^g¥`r{*k�en e���ª@�+[Äb|[zkzh�y�nGb|h_�lqsn�h¬`rgTyTegTknG�+[^h_bT]�`r~FenGh�`rgTy�h_g�nG�+[£~F`lkz[£�Tex�[£�l[r[^g©y�qs~�~ [zyCy�{�qs]_]_pwkz[^nG[rb uwh_g+[zk��lp����-�   ª°²]_h_g+[ � ·�����g¥e]_]+evsvs]_h_~FenGh�`rgTy+[^¨W~�[rvsn ¼   yC`ruw[¦klh¬y�nGb|h_�lqsn�[zk�eb|b=ep*yTeb [�vae�y�y�[lk�e�yy�qs�fb=`rqsnGh_g+[�eb=c�qsuw[rg+n yC���-�-�   ª���e�yae�l]_[Pn `Pqay�[Pn��i[Ph_g+nG[rb vsbd`^~�[lkzq�b=e]Ëh_g+{|`rb �u}enGh�`rg»c�[^g+[^bdenG[zk«�lp�³��   ª�`l`^]�y�n `�u}`^x�[�nG�+[«kzh�y�nGb h_�fqsnGh�`rg�y�e~�b=`lyCyÄy�qs�fb=`rqs�nGh_g+[§�@`rqsgTk�eb|h_[zy¦eg�k}c�[^g+[rb=enG[§À   µÃy�qs�lbd`^q�nGh_gi[§h_g+nG[rb {|e~�[ly�°²]_h_g+[zy I egTk J ·��µ*`^bwy�h_uwvs]_[Ãkl[^vs[rgTkz[rgi~ [zy-�f[^nG��[r[^g´kzh�y�nGb h_�lq�nG[zkÖeb bdepôy�[^~�n�h¬`rgTy�°²Ì�ª@� ¼   �'é@�egTk��-Ða³ J ��·F�-�-�   ª���e�yae�l]_[Pn `¿h�crgT`rb [PnG�+[Pb|[zkzh�y�nGb|h_�lqsn�h¬`rgTyEegTk�]_[lexf[¿nG�+[vsh_vs[r]_hHg+h_gTc�n `£nG�+[£~F`ruwvsh_]_[^b|��]_h_g+[£Î����-�-�   ªº��e�y@gT`^nTe�l]_[on `¤c�[^g+[^bdenG[£b [lkzh�y��nGb|hH�fqsnGh�`rgTy¡`^{ayC`^uw[o�@`rqsgTk�eb|pwk�en eÄgi[r~�[lyCy�eb|p§{|`^bE[r{�{�h_~�h_[^g+n�~F`^uwvsq�n enGh�`^gTy�`^{�@`rqsgTk�eb|pº~W`^gTkzh_nGh�`rgTy£°²Ì@³-·ih_g��-Ð�³ J �-�f]_h_g+[ � °²gT`rnG[­nG�Ten�Ì�³Á��e�y�[^¨W~ ]Hq�kz[lk{�b=`ruÅnG�+[Ävs]�`^n@`rg�µlh�c�qsb|[ S ·���Ì�e�y�[lk�`^g�nG�+[¦egTe]_p*y�h¬yT`r{lh_gTkz[r¨o[^¨Wvsb|[zyCy�h�`^gTyTegTk]�`z`rv�g+[zy�n@h_gTkzh_~�[lyT�-�-�   ª���e�yPe�l]_[-n `�kl[^nG[r~�n¡egTk�y��fh_v�h_nG[^bdenGh�`^g¥]�`z`rvs�z]_h_gi[> �.e�yi��[^]_]Fn `Ävs[^b|{|`^b|uá¢�qae]_h_{�h_~FenGh�`rg�`r{lvsb h_xtenGh_j�e�l]_[¦eb bdep@y��d]_h_g+[ S �|��`^gº`r{lnG�+[~F`rgTy�h¬kl[^b|[zkÖevsvs]_h_~FenGh�`rg�y-�f[^g+[^{�h_n�{�b=`^u e�~�pf~�]_h_~»klh�y¬n�b h_�lq�nGh�`^gÂegTkÃ���-�   ª��e�y�gT`^n�y�[rnin `¤cr[rg+[^b=en�[¿h_nG��]_h_g+[zy�ѧegTk­Ò��

�� ����¶G�IKJADAPT (A) versus Manual (M) HPF Data Distribution for

Scientific Codes. [+ uses the feature, - does not use the feature, *

depends on compiler support, ✓ automaticly generated]

Benchmark BT SP LU FT ARC3D

DD Features M A M A M A M A M A�iÏ�� �¥�A�t�j�Î�z�ÇÞK�A�X�Ç�K� �

✓�

✓Ö Ö �

✓�

✓�iÏjÔ ���X�¥�����<�K�V�¥�A�A�z� � �

✓Ö Ö �

✓�

✓�

✓� ÏjÔ ���X�¥���Î� �V�¥� �

✓Ö Ö �

✓�

✓�

✓�iÏ�� �Ç���¥�Ç�Ç�����

0���=��l8'��0��"�=/ú�l��0���;r�z� #G��<�!�8��"���z����DH0 !�����/r!�#�0<;r���l�"�s#%��0�0 ��/_�80 !y0 ����!��!����

�✓

�✓

�✓

Ö Ö �✓

�iÏ���� �<�¥�A�Ç�C�X���ÇÞK�A�X�Ç�K� Ö Ö Ö Ö Ö Ö Ö Ö � Ö�iÏjÐ �Ç�P�¢�Ç���K�F�Ç�iÓd� �z�t� �i� �

✓�

✓�

✓�

✓�

✓�iÏ�� ���ÇÓ/� �Î�! � �X�t���#"×�i� �#$ �

✓�

✓�

✓Ö

✓�

✓%iÏ�� �Ç���'&H�§�Ç�j�Î�z�ÇÞ/���X�t��� �

✓�

✓�

✓�

✓�

✓(iÏ�� ØK�1�Ç�Ç� �A�Ç�C�X���ÇÞK�A�X�Ç�K� Ö Ö Ö Ö Ö Ö Ö Ö Ö Ö

Page 22: Automatic Data Distribution for CFD Application on

I�I

ª@�i[-��`rb=y�n*~Fe�y�[-~F`ruwvs]_[^¨Wh_nGpm`r{ W c�ù§þVf�{|`^b�~F`ruwvsqsnGh_gTc�n��i[-~ ]¬`ly�qsb|[�`^{tnG�+[e{�{�h_g+h_nGp©b [r]¬en�h�`^g\°²���+[^b|[�ù�h¬y�n��i[�u}e¨Wh_uwqsu giq�uw�l[^b§`r{¡gT`zkz[ly�h_gÔnG�+[�g+[zy�n�-ª�ê�·f��e�y�g+[rx�[^b¡b [le~��+[lkz�zª�e�f]H[ I �^ª��+[¦[r¨W[^~�q�nGh�`^g¥nGh_uw[�°²]_h_g+[ > ·f��e�y�k@`^uwh_�gTenG[zk��fp�`rnG�+[^bt{|e~�n `rb=yay�qs~���e�y�~W`^uwvsq�nGh_gTc­`^{inG�+[�e{�{�h_g+h_nGp­b [r]�enGh�`^gTys{�b=`ruØh_g+�kz[r¨o[^¨Wvsb|[zyCy�h�`^gTyTegTk¦nG�+[�]_h_{�nGh_g�c�`r{fnG�+[¦klhHb|[^~ nGh_xf[lyTe]�`^gTcP[zk@cr[lyT`^{   ³�µlê���ª@�i[~F`ruwvs]_[^¨Wh_nGp�`r{�n��i[ly�[�`rvs[rb=enGh�`^gTy�h�y�vsbd`^va`rb nGh�`rgTe]�n `«nG�+[�g+qsuw�l[rb�`r{�eb ~Fy�h_g�-ª�ê°²]_h_g+[ J ·ieg�k�h_g   ³Pµlê°²]_h_g+[�Î�·�b|[zy�vs[r~�nGh_x�[^]_p*��å­xf[rb=e]_]Ë���¦�   ª�[r¨F[r~�q�nGh�`^gnGh_uw[¿�©e�yay�h�c�g+h_{�h_~Feg+nG]_p¤]_[lyCy�nG�Teg«n��i[£³��   ª�`l`^]�y�°²]_h_g+[ � ·+egTe]_p*y�h�ysn�hHuw[l�

�� �����G5bKJADAPT Performance

µfh_g�e]_]_p«��[o�Tex�[§evsvs]_h_[lk¥yC`ruw[���egTk§[zklh_nGh_gTc�n `�nG�+[�~F`zkl[§cr[rg+[^bdenG[zk§�lp�-�-�   ªm{|`rbĵlª�#£egTk���Ða³ J ���rª@�+[�[zkzh_n�hHgTc¤��e�yEg+[^~ [zyCyCeb pº{|`^bÄb [rvs]�e~�h_gTc­h_gy�qs�fb=`rqsnGh_g+[«ebdcrq�uw[^g+n y�eb bdep�[^]_[^uw[rg+n�e�k�kzb|[zyCy�[lyt�fp©eb b=ep©y�[^~ nGh�`^gTy�egTk«{|`rbh_uwvs]_[^uw[rg+nGh_gTc�nG�+[�Ðaè��-� ¼ ª@Ða��Ì��-ª@��å­�îy�n enG[ruw[^g+n+y�h_g+~�[�nG�i[

pghpf2.4k�`r[zy

gT`^n�y�qsv�va`^b|nsh_n �dª@�i[¦h_uwvs]_[^uw[rginGh_gTc-b [lkzh�y�nGb h_�lq�nGh�`^gºh_g+~�]_qakl[zk«~F`rvsh_gTc�kzh�y�nGb|h_�l�qsnG[lk�eb|b=ep*y�n `�eb bdep@y���h_nG�wegwe]_nG[rb gTenGh_x�[�kzh�y�nGb h_�fqsnGh�`rgweg�k�y�qs�@y�nGh_nGq�nGh_gTc¿nG�+[eb bdep*y���h_nG��e]_nG[rb gTenGh_x�[�kzh�y�nGb|h_�lqsnGh�`rg«h_g�y�nG[le�k�`r{t`rb h�c�h_gTe]�eb|b=ep*ysh_g§n��i[­y�~F`^vs[`r{fnG�+[�Ðaè��-� ¼ ª�Ð���Ì���ª���å��¶klhHb|[^~ nGh_xf[l��ª@�+[�b [ly�qs]_nG[lk¦~W`zkl[���e�y+~F`ruwvsh_]_[zk-��h_nG�nG�+[

pghpf2.4~F`ruwvsh_]_[^bs{�b=`ru   `rb n�]¬egTk�ê�bd`^q�v¤��gi~W�Yª��+[¡vs[rb {|`rb u}eg+~�[�`^{znG�+[

~F`lkz[���e�y�~F`ruwvaeb=e�f]_[���h_nG�§nG�+[�vs[rb {|`^b|u}eg+~�[-`r{fn��i[P�Teg�kl��b h_nGnG[rg§À   µ�~W`zkl[egTk­��h_nG��nG�+[£�   �+~F`lkz[r��µlh�c�qsb|[ S �

Benchmark BT SP LU FT ARC3D�iÏ�) �A�PÞK�¥�$�����j��Þ/�<�K���Î�Ç�i�¥� �*% � � � � � � � ��iÏ�) �A�PÞK�¥�$�����i�¥�j�Î� �*�*� � � � � �*� % �� Ï�+ � Ò:�C�! �¢��� �ÕÐAß "Î�i�K�A�¥�j��� �R�V� $ "Î� � ��� % �*$ " �*( � �*�*%*$ "Î� ( � �*% �*$ " � � � �*�*$ " �*% � � � �*$�iÏ�, �! �¢��� �-�/./ß "Î�i�K�A�¥�j��� �R�V� $ " �*�*� � � � �*$ " �*� � � � �*(*$ " �*�*� � � �*%*$ " %*� � � � �*$ " �*� � � �*(*�*$�iÏ�� ~ ��Ð ���K�Ç��� �i� �ÇØ/�j�t���Î�Ç�P��"Î�P�t� Ï $ � � �*� �*� � � � ��iÏ ~ � ~ �AÐ��/�-0 �Î�Ç�P��"Î�C�¥� Ï $ �

0��¬=���W�Co ����� �"!������'!�DE�Ë!�#r������?�7z�21��,.i&���?�7�7�7.Da0����!�����$�!������� <=!���+�"!�DE�Ë8'��/=����<=�W�C�����/10��"!����s0��<*�CoY�����=<=!����'!�DE�l8'��/r��/H��0��"!���s,.)n= ������#F<=0��"0�;^0�#%�:�

� � �*� � �

���Ë)+�s!��#R0 �����'!����s��8��"���ËAi/.£0���<©n ,.; .o��8��'��Ë;�t#%� ������#G�"��<*�'�0�������Ë��8��'�/H���.6�Ao����DH0 ���Cof0�/1/_0���#r!�#/H��<=� ��<=0���"��)-/H��DE��B�!���s��8�"��!�#F0�/_/10��s8'/H��D��'��i;^�:����Da0�/¾k�/H��<=� ����<T�"��lDa��DE��/1�s/H�43C� !�/H��Da����'#8;r�6�7'5§0��<T#%��!�����"����!�DH0 /H��BC��<Õ0 ��/18'��/1DE0��������

Page 23: Automatic Data Distribution for CFD Application on

I�J

?A@CB!DFEHG76KJ � ���O��� �z�Ç�C���®�K� +8��Ô Ód�,���j�Ç�K�#"×�A���Î�X�¥�'�1����Ó/�¥� $ � Ñ � �i� � �z�Ç�Î�X�¥�:9 �-. Ó/�¥���j�Ç�K�"Î�C���Ç�Ç�}�V����Ó/�¥� $ � �i�'~ � ~ �AÐ �K�¥���,��� �Î�,�;"Î�A� � Ñ �,�}�V����Ó/�¥� $ Ó/�¥���j�Ç�K�i���K� ./Ð "×�Ç�¥�Î� $ � �i�'~ �<� � �"×�z�Ç� Ñ � $*Ï�ÐAÑ �TÞK�K���i�A� ��Øa�V�K�i�A�Ç�Î�Ç���Y�j��Þ/�<�K���Î�Ç�i�T�¥Ò8�V�Ç�A�A�¥�h�Î�R��� ~ �<� � � ���Ç�K�/�j�Ç�i�1�T�Ç�/�<�>=/�A�Ç�<�¥�

�©�i���OÞK�¥�Ê�K� Ñ � ���'�X�A�i�Ç�i���j�Î�¥��� Ï

? L�©U�O RTßÖÞ+O X V äÞ+O Þ� �Xx�WO Q Xz��U�O XYRTN�÷Tâ+V@��NPX�A�UPâ��ðg+qsuw�f[^bw`^{�uw[^n���`lk�y-{|`rb¥eqsn `ru}enGh_~»k�en|e�u}ev�vsh_g�c©�Tex�[��f[^[rg¹kl[^�

y�h�c�gi[lk¢�rÍ I ϲ�%Í � ϲ�%Í �J ϲ�%Í �8� ϲ�%Í ��> ϲ�%Í ��S ϲ�%Í � Ñ�ϲ�%Í I�J Ï�� ¼ `ruw[-`r{�nG�+[PnG[^~ �+gih�¢�q�[zys��[^b [�kl[^�x�[^]�`rvs[zk�hHg�e�{�b=euw[r��`^b|�«`r{�eg�eqsn `^u}en�hH~We]_]_p�vaebde]_]_[^]_h_j�h_gTc�~W`^uwvsh_]_[^b|�Ë`^nG�+[rb=yh_g»nG�+[«~F`^g+nG[r¨Wn£`r{�vaeb=e]_]_[r]_h_j�hHgTc�n `l`^]�yC�.�-g»[^¨WnG[rgTy�h_xf[�y�qsb|x�[^pä`r{ok�en e-]�ep*`rqsnuw[^n���`lk�y�h�yÄc�h_xf[rg�h_g»Í �8� Ï@egTkweP~Fe�y�[«y�nGqaklp�`^{@Î�evsvsbd`ze~ �i[lyth�y�crh_x�[rg�h_g»Í J Ï��ê¦[^g+[^bde]fb [z¢�qsh_b [ruw[^g+n y*n `�k@en e�klh�y�nGb h_�lq�nGh�`^g�n `z`r]�y�eb [o]_h�y�nG[lk�h_g©Í I�� Ï�� Z\[o��h_]_]~F`rg+~�[^g+nGbdenG[�`^g»nG[r~��+g+h�¢�qs[ly¦y�qsh_n e�f]H[«{|`rb¤klh�y�nGb h_�lq�nGh�`^g�`r{ok�en|e�kz[r{�hHg+[lk}`rg�ey�h_gTcr]_[¤`^bTuwqs]_nGh_vs]_[­y�nGb|qs~ nGqsb [lk�c�b h�k@y��

�±`zy�na`^{�nG�+[�[^¨Wh�y�nGh_gTc¦n `z`r]�y�°²��h_nG��³��   ª�`l`^]�yÄeg�[r¨W~�[^vsn�h�`^gT·z��[^b [�h_u¥v�]_[^�uw[^g+nG[lk�e�yÄe�æ�kz[ru}`^gTy�nGbdenGh�`^gÔ`^{@~F`^g+~ [^vsn ç�egTk«gT`^g+[«`r{�nG�+[ruÙ�Tex�[«kz[ru}`^g+�y�nGb=en�[zk±e�lh_]_h_nGpÃn `}eg�e]_pfj�[wuw[zklhHq�u `rb­]�eb=c�[}y�h_j�[¥~W`zkz[ly«egTk½c�[rgi[rb=enG[}eg[^{�{�h_~ h_[^g+niÀ   µ�vsbd`zc�b=eu}�

�-gmevsvsbd`ze~ ��n `�k@en eÄ]�ep@`rqsn��*e�y�[zk¥`rgme¦kz[r~F`^uwva`ly�h_nGh�`^gm`r{svsb=`r~�[lkzqsb|[zyh_g+n `-vs�Te�y�[zyPegTk�{�h_gTkzh_gTc�nG�+[-�l[ly¬n�y�n enGh_~�e]_h�crg+uw[rgin*{|`^b�[le~��¥vs�Te�y�[-��e�yPkl[^�x�[^]�`rvs[zk-�fp�é�h�egTk-³��+[^g§h_g¥Í ��> Ï���ª��+[-e]�cf`^b|h_nG�+uÅvs[rb {|`rb u}y�h_ginG[rb �|klh_uw[^gTy�h�`^g+�e]+e]_h�crg+uw[rgin@e�yTeE{�h_b=y�n@y�nG[^v�egTk¦h_g+nGbde�|kzh_uw[^gTy�h�`^gTe]+e]_h�c�giuw[rg+n@e�yin��i[-y�[^~F`rgTk

Page 24: Automatic Data Distribution for CFD Application on

I Î

y�nG[^v��rª@�i[�h_g+nG[rb �|kzh_uw[rg�y�h�`rgTe]Ee]_h�crg+uw[rg+n*h�yE{|`rb uwqs]�en�[zkme�y¿e£vaeb|nGh_nGh�`^g�vsb=`r�l�]_[^u®{|`rb¡nG�+[äL3�Aª'���Fù�þ ùfû � ÷H÷^øúùføúû²ñ � ýGö"���º°²³��-ê�·��dª@�+[�eqsnG�T`rb=yTvsb=`rva`zy�[�eP�+[rqs�b h�y�nGh_~Pe]�cf`^b|hHn��iu¸n `¡{�h_gTk�nG�+[¡�l[zy�nse]_h�crg+uw[rg+nG� h_g�cr[rg+[^b=e]_�=�T`^��[rx�[^b �=nG�+[^p�y���`r�nG�TeninG�+[£vsb=`r�l]_[^uÚh�y��   ��~W`^uwvs]_[rnG[z�

°�öWý%ö�|�ø�­¶ª±Í � Ñ�Ï���ª��+[�evsvsb=`le~��§h�y+�*e�y�[zk�`rg�n��i[�eg�e]_p*y�h�yE`^{�nG�+[�~F`ruwuwqsg+h_�~FenGh�`rg¸c�b=evs�¸c�[rgi[rb=enG[lk��lp   ebde{�b=e�y�[^� I �tª��+[�c�b=evs�ÁgT`lkz[lyºeb [»vsb=`lc�b=euy�n enG[ruw[^g+n y�egTk�c�b=evs��[zk@c�[zy�eb [¤k�en e¡{�]�`^�©ys�f[^nG��[r[^g�y�n enG[ruw[^g+n y���[rh¬c��+nG[lk��h_nG�»~F`zy�n£`r{anG�+[§~F`ruwuwqsg+h_~FenGh�`rgTyC�Wª@�+[wcrbdevs�mh�yÄb [r~�qsbdy�h_xf[r]_pÃkz[r~F`ruwva`zy�[lkh_g+n `�e£�+hH[rb=eb|~��+pm`r{*v���e�y�[lyT�fp�b [ru}`^x�h_gTc�e£u}e¨Wh_u}e]+~�q�n�`^gw[ze~��}y�nG[^va�rª@�i[kz[r~F`ruwva`zy�h_nGh�`rg�`r{Wn��i[�~F`ruwuwqsg+h_~FenGh�`^g�c�b=evs��y�n `rvay�enWn��i[�va`^h_g+nW���+[^g�e�y�n enG�h_~mklh�y¬n�b h_�lq�nGh�`^g�~Feg�gT`rn£�l[�h_uwvsb=`rx�[zkÃ�lpä{�qsb|nG�+[^b¥kz[^~W`^uwva`ly�h_nGh�`^gT��ª@�i[rg¹evs�Te�y�[�nGbdeg�y�h_nGh�`rgmc�b=evs��h�y*�fqsh_]_ns��h_nG��n��i[�[lk�c�[zyt��[rh�cr�+nG[lk§�lp«n��i[�~W`zy�na`r{sb|[^�kzh�y�nGb|h_�lqsnGh�`rgTyC�:�ä~�b|hHn�h_~Fe]^vaen��¦h_g¦nG�+[£c�b=evs��crh_x�[lyznG�+[a�l[ly�niy�[l¢�qs[rg+~�[£`^{Ëvs�Te�y�[zyegTk¤v���e�y�[onGbdeg�y�h_nGh�`rgTyC��ª��+[on `l`^]f��ex�[o�l[r[^g©y�q�~�~�[lyCy¬{�q�]_]_pwevsvs]_h_[zk�n ` I �ÖµfµlªegTk­���¦���f[^b g+[r]�yC�

gCB £�Ã�Í I ϲ�%Í ��S ϲ�%Í I�J Ï��z�-g±e]�cl`rb h_nG�+u {|`rb«kzpfg�euwh_~¥k�en eºkz[^~W`^uwva`ly�hHn�h�`^g�h�yc�h_xf[rg»h_g\Í I Ï��Ë��n�h�y¦evsvs]_h_~Fe�f]_[«n `�eg\eb �lh_nGbdeb p�y�[z¢�q�[^g+~�[�`r{�]�`l`^v}g+[ly¬n|yÄ��h_nG�]�`z`rv��@`rqsgTk�eb|h_[zy¡egTkºeb bdep�b|[^{�[rb [^g+~ [zy¡kz[zy�~ b h_�l[lk¤�lp§]_h_g+[zebT{�q�gi~ nGh�`^gTyC����n+h_g+�xt`^]_x�[ly J u}eh_g¾y�nG[^vay%� � �W{�h_gTkzh_gTc§~W`^uwuwqsg+h_~WenGh�`^gm{�b [r[¥kz[r~F`ruwva`zy�h_nGh�`rgi� I �Wh_{y�qs~ �Ãe�kl[^~W`^uwva`ly�hHn�h�`^g�~Feg�gT`rnt�f[­{|`^q�g�k�nG�+[�e]�cf`rb h_nG�+u y�[leb ~��+[lya{|`rb-e�kl[^�~F`ruwva`zy�h_nGh�`rg¥��h_nG�¥vsh_vs[r]_h_g+[zk�~F`^uwuwq�g+h_~FenGh�`^gTy�� J �rh_{�y�qs~ �¥vaeb nGh_nGh�`rg¥~Feg¥gT`rn�l[Ä{|`^q�gTk�nG�+[¦e]�cl`rb h_nG�+uáevsv�]Hh_[ly�eT�+[^q�b h�y�nGh_~En|`�c�b=`rqsv§n��i[Äg+[zy�n yin|`�{�h_gTk«eTv�eb �nGh_nGh�`rg«��h_nG�«vsh_vs[r]_hHg+[lk�~W`^uwuwqsg+h_~WenGh�`^gTys��h_nG�+h_g«[ze~ ��c�b=`rqsv©egTk­b [lkzh�y�nGb h_�fqsnG�h_gTc§k�en e��l[rnG��[^[rg�nG�+[¤c�b=`rqsvayC��ª@�+[¤e]�cf`^b|h_nG�+uÚ�©e�y@[^g+�Tegi~ [zk�h_g�Í ��S ÏËn `o{�h_gTkvaeb|nGh_nGh�`^gTy�uwh_gih_uwh_j�h_gTc¾y¬pfg+~��+bd`^g+h_j�enGh�`^gTyC��ª@�i[ ¼ �-��µ�h�y�e�³Ú~F`^uwv�hH]_[rb ��b|[^�¢�q�hHb|[zy�qay�[«`r{

f2cn `«c�[^g+[^bdenG[�h_g+nG[^b|uw[zklh¬en�[�³¾~W`zkz[�{�bd`^uáµfå�Ðaª@Ða�-�Å~W`zkl[

egTk­h�y�gT`^n�e�f]_[¿n `¤c�[^g+[^bdenG[¿À   µ¤~W`zkl[z�|-Dº°=ÃwÍ �J ϲ�iÍ �8� Ï���ª@�i[�evsvsbd`ze~���~W`^gTy�h�y�n y�`r{�b [lkzq�~�nGh�`^g©`r{�nG�+[¤k�en|e�kzh�y�nGb h_�

�lq�nGh�`^g\v�b=`^�f]_[^u n `äe�Ì�`l`^]_[legÂ`^vsnGh_uwh_j�enGh�`rg\vsbd`^�l]_[ru egTkÁev�vs]_plh_gTc�`r{§e~F`ruwuw[^b|~�h�e]iv�e~��*e�cr[�°²³   é�èFE£·l{|`rb�yC`^]_x�h_gTc-h_n �^ª��+[¦b|[zklqs~�nGh�`rgºv�b=`^~ [^[lk�y�h_g�eg+qsuw�f[^bP`r{Ey¬n�[^vayC��å�g�nG�+[£{�h_bdy¬nEy¬nG[rv�nG�+[£vsbd`zc�b=euíh�y@vaeb n�hHn�h¬`rg+[zk�hHg+n `ovs�Te�y�[zyC�

Page 25: Automatic Data Distribution for CFD Application on

I��

ª@�i[rg�{ `rba[le~���v���e�y�[«eij���êÖh�yt�lqsh_]_n �=ª��+[�vaeb nGh_nGh�`rgTy�`r{s³���êÆeb [�~FegTkzh�k�enG[k�en ea]�ep*`rqsn yC��ª��+[�`^vsnGh_u}e]Ë]�ep*`^q�nfh�yTea~�b|h_nGh_~Fe]ËvaenG�§h_g§nG�+[-k�en ea]�ep*`rqsn*c�b=evs����+h_~���gT`zkz[ly*eb [�n��i[¡~FegTkzh�k�enG[¡]�ep@`rqsn y*egTko[lk�c�[zy*eb [¡va`zyCy�h_�l]_[¡b [^u}ev�vsh_g�cfy`r{znG�i[�]�ep*`^q�n y��l[^n���[^[rg­nG�+[¡vs�Te�y�[zyC� ª@�+[¡[lk�c�[zyteb|[¡��[rh�cr�+nG[lk���h_nG��eg­[ruwvsh_b �h_~Fe]�[ly�nGh_u}enGh�`^g�`r{znG�+[¡b [ru}evsvsh_gTcÄ~F`zy�n �|ª��+[�b [zy�q�]_nGh_g�c¦`rvsnGh_uwh_j�enGh�`^g­vsbd`^�f]_[^uh�y�nG�+[^g�{|`rb uwqs]�enG[lk»e�y ¨ � � vsb=`lc�b=euwuwh_gTc�vsb=`r�l]_[^u egTk»yC`r]_x�[zk���h_nG�äeh�kÔ`^{³   é�è�E£�Wª@�+[§n `z`r]*��e�y�e�f]_[�n `wc�[^g+[rb=enG[we]_h�c�giuw[rg+n¿egTk}kzh�y�nGb h_�lq�nGh�`^g¾y�n en�[^�uw[^g+n y�{|`rb����¦���f[^b g+[r]�egTk­è�b|]H[r�@e~ �i[rb�egTk­ª¡`ruw~FenGx§�l[rgi~ �+u�eb|�*y��

L � °��$��� � �ÄÍ > ϲ�fÍ ��� ϲ�fÍ �I Ï���³��   ª�`l`r]¬ys�Te�yEegwe�lh_]_h_nGp­n `�evsvs]_p¤�l]�`^~ �l��~�pf~�]_h_~egTk��f]�`^~��©ôz~�pf~�]_h_~�klh�y�nGb h_�lq�nGh�`^gTy�n `�k�en e�kl[^{�h_g+[zkä`^g\y�nGb|qs~�n�qsb [lkÃÍ > Ï¡egTkä`^gqsgTy�nGb|qs~�nGq�b [lk¤Í ��� ÏËc�b h�k@yC��ª��+[okzh�y�nGb|hH�fqsnGh�`rg-b [l¢�qsh_b|[zylnG�+[�qay�[rb+n `oy�vs[^~ h_{�p§eg�eb �b=ep»egTk©e¤kzh_uw[rgTy¬h�`rgwn `-�f[�kzh�y�nGb|h_�lqsnG[lk��r��y¿y�`l`^g}e¤kzh�y�nGb|h_�lqsnGh�`rgw�Texf[��l[r[^gkz[r{�h_g+[zk�e¡�   ��~F`lkz[¿h_uwvs]_[ruw[^g+nGh_gTc�æ�`^��g+[rb�~F`ruwvsqsnG[lyCç¡b qs]_[£h�y�cr[rg+[^bdenG[zk��

K�G+L���RTN�VËãYU'�WX R�N'��Þ+NPSTUPOYUPQ âIHîRTQKJZ\[ºkl[zy�~�b|h_�l[lkºuw[^nG�T`lk�y¡{|`^b¿nGb=egTy�]�enGh_gTc¥k@en e«kz[rvs[^gTkz[rg+~�[ºegTk�e{�{�hHg+h_nGp

b [r]�enGh�`^gTy�h_g+n `¥À   µ±k�en e«u}evsvsh_gTc}kzh_b [r~�nGh_x�[zyC�iª@�+[zy�[¥uw[^nG�T`lk�y��Texf[¥�l[r[^gqay�[lkw{|`^b�c�[^g+[^bdenGh_gTc�k@en e�kzh�y�nGb h_�fqsnGh�`rg�yÄ{|`rb£À   µ�x�[rb=y�h�`^gTy¦`r{a�   Ì±Í S Ï�egTk�-Ð�³ J �ÖͲÑ�Ï���Z\[��l[^]_h_[rxf[�nG�TenW��[�{|`rqsgTk¤et{Gh_g+[�]_h_g+[a�f[^nG��[r[^g-q�y¬[r{�qs]lc�[rgi[rb=e]_h_nGpegTk¦h_g+nGb=e~ n e�l]_[�~F`^uwvs]_[r¨Wh_nGp�h_gºegTe]_pfj�h_gTc-egTk¦n�b [zen�h_g�c�k�en|e¿e{�{�hHg+h_nGp*��å�q�b¡e]_�cf`^b|h_nG�+u�y+{|`rb@vsbd`zc�b=eu®egTe]_p*y�h�yTeg�k�kz[rb h_xtenGh�`^g¥`r{*k�en e¿kzh�y�nGb|h_�lqsnGh�`rgTyTeb [�[^{��{�h_~�h_[rgin�nG�+b [r[^��vae�yCy}e]�cf`^b h_nG�+u}yC��ª��+[\u}eVU:`rb h_nGpë`^{»e]�cl`rb h_nG�+u}yw�Texf[\]_h_g+[leb~F`ruwvs]_[^¨Wh_nGp���hHn��¥[r¨F~ [^vsnGh�`rg�`r{�yC`ruw[�c�b=evs�}e]¬cf`rb h_nG�+u}yT�Tex�h_gTc�~F`ruwvs]_[^¨Wh_nGpW c�ùÆþVf@°GùÄh�y�nG�+[¡g+qsuw�l[rba`^{zxteb h�e�l]_[lyfq�y�[zk�h_g­nG�+[¡vsb=`lcrbdeu¸gi[ly�n yC·dh_g­nG�+[¡��`rb=y�n~Fe�y�[l�

Z\[¦h_uwvs]_[ruw[^g+nG[lk�nG�+[¦uw[rnG��`lk�yTh_g�egº��qsn `ru}enGh_~£��en e¿�-]_h�c�g+uw[^g+n¡egTk  ]�e~ [^uw[rgin¡ª¡`z`r]�°²�-�-�   ª¡·��.��gih_n�h¬e]T~F`ruwvaeb h�yC`^g½y��T`^��yPnG��en¡nG�+[�k�en e­u}evs�vsh_gTcfyacr[rg+[^b=en�[zk��fp¤�-�-�   ªmeb|[Px�[rb p¤~�]�`ly¬[¿n `¿nG�+[�k�en|e�u}evsvsh_gTc­klh_b [r~�nGh_x�[zyqay�[lk�h_g��TegTk���b h_nGnG[rg�À   µ¦x�[^b=y�h�`rg�`r{.Ì@ª��=é��ÕegTk��-Ða³ J ��� Z\[�eh_uî���-�   ªenib|[ze]z³�µf�¸evsvs]_h_~FenGh�`rg�y�y�qs~ ��e�ysåMLON �<.QP@RTS Í ��¨ Ï��

Page 26: Automatic Data Distribution for CFD Application on

I¶>

�-~ �lgT`r��]_[zk@cruw[rg+n y%�.ª��+[�eq�nG�T`^bdy���h¬y��Ôn `�e~��fgT`^��]_[lk�c�[«À�e�`z¢�h�eg�c�À��U h_gäegTk�У`r�ºµ*��ü­eg��¦[rb�Z\h U1gTcfe�eb nT{ `rbPqay�[^{�q�]aklh�y�~�qayCy�h�`^gTyC��ª@�+[­��`rb �¥vsb|[^�y�[^g+nG[lkºh_g©nG�+[�vaevs[^b¿h�y�y�qsvsva`rb nG[lkºqsgTkl[^b¿�«� ¼ �ÆÀ�h�c��   [rb {|`^b|u}eg+~�[�³-`^uw�vsqsn�h_g�c¤egTk�³-`^uwuwq�g+hH~WenGh�`^g   bd`zc�b=eu egTk��lp¤�«� ¼ �±³-`^g+nGbde~�n���`z�C��� ¼ I �� Î J¶¨J ��h_nG����Ð U ª�[r~��+gT`^]�`lcrp ¼ `r]Hq�nGh�`^gTyC�

V;WYXKWYZQWY[�\@W-]^ �*_ ~ Ï L Ï ~ Ñ �K� �=Ï�, �¥� Ñ ��� �i��` Ï �'Ï�0 �Ç�Ç�P� � Ï�a<bdcTe*fhghikjklnm*o@jnf Ûqp fre*ghiklks*t*i pvu Û fhwyxqiklks*zd{q|Ct*bdbdghlk}*~T�����!�

���Q� ����� �4� �>�����-� ��� �*� �>�*��� ����� ~ �*�*�*�*������*��� � � � ~ � ���>¡ �4�K�¢�*�£� ¤���¥ �*¦ ��§O¨h©dª z ¨¬«T­*®�¯h°T¯r± z ®²¯r© {Q³>´ ©dµ·¶ z µ z ¨h¨h¸k¨r¯ ³ ° zd{q|C¹ © p z ¨h¯h®�ºC© {�» p z ¨ z ªy¨h¸

¶ z µ z ¨h¨r¸k¨'¼ z pvu ¯ { ¸ ³ ��½�� �-¡ �K¾ �>�>��� ���q�<�Q¿�¤Y½²À � ¥ ~TÁ# �*ÃCÄ��Q��¿ ��¡n� ��¾ � �K� ��¡ �Q� ¡k�*¦Å¦Æ� ����¥ � � �� �-� � � �ÈÇ � � � �Q� � � � ½ ¦ÆÉ � �>¦Å� ��Ê � Ê � �Q�#Ë � ¥�Ç̽²Í�� ~ � �q�-Îq�-�>¡nÎq�-� � Á �8� � � � � � à � �*Ï �*�*�*�*Ã��

� à ��Ð � ~�� � �-�*��� � � ��À �*¡ ¾ �!� �*Ñ���Ò ¡n�>¦Å�>¡ � t ©d©'¨ ³·zd{q|Ct ¸ pÓu { ¯ wyx ¸ ³>´ ©dµqÔ x ®�©'° z ®�¯ pÖÕ z ® z�¹Qz º*© x ®�×�ÔØ zd³ ¸ » ® xQ| º�� ���*¡k� �!� � �KÄ/� ¦ÅÉ-� Ê � ���q�*ÙK� �*Ú Ë��*�*�*�*Í É-É � Ï*Ï*Û � Ï*Û ���

��Ú*� Ç2��Ü �*� � �>� �*Ý@��Þ �*¡Ó¡k� �4� � ��¤ �*É-ß��!¡ �*�F��Ù � � ���>¡·�8� à �¢� �*�*¡ Êá� ~ � � �Q�K�*� ��â �*¡Ó¡ �Kãä� t u ¸·å�Ô »¶ z µ z ¨h¨r¸k¨¬æ�¸ { pÓu ° z µnç ³·è*}�é*} � ��É � ¡ Ê Á#~ ¤ � � Ï ��ê � ê �*Ç � ¾Y���*�*� Ï � ß Ê�Ê ÉÈë�ì�ì ��¾ �í�� ��¾ � � � � �*� � � � � � �Q�QÙ ì ¤Y�Q¿�Ê�ã �*¡n�qìYÁ:� Üî�

��Ï*� ½��kÄ/� � Ù ��¡ Ê �!�>¡�� � �>�q� �*�áÔ x ®�©d° z ®�¯ p�Õ z ® zÈzd{q| Ø ©d°T­ x ® z ®²¯r© { ¼ z ­*­*¯ {�ïð´ ©dµ Õ ¯ ³ ®�µk¯hª x ®�¸ | ¼£¸k°T©dµkº¼ z pÓu ¯ { ¸k�*� ��ß � Ç ��� �4� �>¡ Ê � Ê � �K�¢�*¥�� ��� � �!� � � ¤¬Ê � Ê � ÑT� � Ù �>¡ � � Ê � �*�*�*�*ñ��

� ñ � ¤�� � � � � ß ���4�K����Äò� ¤���½ ��¡ �QÊ ß¢� � � �*� ��Ä ¡ �K�4�*�²Ô x ®�©d° z ®�¯ p ¶ z µ z ¨h¨h¸k¨ Ø © | ¸·§O¸ { ¸kµ z ®²¯h© { © { Õ ¯ ³ ®�µk¯hªyóx ®�¸ | ¼£¸k°T©dµkº » º ³ ®�¸k° ³k}*�-�*¡k� �í� � �KÄ/� ¦ÅÉ�� Ê � ���Q�*ôÈ� �*� Ë��*�*�*ñ*Í�� É-É � �*�*Û � �*Ï ���

��Û*� � ��õ ¡k�-¦Åöq� ���*Þ÷� � � ��� � ��â � �Ö��ø�°T­*¨h¸k°T¸ { ® z ®�¯h© { © ´ å�Ô » ¶ z µ z ¨r¨h¸k¨¬æ�¸ { pÓu ° z µkç ³ ¯ {�ù ¯ ï u ¶�¸kµ ´ ©'µkó° zd{ p ¸·úq©dµk®²µ z'{ ��Ä�ÇT�<ûT�Ù �>¡ � � �Q�#�Q¿�½ �-� ¤ ì ¤ � Ç � �*�*�*� ��¡ �Q¾ �>�>��� ���q��� ~TÉ-¡Ó� �K� � � �*ñ*�*�*�*�*�*�¤ � � � �-� ��� ���-�>¡ Êá��� � ¾d�Q�*� êCÉ �

� � � � ��õ ¡k�-¦Åöq� ��� � ��â � �Ö� ù ¶�ú�ø�°T­*¨h¸k°Ì¸ { ® z ®�¯h© { © ´ Ô�ü Ø<ý*Õ ��õ ¡ �K��Ê �!�>¡ �  �*�*�*õ �>�q¡n���*¡k� � � � �*Ï ��*�*�*�*� ~ ��� �*É �Q� � ��� É�É ���*� � �*���

� � � � � � ��Þ � �!�!�*¤-��Þ �í¡k� � � � �@� � � �*Ò�� Ò � ��� �>��� �*Äò� ��� ��ÝY� � �¢����ø { ®�¸kµk­*µ�© p ¸ |*x µ z ¨ Ø ©d°T­*¯h¨ z ®�¯h© { © ´úq©dµk®�µ zd{ Õ ´ ©dµK¼£øþ¼ Õ�Õ ¯ ³ ®²µk¯rª x ®²¸ | óþ¼£¸k°T©dµkºð¼ z pvu ¯ { ¸ ³k} ¤ �-É-�>¡ ¾d� ¦ÆÉ-� Ê � ���òÿr� � � É�É � Ï*�*� � Ï Ã Ú �� � ��� �>�*É �Q� � ���*� Á � Á �QÙ¬���*�*� � �

� � ê � Ç2� Äò� � � � É-�>¡ � � �Ö�k¶ z µ z ¨h¨h¸k¨h¯ ³ ° z'{Q| «��*¸kµ �/©��/� Á#~ ¤FÝ � ¾ ß � � ¾ � ��� ��É � ¡ Ê Á#~ ¤ � �*� ��ê �*Ã*��ûT¾'Êá� �Q�>¡�*�*�*���

� �'� � ¤�� � � � � ß ���4�K���*Ò����7¾'� � � � ���*Äò� ¤���½ �>¡ �KÊ ß�� � � �*�£��Ä ¡ �K�4�*� » ¸k°Ì¯hó zdx ®�©d° z ®²¯ p ¶ z µ z ¨h¨h¸n¨h¯h± z ®�¯h© { © ´��{Q³ ®²µ x p ® x µ�¸ | ¼£¸ ³ uCØ © | ¸ ��³ ¯ {>ï Õ ©d° z ¯ { Õ ¸ p ©'°Ì­*© ³ ¯r®²¯h© { ��¤ �-�q¦Å� Ê�Ê �>� Ê�� ���*¡k� �!� � �QÄ�� ¦ÅÉ-� Ê �� ���·�

� � �*� ¤�� � � � � ß ���4�K���*� ��Ä ¡ �K�4���*� � À:� Ð Ù ��¡n� Ê�ÊÓ����*­*¨h©'¯r® z ®�¯h© { © ´È» º*°Tªy©d¨h¯ p ø {Ó´ ©'µk° z ®�¯h© { ¯ { ø { ®²¸kµn­*µn©dóp ¸ |*x µ z ¨ Õ ¸k­*¸ {Q| ¸ { p ¸qÔ {Qz ¨hº ³ ¯ ³ � ���*¡k� �!� � �KÄ/� ¦ÅÉ-� Ê � ���q�*Ù¬� �*� ˲�*�*ñ*ñ*Í É-É � �*� Û � �*� ñ��

� �*à � Ò���Ò � ��� �>��� �*Ñ���Ò ¡n�>¦Å�>¡ �²Ô x ®�©'° z ®�¯ pÖÕ z ® z�¹Qz º*© x ® ´ ©dµ ù ¯ ï u ¶�¸kµ ´ ©'µk° z'{ p ¸·úq©dµk®�µ z'{Q} ¤ �-É-�>¡k�¾d� ¦ÅÉ-� Ê � �¢��ÿh� Ï �*¤ � �:Ç �!� �q�K�*Ä ~ �*Ç � ¾ �>¦Å�Q�>¡ �*�*� Ï �

� � Ú*� Äò� Þ��vÒO� � � �Q� �!� Ç2� Üî�v¥��KÙ �>¡k¦Æ� ���>�C�v¤ ߢ¡��>�!�Q�>¡ � À:� ¥î�v¤¬Ê �>� � � � ¡ � �>� � Ð ��Ö�Q� � ��� t u ¸ ù ¯ ï u ¶�¸kµ ´ ©'µkó° zd{ p ¸·úq©dµk®²µ z'{�ùTz'{Q| ª�©d©dç¬���7½²Ý ��¡n� �4���*�*�*� Ú �

� � Ï*� Ñ���Ò ¡n�>¦Å�>¡ �²Ô x ®²©d° z ®²¯ pÖÕ z ® z�¹Qz º*© x ® ´ ©'µ Õ ¯ ³ ®�µk¯hª x ®�¸ | ¼£¸k°T©dµkº<¼ z pvu ¯ { ¸ ³ � �-ß Ç2��Ê ß¢� � � ���*� � ¾ �ÑT� � ÙK� �*ûT¾dÊ�� �Q�>¡ �*�*� Ï �*Ä/� � Ä � Ý��<� Ï � Ï �*� � ¤��

� �*ñ ��� ��¥ � �*� ��Ä ß�� �Ö� t u ¸ Õ z ® z Ô�¨h¯ ï�{ °Ì¸ { ®�¶ u z'³ ¸�¯ { Ø ©d°T­*¯h¨r¯ {>ï ¶�µ�© ï µ z ° ³>´ ©'µ Õ ¯ ³ ®�µk¯hª x ®�¸ | ó�¼ ¸k°Ìó©dµkº<¼ z pvu ¯ { ¸ ³ � � ���Q¿ ���*¡k� �!� � � � � � Ç � ��Ê ¡ ��Ä/� ¦ÅÉ-� Ê � ���q�*ô<���*ÃC�Ö� � � ~T� � � �4Ê �*�*�*�*� É-É � � �*à ��*� ���

Page 27: Automatic Data Distribution for CFD Application on

��

� � Û*� ~ � � ��¥ �!¦ �*� � ¤-��¥ �*¦ �²¼ z �*¯h°T¯h±d¯ {>ï ¶ z µ z ¨h¨h¸k¨h¯ ³ ° z'{Q| ¼ ¯ { ¯h°T¯r±'¯ {�ï#» º { pvu µ�© { ¯h± z ®�¯h© { �O¯h® uÔ ´��î{ ¸·¶ z µk®�¯h®�¯h© {q³k}*�-�*¡Ó� �!� � �KÄ/� ¦ÆÉ-� Ê � ���q�*Ù¬� �*Ú Ë��*�*�*�*Ͳ� É-É � Ú*Ú*Ï � Ú*Û*Ï �

� �*� � Ç2� � � ��� � �>¡k¦ �Q� � �ÓÜ � � �>¡ àá�>� �áÔ x ®�©'° z ®�¯ p » ¸k¨r¸ p ®�¯h© { © ´ Õ º {qz °T¯ p�Õ z ® z ¶ z µk®�¯h®�¯h© { ¯ {�ï�» pÓu ¸k°T¸ ³'´ ©'µÕ ¯ ³ ®²µk¯rª x ®²¸ | ó�¼£¸k°T©dµkº<¼ x ¨h®�¯ p ©d°T­ x ®�¸kµ ³ ��½�� �-¡ �K¾ �>���@� ���Q�È�K¿¢Ê ߢ� �*Ê ß#� � ¡kö � ß � É �Q�#¥ � � �� �-� � � � � � � Ä/� ¦ÆÉ-� � �>¡ �·¿�� ¡-�-�*¡Ó� �!� � �*Ä/� ¦ÅÉ-� Ê � ���q�yÄ/�K� ��¦Å�Q� ���yûTÞ:� ~Ì� � � ��ʬ�*�*� Ï �y¥ Á Ä/¤Y�Ù¬��� ê Ã*Ã*� É-É ��Ã*� � � Ú ê ñ*�*¤ É-¡Ó� ��� �>¡ ô �>¡ � � �Q�*�*�*�*ñ��

� �*� � Ç2� � � �-� � �>¡Ó¦ �K� Ð � � ��Þ:� � � � �<½²ô¢� � ��Ü � � �>¡ àá�>� ��ø { ®²¸kµk­*µ�© p ¸ |*x µ z ¨dÔ�µnµ z ºCüÖ¸ | ¯ ³ ®�µk¯hª x ®�¯h© { Õ z ® z óúq¨r©��ÆÔ {qz ¨hº ³ ¯ ³k} �*Ê ß#� � ¡kö � ß � É �Q�#¥ � ��� �-� � � � � � � Ä/� ¦ÅÉ-� � �>¡ �<¿²� ¡ð�-�*¡Ó� �!� � �KÄ/� ¦ÆÉ-� Ê � ���Q�¤ � � � �Q� � �*Ä ~ � ~Ì� � � ��Ê�� � � ê �*�*�*�*ñ��

��� ê � Ý@� Þ�� �-� �!� �í�*¦ � Ç�� ¤-��Ä ß��*� �4� �>� ��Ô Õ ¯ z ï © {qz ¨¬úQ©'µk°£© ´îzd{ ø�°T­*¨h¯ p ¯h®*Ô�­*­*µ�©��*¯h° z ®�¸�ú z p ®�©'µk¯h± z ®²¯r© {Ô�¨ ï ©dµk¯h® u °�� � � �-¡ � � �K�Q¿�Ä/� ¦ÅÉ-� Ê � Ê � �K� � � ��ß�� � � ¾'���*ô��Q��� � �*� É � � ê Ã Û �*�*� Û*Ï �

��� � ��� � � ¥î� �-���*� Êv� t ©d©d¨ ³>´ ©dµ ù ¯ ï u ¶�¸kµ ´ ©dµk° zd{ p ¸·úq©dµk®�µ z'{ ×�Ô »Qx µ��*¸kºy��¥ Á Ä/¤Y�*ÙK���d�*à � �*�*�*�*ñ*� É-É ���*Ã Ú �� Ï ���

���*�*� ~ ��¤Y¾ ß�¡k� à Ù �>¡ � t u ¸k©'µkºC© ´î¹ ¯ { ¸ z µ zd{q| ø { ®�¸ ï ¸kµ·¶�µ�© ï µ z °T°Ì¯ {>ï � � � �8� � �>��� ¤¬�K���4�*�*�*�*�*� É-É � �*Ï ñ ��*Ï ���

��� à � � � Ð � � �Q�!¿��*� � ¤���¥ �*¦ �²Ô Õ z ® zî¹ © p z ¨h¯h®�ºC«T­*®�¯h°T¯h±d¯ {�ï Ô�¨ ï ©'µk¯r® u °���½�� ��¡ �K¾ ���>��� ���Q�È�K¿¢Ê ß��¤¬½�À � ¥ ~TÁ# �*�CÄ/�K��¿ �>¡�� ��¾ � �K� ��¡ �K� ¡k�*¦Æ¦Å� ����¥ � ��� �-� � � Ç � � � �q� � � � ½ ¦ÅÉ � ��¦Æ� ��Ê � Ê � �Q���� � � � �*�*�*�*� É-É ��à ê*� Ú*Ú �

Page 28: Automatic Data Distribution for CFD Application on

���

�������� "!$#%��&'!�(*),+-+-./��02143*��5%&65�)879�:+-.4&'!; =<>!�?@!A13B�:<DCE3*!;#6�:0:<-#%��+F&'!;GH5%&'3�I������� =!J?K5%&'LM!N1O?P<-3B�P3B�:!��),3B��5�&6Q*C�RS3�5T!;0�C�)U&'!V#6+D��&'<>3*.45%(WG,&'!NC�!;0�3���3B<X5�0P��0213B!;#��:0:<>#%��+Y��#6#6),&���#6.UI���3���LM!JGU!;&6C�5�0���+W&'!NC�G85%02CZ<-[\ <-+><-3B.4(5�&]3B�:!_^9)H��+><-3B.`5%(�3B�:<DCa1b5%#�),cd!�0:3�Ifegih�jSk9lnm�o

pJqsr lto

gih�jSk9lnm�opJqsr lto

Ý�ã:� ¡Ó� Ù �!� ã ��¡ �¦Å� ��Ê�� � �q�Ö�

~ ¿�Ê �>¡·�*É-É-¡ �KÙ � �!�� ��� � �Q� Á#~ ¤� �>É � ¡ Ê � �-¦Å�q��¡ � uVvAvAwDx�y lnm:o{zszszszszszszszszszszszszszszszszszszszszszszszszszszszsz