表紙画像

OpenCL応用
メニーコアCPU & GPGPU時代の並列処理

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

本書について

 本書は、並列プログラミング規格の一つであるOpenCLを紹介する書籍です。対象読者のレベルは「入門者〜中級者」を考えています。初歩的なプログラムも示しますが、基本的にOpenCLの基礎は習得済みで、次のステップへ進みたいプログラマを対象にします。

 OpenCLはプラットフォームや開発環境へ依存しない並列プログラミングの規格です。ヘテロジニアスな環境を前提にしているため、スレッドやOpenMPなどに比べ若干手続きが面倒です。そのため、一通りの手順を理解するまでは、少し退屈でしょう。
 本書は、前半でOpenCLの概要、中盤で画像処理の基本や応用、後半でイメージオブジェクトを使った画像処理やOpenCLの同期処理、そしてワークグループなどを解説します。
 スレッドやOpenMPを習得しているエンジニアにとって、OpenCLの習得は比較的容易と考えられます。ただ、OpenCLは従来の並列化と異なり、ヘテロジニアスな構成を対象としています。このため、いくつかOpenCL特有な学習が必要です。本書の先頭の方で、OpenCL特有な部分を解説します。まったく並列プログラミングに縁のなかったエンジニアにとっては、かえって素直に学べる可能性もあります。スレッドやOpenMPを経験済みのエンジニアは、手続きが煩雑に感じるでしょう。

 これまでのOpenCL関連書籍は入門書が多く、リファレンスが充実したものも少なくありません。本書では、リファレンスはOpenCLの仕様書に譲って最低限の解説に留めます。代わりに、実際のアプリケーションに近い具体的な例を多く紹介し、それを説明することに重点を置きました。

目 次