Go ツール Pprof 出力の不一致
クエリは、プロファイリング機能を提供する Go の 'pprof' ツールの不可解な出力を中心に展開します。以前は正確なパフォーマンスを示していたにもかかわらず、このツールは最近、決定的ではない結果を生成し始めています。
プロファイル対象のアプリケーションに関係なく、多数の関数呼び出しを含む比較的複雑なアプリケーションであっても、「pprof」ツールは当たり障りのない呼び出しグラフと不毛な結果を返します。 、アプリケーション自体は正常に機能しているにもかかわらず。
この問題は、MacOS Yosemite と El Capitan にアップグレードした後も解決しません。パッケージ「github.com/davecheney/profile」は Go v1.5.1 で使用されます。
プロファイルを生成するには、コードの先頭に「profile.Start」と「profile.Stop」が含まれます。 main' 関数に続いて、バイナリの構築と実行が行われます。ただし、結果の出力は次のようになります。
(pprof) top 269.97kB of 269.97kB total ( 100%) flat flat% sum% cum cum% 269.97kB 100% 100% 269.97kB 100% (pprof)
提供されたソリューションは、'pprof' 呼び出しにバイナリが存在しないことを強調することで、この不一致を解決します。正しいコマンド構造は次のとおりです。
go tool pprof ./orig /path/to/profile.pprof
この修正により、「pprof」がコンパイルされたバイナリをターゲットにするようになり、必要なプロファイリング情報を提供できるようになります。
以上がアプリケーションのパフォーマンスが正確であるにもかかわらず、Go の「pprof」出力で空白の結果が表示されるのはなぜですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。