サード パーティ製ツール
 
 
 

スレッド化分析ツール

Intel ThreadChecker

コード パスのトラバースにより、実際の競合状態と潜在的な競合を検出する非常に便利なツールです。これには計器が必要であり、実行時の処理速度は大幅に低下します。Windows と Linux の両方で使用できます。

Intel ThreadProfiler

実行時にスレッドの使用状況を示すビューを表示します。スレッド化領域の開始と終了、オーバーサブスクリプション/アンダーサブスクリプションの領域を表示します。これは Windows と Linux のネイティブ スレッドと OpenMP の両方で機能します。

Helgrind

Linux オープン ソースのスレッド化分析ツールであり、コードの競合状態の有無を検査します。

Intel コンパイラ

スレッド化分析ツールではないように思われますが、Intel コンパイラは 2 つの非常に便利なコンパイラ警告フラグをサポートしており、スレッド化の共通の問題である静的変数への書き込みまたは潜在的な書き込みを検出します。

warning #1711: assignment to statically allocated variable
warning #1712: address taken of statically allocated variable

これらの警告を有効にするには、-ww1711 (OSX と Linux)と /Qww1711 (Windows)を指定します。

プロファイリング ツール

Shark

OSX 用のプロファイラです。Shark は、オプションの無償インストールとして、CHUD ツールに付属して提供されています。

Zoom

Linux で実行される統計コール グラフ プロファイラです。http://rotateright.com/ を参照してください。

Intel PTU

プロトタイプ統計コール グラフ ツールで Shark にやや似ています。http://whatif.intel.com から入手でき、既存の VTune ライセンスが必要です。Windows と Linux で動作します。

VTune

Intel の強力なプロファイラです。コールをグラフ化すると、計測時と実行時に大きなオーバーヘッドが生じます。Windows と Linux に対応しています。