問題タブ [kcachegrind]

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.

0 投票する
0 に答える
697 参照

c++ - プロファイリングの結果に戸惑う

-g -O2" " でプログラムをビルドし、 valgrind+cachegrind を実行しました。出力の解釈方法がわかりません。出力は次のとおりです。

http://daviddoria.com/Uploads/callgrind.CacheMisses

私の「プログラム全体」は、InpaintingAlgorithm「メイン」の 98.4% の関数です。ここまでは順調ですね。の呼び出し先を見るとInpaintingAlgorithm、92.9% がInpaintingAlgorithmですLinearSearchKNNProperty::operator()。これは私の「内部ループ」であり、ここでも膨大な時間が費やされると予想しています。

ここで私は混乱します。の呼び出し先を見ると、LinearSearchKNNProperty::operator()本当に何もない?? 最大の関数はわずか 7.64% で、残りは < 0.25% です。すべての呼び出し先の合計が約 8% しか追加されない理由がわかりません。残りの92%はどこ?? (おそらく、それをより速くするために私が探しているものです!)

誰かがこれらの結果を読む際の私の誤りを指摘してくれたら、私はそれを感謝します!

0 投票する
1 に答える
217 参照

php - kcachegrindでphp関数のパラメータを見る方法

xdebugプロファイルファイルを表示するためにkcachegrindを使用しました。

サイクルで kcachegrind の関数またはメソッドに渡されたパラメーターを確認する方法

0 投票する
3 に答える
3925 参照

performance - php :: session_startが原因で、CakePHPページの読み込みが遅い

データベースを呼び出さないCakePHPアプリケーションのページは、ロードに約4秒かかることがわかりました。これは、遅すぎます。

私は無駄に次のことを試みました:

  • コンピューターを再起動する
  • Uniserverの再インストール
  • デバッグレベルを2から0に切り替える
  • FileCacheからAPCキャッシュに切り替える

XDebugプロファイラーダンプを取得し、KCachegrindで、最も時間のかかる関数がphp :: session_startであり、\ webroot\index.phpによって呼び出されたことを確認しました。また、CakePHP Debug Kitを使用してパフォーマンスを確認したところ、最も時間のかかる項目は「コア処理($ _SERVER ["REQUEST_TIME"]から派生)」であることがわかりました。

ページの読み込みを高速化するにはどうすればよいですか?

私のハードウェアが関連している場合は、以下に動作環境について説明しました。

  • ThinkPad T400
  • Intel Core2Duoプロセッサー
  • OCZ SSD
  • 4 GB RAM
  • Windows764ビット版
  • CakePHPバージョン2.2.3

出発点として、php.iniの作業用コピーを、Uniserverが提供する製品版のphp.iniと比較したところ、次の大きな違いが見つかりました。

  • PHPエラーレベル(E_ALL、E_NOTICE、E_STRICTなど)
  • $php_errormsgロギング
  • mysqlnd.collect設定(これらのうちの2つ)
  • Xdebugを無効にする

次に、比較の前後にいくつか行いました。緑のセルは1秒未満の値です。これは、人間が何かを「かなり速い」と認識するための制限です。実際には、「インスタント」になるには0.1秒未満である必要があることを認識していますが、それは少し非現実的です。

CakePHPページを表示するために必要な処理時間の比較

(画像をフルサイズで表示するには、Windows SkyDrive(http://sdrv.ms/YomWdO )にアクセスしてください。)

php.iniの「After」バージョンで実行しているときにWebサイトアプリケーションを使用してみましたが、問題はありませんが、ほとんどのページを起動すると、特に一部のページをすぐに起動できる場合は、まだ道に迷っています。 。

0 投票する
1 に答える
207 参照

fedora - KCacheGrind が Fedora 17 で何も開かない

だから、私は今できることをすべて試しましたが、これでうまくいかないので、SOの人たちに助けを求めています.

システムの詳細:

フェドラ 17 x86_64

Intel® Pentium(R) Dual CPU E2160 @ 1.80GHz × 2

1.9 GiB メモリ

KCacheGrind 0.7.1

KDE プラットフォーム バージョン 4.9.4

手順の詳細: サーバーまたは Xdebug Helper と呼ばれる Chrome Ext から XDEBUG ログを取得します。そして、アイコンから直接、または作成したシェル スクリプトから実行します。

そして、「プロファイルデータが読み込まれていません」というエラーが表示されます

何か案は?

申し訳ありません:エラーは「(機能が選択されていません)」と表示されます

私を許して。私は Linux と KCacheGrind の初心者です。

0 投票する
3 に答える
261 参照

c++ - 2 つの C++ プログラムの違い

私は 2 つのバージョンを持つ 1 つの C++ プログラムを持っています。1 つのバージョンでは機能が動作していますが、他のバージョンでは動作していません。この 2 つのバージョンの違いをデバッグする方法はありますか? 具体的には、Linux と g++ を使用しています。KCachegrindのようなものを使用して差分コール グラフを表示する方法はありますか? または、これらの関数呼び出しの違いをより高速に表示する gdb の何かがありますか?

更新中... すべての違いを表示するにはプログラムが大きすぎます。まず、関数呼び出し間のパスの違いを知りたいと思います。その後、この関数だけで diff コマンドを実行するオプションがあります。

0 投票する
2 に答える
1773 参照

php - プロファイリングのためのリモートサーバーへの Xdebug インストール

プロファイリングの目的で、AWS クラウドのリモート サーバーに Xdebug をインストールしようとしています。phpinfo() を使用してチェックした Xdebug をインストールし、サーバーでプロファイリング オプションを有効にする設定をいくつか保持しました。有効になっていることを確認しました。

pro filer の出力ログをリモート サーバーのディレクトリに保存しています。Kcachedgrind を使用してこれらのファイルを開きたいと思います。だから私はKcachesgrindをインストールしました。

PHP.ini ファイルで使用した設定は以下のとおりです。

上記の設定では、xdebug.remote_host という名前のファイルが表示されます。通常は localhost ですが、リモート サーバーにいるので、サーバーのホスト名をそこに保持しました。Kcachegrind を使用してファイルを開こうとすると、以下のエラーが発生します。

0 投票する
0 に答える
97 参照

php - XDebug が fopen を実際より遅いと誤って報告していますか? より正確な情報を得るにはどうすればよいですか?

XDebug を使用した場合よりも少し遅いと思われる PHP Web サイトのプロファイリングを行っています。

KCacheGrind でプロファイル情報を確認したところ、ロード時間の 80% 以上が fopen によるものでした。

ただし、fopen 呼び出しの前後にステートメントをコードに追加して所要時間を測定すると、XDebug によって報告された 80% に近づいていないように見えます。

このメソッドは、fopen 呼び出しを完了するのに約 2 秒かかっていることを報告します。ページの読み込みには約 25 秒かかります。これは、XDebug によって報告された 80% からの大幅な増加です。

それは本当に fopen 呼び出しがすべてを遅くしているのでしょうか?

そうでない場合、どうすれば XDebug からより正確な情報を取得できますか?

編集:呼び出しは完了しますが、接続が閉じられるまで XDebug によって「現在」としてカウントされ、タイムアウトするまでハングするようです。接続を手動で閉じた後、統計は少し良くなったようです。

0 投票する
0 に答える
118 参照

c++ - 関数宣言行の cachegrind Ir カウントの解釈

まったく同じ方法で使用される、2 つの同様の関数の行ごとのキャッシュ カウントがあります。関数宣言行 (void f(...)) の Ir カウントは非常に異なります。1 つは 999,999,993 で、もう 1 つは 284 だけです。これは何を意味するのでしょうか?

0 投票する
1 に答える
22032 参照

debugging - Valgrind 出力のエラー概要?

valgrind に関するいくつかの投稿を見てきましたが、valgrind の出力の解釈を理解するのに役立った投稿は 1 つもありませんでした。valgrind で 2 つのプログラムを実行しました (どちらもメモリ リークがありました)

テスト 1 のサンプル出力

テスト 2 の出力

エラーの概要を見ると、1 つの出力はエラーがあることを示し、他の出力はエラーがないことを示しています (最終的に両方にリークがあります)。

私の質問は - - valgrind でエラーとしてカウントされるものは何ですか? (valgrind マニュアルは役に立ちませんでした)