サブロウ丸

サブロウ丸

主にプログラミングと数学

MPI_Datatypeのサイズを取得する

MPI_Datatypeのデータサイズは実行環境に依存しますが、その環境のデータサイズどうなのか? というのを調べる関数が用意されています。 MPI_Type_size(MPI_Datatype datatype, int * size); でsize変数にデータサイズが格納されます。(参考: MPI_Type_size(MPI_Datatype datatype, int *size ) function)

ざっとデータサイズの一覧を表示させるプログラムを作成しました。私の環境での実行結果を下に付け加えています。てか、MPI_DOUBLE_INTなんてタイプがあったんですねぇ。

MPI_CHAR 1
MPI_SHORT 2
MPI_INT 4
MPI_LONG 8
MPI_LONG_LONG 8
MPI_FLOAT 4
MPI_DOUBLE 8
MPI_LONG_DOUBLE 16
MPI_UNSIGNED_CHAR 1
MPI_UNSIGNED_SHORT 2
MPI_UNSIGNED 4
MPI_UNSIGNED_LONG 8
MPI_UNSIGNED_LONG_LONG 8
MPI_INT8_T 1
MPI_INT16_T 2
MPI_INT32_T 4
MPI_INT64_T 8
MPI_UINT8_T 1
MPI_UINT16_T 2
MPI_UINT32_T 4
MPI_UINT64_T 8
MPI_2INT 8
MPI_SHORT_INT 6
MPI_LONG_INT 12
MPI_FLOAT_INT 8
MPI_DOUBLE_INT 12
MPI_LONG_DOUBLE_INT 20