Sun Studio 12: スレッドアナライザユーザーズガイド

2.2.1 ソースコードへの計測機構の組み込み

プログラム内のデータ競合を検出できるようにするには、まず、特殊なコンパイラオプションを付けてソースファイルをコンパイルします。C/C++ と Fortran 言語用のこの特殊オプションは、-xinstrument=datarace です。

プログラムのコンパイルに現在使用しているオプションに -xinstrument=datarace オプションを追加します。このオプションは、データ競合の疑いがあるソースファイルにのみ適用できます。


注 –

プログラムをコンパイルするときは、必ず -g を指定してください。競合を検出するためのプログラムのコンパイルでは、最適化レベルを高くしないでください。-xopenmp=noopt を使用して OpenMP プログラムをコンパイルしてください。最適化レベルを高くすると、報告される行番号や呼び出しスタックなどの情報が不正になることがあります。


次は、ソースコードに計測機構を組み込むコマンドの例です。