表紙画像

C/C++プログラマーのための
OpenMP 並列プログラミング [第2版]

2012年7月10日 初版第1刷発行

本書の記載内容について訂正があります。
こちらを参照してください。

本書について

 アプリケーションの並列化がさまざまな分野で求められる昨今、開発者に求められる並列プログラミングのスキルは科学技術計算の分野のみならず、一般のコンシューマーアプリケーションや自社開発のアプリケーションでも求められるようになっています。
 WindowsやLinuxをはじめとする近年のオペレーティングシステムは、マルチプロセスおよびマルチスレッドのプログラミング環境をサポートしていますが、残念ながらそれらは統一されたものではありません。開発者はそれぞれの環境ごとにAPIなどの使い方を学習し、OSごとに異なるプログラムを開発しなければいけません。マルチスレッド環境以前にも皆さんはGUIのプログラミングなどで同じことを経験していることでしょう。プログラムがさらに複雑になるのは大変なことです。
 異なるOS環境で同じプログラミング手法が利用できればそれに越したことはありません。OpenMPはそのような開発環境を提供する優れたプログラミング手法であり、スレッド化に際しプログラムの構造を変えることなく容易にマルチスレッド機能を実装することができます。

 本書はC/C++プログラマー向けのOpenMP入門書として書かれています。皆さんが利用しているコンパイラーはすでにOpenMPをサポートしているかもしれません。ぜひこの機会にOpenMPプログラミングを始めてください。

 2009年7月に本書初版が出版された後、2011年7月にOpenMP 3.1の仕様が公開されました。本書では第2版(増補版)として付録Fに新しい仕様の説明を加えるとともに、一部改訂しています。

目 次

■正誤表■ 2017/7/4

本文の内容に誤りがありました。 お詫びして訂正いたします。

p.295 のタイム API の説明


void omp_get_wtime(void)
void omp_get_wtick(void)


double omp_get_wtime(void)
double omp_get_wtick(void)