OpenMPによる並列プログラミングと数値計算法

OpenMPによる並列プログラミングと数値計算法

著者名 牛島 省
発行元 丸善出版
発行年月日 2006年05月
判型 A5 210×148
ページ数 160ページ
ISBN 978-4-621-07717-7
Cコード 3055
NDCコード 007
ジャンル 電気・電子・情報工学 >  情報・コンピュータ >  言語・プログラミング

内容紹介

共有メモリシステムにおける業界標準の並列計算プログラミング仕様 ― OpenMPに関する待望の書。豊富なプログラム例により、基本から本格的な数値計算への応用例までわかりやすく解説。逐次計算プログラムにわずかな変更を加えるだけで並列化が行える、OpenMPの「つぼ」を理解できる。

目次

1 OpenMPと並列計算
 1.1 OpenMPによる簡単な並列プログラムの例
 1.2 並列処理の基本的な分類
 1.3 分散,共有メモリシステム
 1.4 プロセス並列とスレッド並列
 1.5 OpenMPとMPI
2 OpenMPによるプログラミング
 2.1 OpenMPの基本形と本書で用いる言語形式
 2.2 パラレル構文を用いる並列演算
  2.2.1 パラレル構文
  2.2.2 構文とリージョン,静的および動的範囲
  2.2.3 並列のネスト
  2.2.4 パラレルリージョン内のスレッド数
  2.2.5 本書で用いる並列化の条件
  2.2.6 パラレルリージョン内のワークシェアリング
  2.2.7 共有属性
 2.3 ワークシェアリング構文
  2.3.1 ワークシェアリング構文に共通する規約
  2.3.2 ループ構文
  2.3.3 sections構文
  2.3.4 single構文
  2.3.5 workshare構文
  2.3.6 静的範囲外に置かれたワークシェアリング構文
  2.3.7 スレッドプライベート指示文
 2.4 スレッドの同期と制御
  2.4.1 critical構文
  2.4.2 atomic指示文
  2.4.3 barrier指示文
  2.4.4 ordered構文
  2.4.5 master構文
  2.4.6 flush指示文
 2.5 結合ワークシェアリング構文
  2.5.1 パラレルループ構文
  2.5.2 parallel sections構文
  2.5.3 parallel workshare構文
 2.6 データ依存性の除去
  2.6.1 データ依存性が発生する例
  2.6.2 データ依存性のパターン
  2.6.3 フロー依存性の除去
  2.6.4 多重ループのデータ依存性
  2.6.5 許容されるデータ依存性
  2.6.6 動的範囲におけるデータ依存性
3 OpenMPによる並列数値計算
 3.1 行列のLU分解と小規模な連立1次方程式の解法
  3.1.1 LU分解の基礎
  3.1.2 配列メモリを節約するLU分解
  3.1.3 部分ピボット選択を利用するLU分解
  3.1.4 OpenMPによるLU分解の並列化
 3.2 有限要素法によるラプラス方程式の解法
  3.2.1 有限要素法による離散化式の導出
  3.2.2 element-by-element法による数値計算
 3.3 差分法によるラプラス方程式の解法
  3.3.1 差分法による離散化式の導出
  3.3.2 GMRES法による連立1次方程式の解法
  3.3.3 ラプラス方程式の離散化式の並列計算
 3.4 双曲型方程式の陽的解法
  3.4.1 特性曲線法による浅水流方程式の計算
  3.4.2 プログラムとOpenMPによる並列化
 3.5 スペクトル法によるバーガーズ方程式の解法
  3.5.1 スペクトル法によるバーガーズ方程式の解法
  3.5.2 高速フーリエ変換 (FFT)
  3.5.2 OpenMPによるFFTの並列化
  3.5.4 FFTを用いるバーガーズ方程式の数値計算
付録
 A.1 parallel指示文とワークシェアリング指示文
 A.2 parallel指示文とワークシェアリング指示文につく節
 A.3 結合ワークシェアリング指示文
 A.4 結合ワークシェアリング指示文に付随する節
 A.5 同期のための指示文
 A.6 実行時ルーチン (Fortran)
 A.7 環境変数
 A.8 並列計算の効率に関する指標・法則等
  A.8.1 スピードアップ
  A.8.2 効率
  A.8.3 アムダールの法則
  A.8.4 グスタフソンの法則

定価:本体3,800円+税
在庫:在庫あり