質問

プロファイリング ツールに関するすべての質問に目を通したところ、次のことに驚きました。 IntelのVTune 今まで聞いたことのないこと。700ドルと、よりもさらに高価です アクアタイム.

しかし、AQTime に大金を投じる決断をする前に、誰かが VTune for Delphi を使用したことがありますか。もし使用している場合、AQTime よりも良い選択となる利点があると思いますか。 世の中にある他の Delphi 用プロファイリング ツール?

役に立ちましたか?

解決

30 日間の vtune 試用版をダウンロードして、自分で試すことができます。

AQTimeとVTuneを使用しました。

マルチスレッド アプリケーションをテストしたい場合は、VTune が適しています。アプリケーションのマルチスレッド部分の速度を低下させるメモリ マネージャーのロックを見つけるのに役立ちます。

秒の違いは、VTune がサンプル プロファイラーであり、AQTime がインストゥルメント プロファイラーであることです。どちらも長所と短所がありますが、個人的には楽器の方が好きです。インストルメンテーション プロファイラーを使用すると、関数が呼び出された回数、このプロシージャのすべての呼び出し元などの正確な情報が得られますが、時間結果は不正確になります。インストルメンテーション プロファイラーはプロセッサがコードを実行する方法を変更するため、分岐予測とキャッシュの動作が実際のテスト済みアプリとは異なります。仕事が遅い。

しかし、最も重要なのは GUI であり、ここでは AQTime が勝利します。強力なアプリケーションですが、使い方はとても簡単です。インテル® VTune はまったく異なります。VTune で適切なコマンドを見つけるのにあまりにも多くの時間を費やしてしまいました。GUIは非常に面倒です。

したがって、マルチスレッド以外では AQTime を使用します。

他のヒント

インテル® VTune は、分岐予測、キャッシュミスなどの低レベルの CPU カウンターを読み取ることができます。これを使用して、TopMM (マルチスレッド スケーリング メモリ マネージャー!) がハイパースレッディング CPU で非常に遅い理由を調べました。64kbのメモリキャッシュエイリアシングに関するものでした。そのため、CPU 上で実際にどのように実行されるのか、キャッシュ ミスなどが原因で速度が低下する理由について、より詳細な情報が得られます。実際の最適化(最後の%)の場合は両方を使用しますが、通常の最適化の場合はAQまたはその他(私のasmprofilerのような:-)を使用します)

ライセンス: CC-BY-SA帰属
所属していません StackOverflow
scroll top