== オープンソース化された並列化テンプレートクラスライブラリ「Intel Threading Building Blocks」入門 == C++で並列アプリケーションを実装するためのテンプレートライブラリとして、インテルがリリースしている「Intel Threading Building Blocks」(TBB)がある。TBBはインテル コンパイラーやインテル Parallel Studioといったインテルのコンパイラ製品に付属しているほか、オープンソース版も公開されている。本記事ではこのTBBの概要と、基本的な使い方を解説する。 '''[http://sourceforge.jp/magazine/09/05/25/1031209 【特集】マルチスレッド/並列プログラミングの必携ツール「インテル Parallel Studio」徹底活用]'''[http://sourceforge.jp/magazine/09/05/15/0930226 第1回:ソフトウェア高速化の鍵は「並列化」:いま注目される並列化技術を知る][http://sourceforge.jp/magazine/09/05/15/0938220 第2回:マルチコア時代の新開発ツール「インテル Parallel Studio」][http://sourceforge.jp/magazine/09/05/18/1135239 第3回:サンプルコードで知るParallel Studioの並列化機能][http://sourceforge.jp/magazine/09/05/22/0358216 第4回:並列アプリケーションを作ってみよう][http://sourceforge.jp/magazine/09/05/25/0921234 第5回:インテル Parallel Studioを活用したソフトウェアの並列化:AACエンコーダを高速化する]'''[//sourceforge.jp/magazine/09/08/21/1128207 第6回:オープンソース化された並列化テンプレートクラスライブラリ「Intel Threading Building Blocks」入門]''' C/C++で並列アプリケーションを実装する手法として、並列化したい処理をOSのAPIを用いてマルチスレッド化する、もしくは並列プログラミングの規格である「OpenMP」を利用する、といったものが知られている。これらについては[http://sourceforge.jp/magazine/09/05/15/0930226 以前の記事]でも紹介しているが、マルチスレッドを利用した実装は柔軟性がある一方で手間が掛かり、OpenMPは比較的手軽だが柔軟性に欠けるなど、それぞれに長所と短所がある。 * [[http://sourceforge.jp/projects/test11/wiki/!pdf/オープンソース化された並列化テンプレートクラスライブラリ「Intel_Threading_Building_Blocks」入門_all.pdf 全ページをPDF形式でダウンロード]] * 記事個別ページ: * [オープンソース化された並列化テンプレートクラスライブラリ「Intel_Threading_Building_Blocks」入門_p1 オープンソース化された並列化テンプレートクラスライブラリ「Intel Threading Building Blocks」入門(1/7)] * [オープンソース化された並列化テンプレートクラスライブラリ「Intel_Threading_Building_Blocks」入門_p2 オープンソース化された並列化テンプレートクラスライブラリ「Intel Threading Building Blocks」入門(2/7)] * [オープンソース化された並列化テンプレートクラスライブラリ「Intel_Threading_Building_Blocks」入門_p3 オープンソース化された並列化テンプレートクラスライブラリ「Intel Threading Building Blocks」入門(3/7)] * [オープンソース化された並列化テンプレートクラスライブラリ「Intel_Threading_Building_Blocks」入門_p4 オープンソース化された並列化テンプレートクラスライブラリ「Intel Threading Building Blocks」入門(4/7)] * [オープンソース化された並列化テンプレートクラスライブラリ「Intel_Threading_Building_Blocks」入門_p5 オープンソース化された並列化テンプレートクラスライブラリ「Intel Threading Building Blocks」入門(5/7)] * [オープンソース化された並列化テンプレートクラスライブラリ「Intel_Threading_Building_Blocks」入門_p6 オープンソース化された並列化テンプレートクラスライブラリ「Intel Threading Building Blocks」入門(6/7)] * [オープンソース化された並列化テンプレートクラスライブラリ「Intel_Threading_Building_Blocks」入門_p7 オープンソース化された並列化テンプレートクラスライブラリ「Intel Threading Building Blocks」入門(7/7)]