山内の授業のページ

アクセス数 1265  このページの最終更新 2014-07-04 (金) 10:00:32

14年度春学期 並列分散処理 

授業のテーマ: 並列処理技術は、コンピュータ処理速度の限界を打破するものと考えられている。本授業では、並列処理のための基本的な考え方を理解し、今後必要となる並列分散プログラム作成の技術を習得する。

到達目標: 本授業では次の点を理解し、説明できるようにする。

授業の進め方:
毎回内容に従って予習を行い、所定の課題のレポートを作成・提出する。
参考記事 pthreadについて
参考ページ pthread programming
スレッドのコーティングサンプル

授業スケジュール:

回数日程 テーマ  スライドショー / 同PDFファイル  
14/15授業概要
授業の進め方
授業の目標file1-0_授業の目標.pdffile次回への課題1
1)ムーアの法則を自分で描こう
2)「並列でうんと速い」の例を探そう
24/22並列の必要性
課題のやり方の解説

並列の必要性file1-1_並列の必要性.pdf 
file次回への課題2
1)プログラム/アルゴリズムを並列にしてみよう〜何が必要か
35/13並列にするには 〜 並列の例file次回への課題3
1)様々な並列・分散を集めてみよう
それを自分なりの基準で整理してみよう
45/20いろいろな並列・いろいろな分散
 並列: マイクロレベル、プログラムレベル、ジョブレベル
 分散: 並列と分散の違い、ネット分散だとしてどうやって同時に扱うか?
並列分散処理の基礎概念file2-1_並列分散の基礎概念.pdf
プログラミングモデルとシステム構成法file3-1_プログラミングモデルとシステム構成法.pdf
並列分散処理の歴史file3-2_並列分散処理の歴史.pdf
file次回への課題4
1)OpenMPの本を読んで、ループ並列の原理と書き方を整理してみよう
55/27ループ並列もしくはデータ並列ループ並列処理file4-1_ループ並列処理.pdf
file次回への課題5
1)アムダールの法則について調査してみよう
  直列にならざるを得ないところは何だろうか
66/03アムダールの法則
 性能の導出
 直列にならざるを得ないところ
アムダールの法則file4-2_アムダールの法則.pdffile次回への課題6
1)x1+x2+...+x10の並列化について考える
2)ダイナミックプログラミングのアルゴリズムを見て、並列化を考える
76/10データ依存
動作原理から依存性について考える
file次回への課題7
1)OpenMPの本を読んでループを並列化し、サーバー上で実際に試してみる
    (台形則プログラム)
2)速度向上率を計算してグラフ化する
86/17ループの自動並列化(OpenMPを試してみる)
課題として試した結果を発表し合う
OpenMPの教科書、OpenMPについて書いてあるサイトfile次回への課題8
1)OSの教科書を読み直して、同期のプリミティブと動作原理を整理してみよう
2)デッドロックについて、現象と対策を整理してみよう
96/24OSで習った並行・同期・デッドロックを思い出そう OS第4回より同期・排他制御fileOS第4回より4-2_同期・排他制御.pdf
OS第4回より排他制御の仕組
fileOS第4回より4-3_排他制御の仕組.pdfOS第4回よりハイレベルの排他制御
fileOS第4回より4-4_ハイレベルの排他制御.pdf
OS第4回よりデッドロックfileOS第4回より4-5_デッドロック.pdf
OS第4回よりプロセス間通信fileOS第4回より4-6_プロセス間通信.pdf

慶應河野先生のOS授業スライド
file次回への課題9
1)pthreadを用いた並列プログラムを作ってサーバー上で試してみよう
   (2つのプロセスによるprintf)
2)同期(排他)をし、それによってデッドロックを起こしてみよう
107/01スレッドモデルによる並列記述スレッドモデルと同期file9-1_スレッドモデルと同期.pdffile次回への課題10
1)ハードウェアの教科書を読み直して、パイプラインの動作原理を整理する
2)パイプラインの処理性能(速度向上)のモデル式を見直す
3)パイプラインの「ストール」について整理する(種類・原因・動作)
117/08マイクロレベルの並列
 〜 パイプライン・性能・ハザードの原因
fileアーキテクチャの授業のスライド
fileアーキテクチャの授業の確認資料
file次回への課題11
1)ソートのアルゴリズムについて並列化を考える 
  (1)バブルソート (2)クイックソート (3)バイトニックソート);
127/15アルゴリズムと並列処理
例:ソートアルゴリズム
「並列コンピューティング技法」8章file次回への課題12
1)クラウド上での分散検索について調べてみよう
137/18(金)アルゴリズムと分散処理
例:検索アルゴリズム
「並列コンピューティング技法」7章
MapReduceによる大規模データ処理
Hadoop MapReduce によるビッグ・データ分析
検索エンジンはいかにして動くのか? 第12回 索引の分散
実践! 「MapReduceでテキストマイニング」徹底解説
講義全体の内容を復習し、まとめよう
147/22整理とまとめ 次回への課題は無し

教科書:
  C/C++プログラマーのためのOpenMP並列プログラミング」(菅原清文著、カットシステム)
参考書:
 ◆屮灰鵐團紂璽織◆璽テクチャ」 (内田啓一郎、小柳滋著、オーム社)
 「並列コンピューティング技法(実践マルチコア/マルチスレッドプログラミング)」 (オライリージャパン)
 ぁ嵎体鷭萢技術」 (笠原博徳著、コロナ者)
 ァOpenMP入門マルチコアCPU時代の並列プログラミング」(北山洋幸著、秀和システム)
 Α嵜涓鬟灰鵐團紂璽織◆璽テクチャ入門第2版」 (堀桂太郎著、森北出版)
 追加 「Pthreadsプログラミング」(Bradford Nicholsら著, 榊正憲訳, オライリージャパン)

参考サイト
 HPC/並列プログラミングポータル

成績評価方法:
    平常点(授業内の小テスト等)60%、期末試験40%。  それぞれの単元での目標到達度を問う
授業ホームページ: http://pepper.is.sci.toho-u.ac.jp をアクセス
   ⇒ 左欄メニューの「授業のページ」 ⇒ 「2014年度授業 春 並列分散処理」
   配布物はこのページあたりから取れるようにしておきます。
山内へのコンタクト: 弦羇曖騎4541室、047-472-1176、メール:yamanouc at is.sci.toho-u.ac.jp (atを@に置き換えること)
スケジュール: 授業枠はpepper.is.sci.toho-u.ac.jp、 通年スケジュールはwww.yy.is.sci.toho-u.ac.jpの左メニューで「カレンダー」


添付ファイル: filepp_11_課題.pdf 140件 [詳細] filepp_12_課題.pdf 197件 [詳細] filepp_10_課題.pdf 176件 [詳細] file9-1_スレッドモデルと同期.pdf 338件 [詳細] filepp_9_課題.pdf 185件 [詳細] filepp_8_課題.pdf 200件 [詳細] filepp_7_課題.pdf 225件 [詳細] filepp_6_課題.pdf 140件 [詳細] filepp_5_課題.pdf 141件 [詳細] filepp_4_課題.pdf 185件 [詳細] filepp_3_課題.pdf 157件 [詳細] filepp_2_課題.pdf 180件 [詳細] filepp_1_課題.pdf 174件 [詳細] filepp_0_課題.pdf 115件 [詳細]

トップ   編集 凍結 差分 バックアップ 添付 複製 名前変更 リロード   新規 一覧 単語検索 最終更新   ヘルプ   最終更新のRSS
Last-modified: 2014-07-04 (金) 10:00:32 (1084d)