イメージ数を制御する

このステップでは、Co-Array Fortran アプリケーションで作成されるイメージの数を制御します。

イメージの数を制御する方法は 2 つあります。1 つ目は、-coarray-num-images=N コンパイラー・オプションを使用してアプリケーションをコンパイルする方法です (N はイメージ数)。このオプションは、実行時にアプリケーションで作成されるイメージの数を設定します。例えば、-coarray-num-images=2 オプションは hello_image.f90 プログラムのイメージを 2 つに限定します。

ifort -coarray -coarray-num-images=2 hello_image.f90 -o hello_image

Hello from image     2 out of    2  total images
Hello from image     1 out of    2  total images

2 つ目は、環境変数 FOR_COARRAY_NUM_IMAGES にスポーンするイメージの数を設定する方法です。

例えば、hello_image.f90-coarray-num-images オプションなしで再コンパイルします。実行ファイル hello_image を実行する前に、環境変数 FOR_COARRAY_NUM_IMAGES に、プログラムの実行時に作成するイメージの数を設定します。

bash シェルでの環境変数設定コマンド: export FOR_COARRAY_NUM_IMAGES=4

csh/tcsh シェルでの環境変数設定コマンド: setenv FOR_COARRAY_NUM_IMAGES 4

bash シェルを使用する例は以下のとおりです。

ifort -coarray hello_image.f90 -o hello_image

export FOR_COARRAY_NUM_IMAGES=4

Hello from image     1 out of      4  total images
Hello from image     3 out of      4  total images
Hello from image     2 out of      4  total images
Hello from image     4 out of      4  total images

export FOR_COARRAY_NUM_IMAGES=3

Hello from image     3 out of      3  total images
Hello from image     2 out of      3  total images
Hello from image     1 out of      3  total images

FOR_COARRAY_NUM_IMAGES=N を設定すると、-coarray_num_images コンパイラー・オプションよりも優先されます。

これで、このチュートリアルは終了です。