XcalableMP / Specification

Specification of XcalableMP
0 stars 0 forks source link

[C] Coarrayの同期について #23

Open mnakao opened 8 years ago

mnakao commented 8 years ago

報告者:中尾

  1. sync_image
  2. stat=, errmsg= これについては、関数にするか、pragmaにするかはもう少し議論。

sync_all, sync_memory, sync_imagesについて、関数にするか、指示文にするかを議論するための資料を添付します。

Sync201210.pdf

mnakao commented 8 years ago

皆様 中尾です。

XMP-Cにおける新しいCoarrayの宣言方法と同期のための関数を記述した仕様書を、現仕様書をベースに作成しました。

変更箇所を抜き出したものを、下記リンクからダウンロードできます。

コメントなどありましたら、よろしくお願いします。 sync.pdf

mnakao commented 8 years ago

Coarrayに関係する同期の文は、下記の5種類があります。

xmp_sync_image()はxmp_sync_images()で1ノードを指定すれば代わりができるので、削除したいです。 xmp_sync_images_all()についても、同様にxmp_sync_images()で全ノードを指定すれば代わりができるので、削除したいです。

なので、まとめると、下記のようになります。

さらに、もう一つ進めて。これらはFortranではstatementなので、 STAT=とERRMSG=というspecifierを追加できる。 既存仕様だと、ERRMSG=が返ってこないので、なんとかする必要がある。 単純に引数を増やすと、STAT=もしくはERRMSG=の片方だけが欲しい場合に対応できない。 そこで、#44のように、_s、_e、_seという修飾子を関数の最後に追加したい。xmp_sync_allの例は下記の通り。