• Tidak ada hasil yang ditemukan

PPT スライド 1

N/A
N/A
Protected

Academic year: 2024

Membagikan "PPT スライド 1"

Copied!
7
0
0

Teks penuh

(1)

MPI を使った加算 

齋藤グループ 小林直樹

2003.5.16

(2)

プロセス

0

プロセス

1

プロセス

2

プロセス

3

配列 A

2500 2501 5000 5001 7500 7501 10000

1

部分和

SUM

部分和

SUM

部分和

SUM

部分和

SUM

総和

GSUM

概念図

(3)

program summation include ‘mpif.h’

integer myrank, tnode, error DIMENSION A(10000)

call mpi_init(error)

call mpi_comm_rank(MPI_COMM_WORLD, myrank, error) call mpi_comm_size(MPI_COMM_WORLD, tnode, error)

MPI プログラム (1 / 3)

mpif.h

MPI

で利用する定数などの型宣言がなされている定義ファイル

MPI_INIT

MPI

環境の初期化

MPI_COMM_RANK

: プロセス情報取得

MPI_COMM_SIZE

: プロセス数情報取得する 

(4)

DO 10 I = 1, 10000 A(I) = real(I)

10 CONTINUE

lb = 10000 / tnode

lc = mod(10000,tnode) if(myrank+1.le.lc) then

is = myrank*lb +myrank +1 ie = is + lb

else

is = myrank*lb+lc+1 ie = is + lb - 1

end if

MPI プログラム (2 / 3)

myrank=0

is=0x2500+0+1=1 ie=1+2500-1=2500 myrank=1

is=1x2500+0+1=2501 ie=2501+2500-1=5000 myrank=2

is=5001, ie=7500 myrank=3

tnode=4

myrank=0,1,2,3 tnode=4

myrank=0,1,2,3

(5)

SUM = 0.0

DO 20 I = is, ie

SUM = SUM + A(I) 20 CONTINUE

If( myrank .eq. 0) GSUM = 0

call MPI_REDUCE(SUM, GSUM, 1, MPI_REAL, MPI_SUM, 0, & MPI_COMM_WORLD, error)

If( myrank .eq. 0) write(*,*) GSUM call mpi_finalize(error)

stop end

MPI プログラム (3 / 3)

各プロセスで実行

MPI_REDUCE

: 総和、最大値、最小値などを求める

MPI_FINALIZE

MPI

環境を終了する 

(6)

MPI_REDUCE

SUBROUTINE MPI_REDUCE(SENDBUF,RECVBUF,COUNT

       

,DATATYPE,OP,ROOT,COMM,IERROR)

SENDBUF    送信する変数、配列名の先頭アドレス RECVBUF    受信する変数、配列名の先頭アドレス COUNT     送信するデータの数

DATATYPE   送信するデータの型 OP         演算

ROOT       受信元のプロセスのランク

COMM      コミュニケータ(通信グループの識別子)

IERROR     戻り値(エラーコード)

MPI DATATYPE Fortran DATATYPE  MPI_INTEGER   INTEGER

 MPI_REAL   REAL

 

MPI_DOUBLE_PRECISION   DOUBLE PRECISION  MPI_COMPLEX   COMPLEX  MPI_LOGICAL   LOGICAL

 MPI_CHARACTER   CHARACTER(1)

OP の値 意味

MIP_MAX 最大値 MIP_MIN 最小値 MIP_SUMMIP_PRODMIP_LAND 論理積

MIP_BAND ビット演算の 積

MIP_LOR 論理和

MIP_BOR ビット演算の 和

MIP_LXOR 排他的論理和 MIP_BXOR ビット演算の

排他的論理和 MIP_MAXLOC 最大値と位置

(7)

実行結果

[kobayasi@tube sum]# mpirun -np 1 ./a.out 5.000500E+07

[kobayasi@tube sum]# mpirun -np 2 ./a.out 5.000500E+07

[kobayasi@tube sum]# mpirun -np 3 ./a.out 5.000500E+07

[kobayasi@tube sum]# mpirun -np 4 ./a.out 5.000500E+07

[kobayasi@tube sum]# mpirun -np 5 ./a.out 5.000500E+07

[kobayasi@tube sum]# mpirun -np 6 ./a.out 5.000500E+07

[kobayasi@tube sum]# mpirun -np 7 ./a.out 5.000500E+07

[kobayasi@tube sum]# mpirun -np 8 ./a.out 5.000500E+07

[kobayasi@tube sum]# mpirun -np 9 ./a.out 5.000500E+07

[kobayasi@tube sum]# mpirun -np 10 ./a.out 5.000500E+07

Referensi

Dokumen terkait

4 社会的行為主体としての活動のあり方 -新しい実践のための構想図 全人的(ホリス ティック)学び プロジェクト活動 PBL インクルーシブ(異年 齢、異能力、異背景) 協働性 (共に活動する 学び) 個別性 (学びは一人ひ とり異なる)... 4 社会的行為主体としての活動のあり方 - 学びの構造と展開 想像・創造 どのような社会をつくるのか

ネットワーク通信における各層の仕事 送信時 受信時 アプリケーション層 TCP/IP で扱える データ形式へ変換 アプリケーション用の aデータ形式へ変換 トランスポート層 パケット分割 宛先ポート・パケット 順序情報等の付加 パケット結合 ポートへデータ転送 インターネット層 パケット通信経路の 決定 送信者・受信者情報 の復元 ネットワーク

定理 1: コーシーの判定条件 数列 {an}が収束するための必要十分条件は, 任意の正数ε に対してある自然数N をとると, |am−an|< ε n, m≥N 5 が成り立つことである.. 解説 数列,

Σは正定値対称行列なので、線形代数の対角化に関する定理から、直交行列P = pijと対角成分がすべ て正の対角行列D= λijがとれて、P′ΣP =Dとできる。ここで、y= y1,... , Xp′について、その共分散行列VXは非負定値non-negative definiteとなる。 証明:

4.採用側が新規学卒者に求める 能力 ■社会人基礎力の能力要素 分 類 能力要素 内 容 主体性 物事に進んで取り組む力 働きかけ力 他人に働きかけ、巻き込む力 実行力 目標を設定し、確実に行動する力 課題発見力 現状を分析し、目的や課題を明らかにする力 計画力 課題の解決に向けたプロセスを明らかし、準備する力 創造力 新しい価値を生み出す力 発信力

5 / 6 ・希望する検査項目(疾患名、検査コード番号、検体数) ・医療機関情報 ・遺伝カウンセリングを担当する臨床遺伝専門医 ・請求書送付先情報 ・匿名化ID 12 検体を医療機関から衛生検査所他の衛生検査所に測定を依頼する場合に あたっては、当該衛生検査所等まで搬送するのに要する時間 発送日の翌日到着を原則とする。

12 低温工学 九州・西日本支部 講演会2008/4/25 月周回衛星かぐや搭載冷凍機 ゲルマニウム半導体( Ge )をスターリング冷凍機 でマイナス180℃以下に冷却し、ガンマ線を測定 することで、月面で発生するさまざまなエネル ギーのガンマ線を高精度で識別でき、 10 種類以 上の元素に関して月面存在量を測定。 γ(ガンマ)線分光計 ホームページ

ネットワーク通信における各層の仕事 送信時 受信時 アプリケーション層 TCP/IP で扱える データ形式へ変換 アプリケーション用の aデータ形式へ変換 トランスポート層 パケット分割 宛先ポート・パケット 順序情報等の付加 パケット結合 ポートへデータ転送 インターネット層 パケット通信経路の 決定 送信者・受信者情報 の復元 ネットワーク