マルチスレッド・アプリケーション開発のためのガイド
このガイドは、インテル コーポレーションが提供するガイド「Intel Guide for Developing Multithreaded Applications」の日本語参考訳です。
第 1 章 – アプリケーションのスレッド化
並列パフォーマンスにおける一般的なトピックを紹介します。また、API 固有の問題についても触れています。1-1 並列パフォーマンスの予測と測定
1-2 ループの最適化によるデータの並列パフォーマンスの強化
1-3 粒度と並列パフォーマンス
1-8 アセンブリーや組込み関数を利用することなく AVX を使用するには
第 2 章 – 同期
同期が及ぼすパフォーマンスへの負の影響を緩和する手法を紹介します。2-3 オーバーヘッドを最小限に抑える適切な同期プリミティブの選択
2-4 非ブロッキング・ロックの使用
第 3 章 – メモリー管理
スレッド化により、メモリー管理においては無視することのできない別の側面がもたらされます。ここでは、マルチスレッド・アプリケーションに特有のメモリーに関する問題について説明します。3-1 スレッド間のヒープ競合の回避
3-2 スレッド・ローカル・ストレージを利用して同期を軽減する
3-3 マルチスレッド・アプリケーションのメモリー帯域飽和を検出する
第 4 章 – プログラミング・ツール
インテル® ソフトウェアを製品を使用して、マルチスレッド・アプリケーションの開発、デバッグ、最適化を行う方法を紹介します。4-2 インテル® マス・カーネル・ライブラリー (インテル® MKL) での並列処理
4-3 スレッド化とインテル® インテグレーテッド・パフォーマンス・プリミティブ (インテル® IPP)
4-4 インテル® Parallel Inspector を使用した OpenMP* ベースのマルチスレッド・コードにおける競合状態の検出
4-4 (XE) インテル® Inspector XE 2011 を使用したマルチスレッド・コードのデータ競合の検出
4-5 インテル® Parallel Amplifier を使用したスレッド・インバランスの解消