2009-07-10 5 views
0

に添付のhprofプロファイラによって導入-Xrunhprof:フォーマット= BCPUを測定する方法、オーバーヘッド私はオプションとIBMのJVM(JDK 5.0)を実行しているJVM

私は、JVMを計測することを承知していますhprofにはパフォーマンス上の犠牲が伴います。私はそのペナルティを定量化したいと思います。これを行う1つの方法は、hprofプロファイリングを外してアプリケーションを実行し、どちらの場合でもアプリケーションのCPU使用率を比較することです。しかし、このオプションは私には利用できません

私は実行中のアプリケーションがhprofでインストルメントされています。私は、CPUの%は、HPROFプロファイラ自体によって消費されているかを調べる必要があります。

答えて

1

ハード・ナンバーはありませんが、私はいつもhprofの下で、の大きさの順番が(または2つ)以下であると考えていました。それは非常にあなたが追跡するものに依存しています。たとえば、より大きなスタックフレームは、オーバーヘッドが増加します。

ただし、厳密に制御されたテスト環境以外で実行したいとは限りません。

+0

はい、いいえ - 測定がサンプリング(高速)またはカウント(遅い)のどちらで行われるかによって完全に決まります。サンプリングは、多くの場合、(+ 50%の実行時間のような)ささやかなオーバーヘッドが発生します。カウントは1桁の大きさ(+ 500%)を持つことができます。少なくともこれは私の経験でした。 – StaxMan

1

プロファイリングで解決しようとしているパフォーマンス上の問題が実際にあるとは言えません。しかし、あなたがしている機会に、you might try this.

関連する問題