問題タブ [jfr]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
jfr - Java Mission Control 7.1 で表示されるメソッド プロファイリング サンプルが少なすぎる
同様の質問がここで尋ねられました。
指示に従って構築した JMC 7.1.0 を使用して、Open JDK 11.0.2 アプリケーションをプロファイリングしています。
アプリケーションは約 3 つのコアを使用しており、過剰な gc はなく、スレッドが実際に CPU を使用するネイティブ メソッド呼び出しを行っている時間のごく一部です。
デフォルトのメソッドのサンプリング間隔である 10ms を使用しています。以下を使用して、セーフポイント外のデバッグ メタ データを有効にしました。
-XX:+UnlockDiagnosticVMOptions -XX:+DebugNonSafepoints
採取されたサンプルの数は、私が予想するよりもはるかに少ないです。各サンプリング ポイントで非ネイティブ コードを実行している CPU スレッドに 1 があると保守的に仮定すると、100 サンプル/秒が予想されます。それでも、1 秒あたり 1 サンプルしか表示されません。
マシン自体は通常 50% アイドル状態であるため、サンプリング スレッドが枯渇することはありません。
サンプル数が少ない原因は何ですか?
scala - JMC/JFR で見られる `$adapted$` メソッドとは何ですか?
Java Flight Recorder/Mission Control を使用していくつかの scala コードをベンチマークする$adapted$
と、名前に が含まれるメソッドが多数表示されます。署名を見て、これについていくつかの可能性を考えることができます。
- これらはJava-8関数ラムダと同じですか? つまり、ヒープ割り当てを生成しませんか?
- それらはジェネリックの特殊化ですか (scala、または java のテンプレート)?
- それとも、他の種類の最適化ですか?
これについての詳細はどこで確認できますか?