アクセスランキング

01位
Rプログラミング本格入門―達人データサイエンティストへの道― 
02位
統計的自然言語処理の基礎
03位
カメムシの母が子に伝える共生細菌―必須相利共生の多様性と進化― 
04位
速習 強化学習―基礎理論とアルゴリズム― 
05位
グラフ理論とフレームワークの幾何
  • ニュースメール
  • アフターサービス
  • 教科書献本のご案内
  • facebook
  • 構造計画研究所

計算科学のための並列計算―大規模計算への第一歩― 

書籍情報
シリーズ名計算科学講座 全10巻 第1部 計算科学の基盤 【4】巻
ISBN978-4-320-12269-7
判型A5 
ページ数240ページ
発行年月2014年07月
本体価格3,800円
計算科学のための並列計算 書影
計算科学のための並列計算

 計算科学の主たる対象は自然現象や工学的に作り出された現実であり,解析したいデータは,現実世界の研究対象に依存する。このため,計算機の種類や計算機内部での計算方法を考え,必要な解析データは容易に得られるのか,各種解析方法はどのくらいの計算時間や記憶容量を必要とするのかを知って,研究計画を立てることが必要となる。
 本書では,計算科学の道具としての並列計算―計算機アーキテクチャ,アルゴリズム,プログラミング―についての基礎知識を解説する。逐次計算プログラムとは根本的に異なることを知ることによって,さまざまな並列計算機環境における応用のための準備を行う。

目次

第1章 はじめに(石井克哉・平野 靖)
1.1 どういう計算が並列にできるか
1.2 どのような方針で並列計算を組み立てるか
1.3 どんな並列計算の方法があるか
1.4 並列計算の性能の評価
1.5 1990年代までの並列計算の方法
1.6 1990年代後半以降の動向
1.7 近年の日本のスパコン
1.8 分散コンピューティング,グリッドコンピューティング

第2章 ベクトル並列(永井 亨)
2.1 ベクトル処理
  2.1.1 演算パイプライン処理
  2.1.2 ベクトル計算機の基本構成
  2.1.3 ベクトル計算機の性能
  2.1.4 ベクトル化率
  2.1.5 doループとベクトル処理
  2.1.6 ベクトル化の条件
  2.1.7 ベクトル演算の高速化
2.2 ベクトル並列の方法と具体例
  2.2.1 ベクトル並列計算機と並列化インターフェース
  2.2.2 並列処理の実行イメージ
  2.2.3 グローバル変数とローカル変数
  2.2.4 並列処理プログラムの記述法
  2.2.5 並列処理プログラム例1
  2.2.6 配列の分割
  2.2.7 並列処理プログラム例2
  2.2.8 グローバル変数のresident指定
  2.2.9 拡張spread do構文
  2.2.10 配列式の並列化
  2.2.11 プログラムの分割
  2.2.12 グローバル変数・ローカル変数間のデータ転送
  2.2.13 重複ローカル配列の転送
  2.2.14 グローバル関数
  2.2.15 ブロードキャスト
  2.2.16 入出力

第3章 スレッド並列(永井 亨)
3.1 共有メモリ型スカラ並列計算機とスレッド並列
3.2 並列化率
3.3 doループとスレッド並列
3.4 スレッド並列プログラムのチューニング
  3.4.1 キャッシュ競合
  3.4.2 プロファイラ
  3.4.3 パディング
  3.4.4 配列コピーの回避

第4章 プロセス並列―MPIによる並列プログラミング―(津田知子)
4.1 MPIとは
4.2 MPIプログラミングの基礎知識
  4.2.1 MPIプログラムの基本的構成
  4.2.2 主なMPIの関数
  4.2.3 MPI基本データ型とMPI定義済み演算
  4.2.4 初歩的なMPIプログラム
  4.2.5 ブロッキング通信とノンブロッキング通信
  4.2.6 送信モード
  4.2.7 配列の分割
  4.2.8 時間計測
  4.2.9 よく利用するMPIの関数
4.3 並列化の実際例
  4.3.1 2次元目でブロック分割する場合
  4.3.2 1次元目でブロック分割する場合
  4.3.3 1,2次元目でブロック分割する場合
  4.3.4 プロセッサのメモリを最大限に活用する場合
4.4 派生データ型とトポロジー
  4.4.1 派生データ型
  4.4.2 トポロジー

第5章 並列計算機のアーキテクチャ(小柳 滋)
5.1 概要
5.2 ベクトルアーキテクチャ
  5.2.1 ベクトルプロセッサの構成
  5.2.2 ベクトル演算パイプライン
  5.2.3 連結処理
  5.2.4 ベクトルマスク機能
  5.2.5 ベクトルプロセッサのメモリシステム
5.3 共有メモリ型並列アーキテクチャ
  5.3.1 スヌープキャッシュ
  5.3.2 ライトスルー型
  5.3.3 ライトバック・インバリデート型
  5.3.4 ライトバック・アップデート型
  5.3.5 同期方式
5.4 分散メモリ型並列アーキテクチャ
  5.4.1 相互結合網のトポロジ
  5.4.2 メッセージのルーティング
  5.4.3 転送方式
  5.4.4 デッドロック
5.5 PC クラスタ
  5.5.1 Beowulf型PCクラスタ
  5.5.2 SCore型クラスタ

第6章 グリッドコンピューティング(三浦謙一)
6.1 グリッドコンピューティングとは
  6.1.1 グリッドの定義
  6.1.2 グリッドの歴史的背景
6.2 グリッドの展開
  6.2.1 米国のグリッド(TeragridからXSEDEへ)
  6.2.2 ヨーロッパのグリッド
  6.2.3 日本のグリッド関連プロジェクト
6.3 グリッドコンピューティングの利用形態
  6.3.1 Distributed Supercomputing(Metacomputing)
  6.3.2 High-throughput Computing
  6.3.3 Data-Intensive Computing(データグリッド)
  6.3.4 Collaborative Computing
  6.3.5 Serverグリッド
6.4 グリッドのしくみ
  6.4.1 グリッドの階層構造
  6.4.2 Globus Toolkitの概略
6.5 NAREGIプロジェクトの概要(2003~2008)
  6.5.1 プロジェクトの目的
  6.5.2 プロジェクト参加機関
  6.5.3 グリッド研究開発拠点の研究テーマ
  6.5.4 NAREGIの主要な機能
  6.5.5 最終実証環境の構築とソフトウェアの公開
6.6 e-サイエンスへの展開と事例
  6.6.1 e-サイエンスとは
  6.6.2 Cactus
  6.6.3 テラグリッドのScience Gateway
  6.6.4 Application Hosting Environment(AHE)
  6.6.5 RENKEIプロジェクト概要
6.7 最近の動向
  6.7.1 国際標準・国際互換
  6.7.2 グリッドのインフラ化・基盤化
  6.7.3 階層的かつシームレスな計算研究環境
6.8 クラウドコンピューティングとHPC
  6.8.1 クラウドとは
  6.8.2 クラウドのサービスの形態
  6.8.3 クラウドのHPC分野への適用
  6.8.4 グリッドとクラウドの連携
6.9 おわりに

付録 MPIでよく利用する基本的な関数(津田知子)