• 追加された行はこの色です。
  • 削除された行はこの色です。
// 現在(&lastmod;)作成中です。
// 既に書いている内容も&color(#ff0000){大幅に変わる};可能性が高いので、注意。


* 担当教員 [#oa368592]
谷口 隆晴

* 演習日 [#d56788cd]
- 2012.05.24
- 2012.05.31
- 2015.05.21
- 2015.05.28

* 概要と達成目標 [#pc607f98]
OpenMPを用いた,共有メモリ型並列計算機上のプログラミングの基礎を学ぶ.

- &color(red){2回めの宿題のプログラムは /tmp/openmp2/pi2.f90 においてあります.};
* 講義資料 [#z2e2e767]
- 準備中
//- 2014/05/29 講義資料 &attachref(lecture20140529.pdf);
//- 2014/06/05 講義資料 &attachref(lecture20140605.pdf);

* 講義内容 [#o4c16be1]
- 第1回目
-- Hello World の並列化と並列計算機上での実行方法
-- Do ループの並列化
-- 配列代入の並列化
-- 共有変数とプライベート変数
-- リダクション演算
- 第2回目
-- Do ループ並列化時のスレッド割り当て方法の指定
-- 各スレッドに異なる仕事を割り当てる方法
-- 単独スレッドでの実行
-- スレッドの同期と制御
//* Xサーバの有効にしてログインする方法 [#bb240a5e]
//+ すべてのプログラム → Xming → Xming
//+ Tera Term を起動して最初のダイアログで「キャンセル」
//+ Tera Term で「設定」→「SSH転送」→「リモートの(X)アプリケーションをローカルのXサーバに表示する」にチェック
//+ 「ファイル」→「新しい接続」でログイン

* 計算機環境 [#d7a9ef31]
この演習では,いつもの scalar マシンではなく別のマシンを使います.
- このマシンへは RSA-公開鍵認証でログインします.
-- 1回目(5月24日)に鍵の転送を行います.
-- 5月24日・31日の授業中のみ,パスワード認証で入れます.
-- 5月24日は,授業時間中のみ使用可能です.
//* アンケート [#j36d6593]
//今日の講義(6月5日)はどうでしたか?1人1回,&color(red){''必ず''};回答して下さい.

//&color(red){【重要】}; 5月26日の授業を休んでしまった方は,以下の手順で公開鍵//(authorized_keys)をメールで送って下さい.
//- scalar マシンからファイル .ssh/autorized_keys を手元のPCにコピー.
//難易度
//#vote(簡単すぎた[0], ちょうどよかった[8], 少し難しかった[2], 難しすぎた[0])

// $ scp ユーザ名@scalar.scitec.kobe-u.ac.jp:.ssh/autorized_keys コピー先のパス名
//分量
//#vote(少ない[1], ちょうどよい[8], 少し多い[2], 多すぎる[0])

//上のコマンドでうまくいかない場合は,WinSCP を使うのが簡単です.WinSCP の使い方は [[ログインについて]] を参照して下さい.
//今日の講義(5月29日)はどうでしたか?1人1回,&color(red){''必ず''};回答して下さい.

//- このファイルを谷口までメールで送信(メールアドレスは講義資料に書いてあります).
//難易度
//#vote(簡単すぎた[0], ちょうどよかった[16], 少し難しかった[2], 難しすぎた[0])

* 講義資料: [#n8369d61]
- 5月24日分: &attachref(openmp1_yaguchi_2012.pdf);
- 6月31日分: &attachref(openmp2_yaguchi_2012.pdf);
//分量
//#vote(少ない[0], ちょうどよい[16], 少し多い[2], 多すぎる[0])

* gfortran でのコンパイル方法 [#o90ba0fe]
コンパイラとして gfortran を使いたい場合は

 gfortran -fopenmp (ソースファイル名)

のようにするとコンパイルできます.

* アンケート [#j36d6593]
//次回の授業開始時までにお願い致します.
- 2回目の講義(5月31日)はどうでしたか? 1人1回,&color(red){''次週までに,必ず''};回答して下さい.

-- 難易度
#vote(簡単すぎた[1], ちょうどよかった[2], 少し難しかった[1], 難しすぎた[4])

-- 分量
#vote(少ない[0], ちょうどよい[1], 少し多い[1], 多すぎる[4])

- 1回目の講義(5月24日)はどうでしたか? 

-- 難易度
#vote(簡単すぎた[1], ちょうどよかった[8], 少し難しかった[2], 難しすぎた[0])

-- 分量
#vote(少ない[1], ちょうどよい[5], 少し多い[8], 多すぎる[0])