yohhoyの日記

技術的メモをしていきたい日記

PPL

task_groupコンセプト

C++1y(C++14)に向けた並列プログラミングモデルについてメモ。(PDF)N3711 Task Groups As a Lower Level C++ Library Solution To Fork-Join Parallelismにて、タスク並列処理の基本構成要素となるtask_groupコンセプトが提案されている。なお、同名クラスは…

C++1yへの並列アルゴリズムライブラリ提案

C++1y(C++14)に向けた並列プログラミングモデルについてメモ。(PDF)N3429 A C++ Library Solution to Parallelismにて、いくつか並列アルゴリズムの追加提案がなされている(言語コア機能の拡張提案は含まない)。初期提案のため概要レベル。2021-03-17追記…

並列パターン

IntelとMicrosoftから並列プログラミングのパターン集が公開されている。 (PDF) Intel® Threading Building Blocks Design Patterns Patterns and Practices for parallel programming in C++ (PDFダウンロードへのリンク) 2012-06-21追記:エクセルソフトよ…

電子書籍"Parallel Programming with Microsoft Visual C++"

Microsoft PPL/Agents/ConcRT*1を利用した並列プログラミングに関する電子書籍。HTML版がMSDNにて無償公開されている。 Parallel Programming with Microsoft® Visual C++® -- Design Patterns for Decomposition and Coordination on Multicore Architectur…

TBBとPPL/ConcRTとブロッキング操作

Intel TBB(Threading Building Blocks)およびMicrosoft PPL(Parallel Pattern Library)と、タスク内からのブロッキングAPI呼び出しに関するメモ。まとめ: TBBのスケジューラは協調的マルチタスクを行うため、タスク内から長期間ブロックする処理を呼び出す…

Intel Threading Building BlocksとMicrosoft Parallel Pattern Libraryの互換性

Intel TBB(Threading Building Blocks)とMicrosoft PPL(Parallel Pattern Library)は、両ライブラリともに同じような並列アルゴリズムや同期プリミティブを提供している。TBB バージョン2.2以降、一部機能についてはPPLとのAPI互換がとられている。(TBB 4.0…