XcalableMP / Specification

Specification of XcalableMP
0 stars 0 forks source link

gmove in/outの拡張 #47

Open h-murai opened 8 years ago

h-murai commented 8 years ago

gmove inで右辺が非分散のとき、gmove outで左辺が非分散のとき、その動作を定義できない(現在のOmniではエラーになる)。

!$xmp gmove in
G(:) = L(:)

!$xmp gmove out
L(:) = G(:)

例えば、以下のように、on節で、対象とする非分散データの位置を指定するのはどうか?

!$xmp gmove in on p(3)
G(:) = L(:)

!$xmp gmove out on P(2)
L(:) = G(:)
h-murai commented 7 years ago

以下のように、in節とout節自体が引数をとることにする。省略時には、

とする(後者の場合の動作は、in/outでないgmoveのそれに準ずる)。

!$xmp gmove in p(3)
G(:) = L(:)

!$xmp gmove out P(2)
L(:) = G(:)
h-murai commented 7 years ago

in節またはout節の引数が指定されている場合、両辺とも非分散データということもあり得る?

!$xmp gmove in p(3)
L1(:) = L2(:)

!$xmp gmove out p(2)
L1(:) = L2(:)