問題タブ [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.
php - PHPメモリのデバッグ
私のプロジェクトの1つとして、非常に大きなテキストファイル(〜950MB)をインポートする必要があります。プロジェクトにSymfony2とDoctrine2を使用しています。
私の問題は、次のようなエラーが発生することです。
メモリ制限を1GBに増やしてもエラーが発生します。
XDebugとKCacheGrind(PHPEditの一部として)を使用して問題を分析しようとしましたが、値がよくわかりません:(
私は、メモリが割り当てられ、再度解放されない理由を見つけるためのツールまたはメソッド(時間があまりないため、Quick&Simple)を探しています。
編集
ここでいくつかのことをクリアするために私のコードがあります:
私が試したことはありますが、何も役に立ちませんでした:
- fgetsに2番目のパラメーターを追加する
- memory_limitの増加
- 設定解除変数
kcachegrind - このkCacheGrind出力で「欠落」時間を見つけるにはどうすればよいですか?
私はkCacheGrind(実際にはWinCacheGrind)を分析してcachegrindファイルを分析していますが、各プロセスの「自己」時間を合計すると、合計はページ全体の累積時間に近くなりません。具体的には、ページ全体のセルフタイムは6,561ミリ秒ですが、{main}内の子の累積時間は合計で96ミリ秒にすぎません。
「行方不明」の時間を特定するための最善の方法はありますか?
残念ながら、私は新しいので画像を含めることはできませんが、うまくいけば、始めるのに十分な量を与えました。そうでない場合は、私が提供できるものを教えてください。
ありがとう。
編集:これが私が見ているものですhttp://www.flickr.com/photos/76072991@N02/6832545235/
python - ホットショット (プロファイラー) の結果を集計して kcachegrind で表示する方法
ホットショットを使用して Python プログラムのプロファイルを作成しています。プロファイルを集約して Kcachegrind で合計結果を確認する方法はありますか?
いくつかの調査の後、pstats を使用して以下に示す方法でプロファイルを集約しpyprof2calltree
、結果を kcachegrind 形式に変換するために使用しました
pyprof2calltree
私にこのようなエラーを与えました。
ここで何か間違ったことをしていますか、これを行う他の方法はありますか?
php - cachegrind ファイルの PHP パーサー?
そのようなことはありますか?
私は Windows で WinCacheGrind アプリを使用していますが、大きなファイル (~2 MB) では機能しないようです。「呼び出し先が見つかりません」などのエラーが表示されます。
独自の cachegrind アナライザーを構築するのに役立つ、PHP で記述されたそのようなファイルのパーサーを知っていますか?
php - wincachegrind の列名は何ですか?
多くの努力とチュートリアルで xdebug/wincachegrind を起動して実行しましたが、ほとんどのチュートリアルは「すべてが機能しています。お楽しみください」で終わります。
すべてが機能していますが、統計で列の名前がわかりません:
- 平均とは セルフ(平均的なセルフ)?
- とはどういう意味ですか?
- 平均的な自己の反対にある完全な自己とは何ですか?
- 平均精液の反対にある合計精液とは何ですか?
適切な答えが見つからなかったので少し混乱しています。これがばかげた質問であれば申し訳ありません。
php - PHPxDebugグラフの解釈
PHPアプリケーション(Zendフレームワーク上に構築)をプロファイリングしています。添付されているのは、KCacheGrindがxDebug出力から生成するメインコールグラフのスクリーンショットです。
私が理解していないことが2つあります。
1)なぜ2つの呼び出しに{main}
「分岐」するのですか?それらはどういうわけか並列であるはずですか、それとも次々に起こりますか?
2)左側の矢印には{main}
、テキストが付いた小さな青いバーがあります2x
。これは、への呼び出しZend_Application->bootstrap
が2回発生したことを意味しますか?
xdebug - Xdebug + KcacheGrindの出力グラフは、100%を超えるパーセンテージを示しています
xdebugによって保存されたsymfonyアプリケーションのデバッグ出力を視覚化するためにkcacheGrindを使用しています。実行グラフとその時間を確認するために「コールグラフ」を参照しています。
kCacheGrindで次のオプションを次のように設定しました。
- %Relative-on
- 親に対して-上
- サイクル検出-オフ
私の出力の一部は次のとおりです。
これに伴う問題は、一部のクラスで100を超える時間パーセンテージが表示されることです。sfFilterChain-> execute()が実行時間の216%を占めていることがわかります。これは可能ですか。それによって与えられる情報は何ですか。
サイクル検出も有効にしましたが、混乱は解決しませんでした。
誰かが実行時間のパーセンテージに関してこの問題を明確にすることができますか?前もって感謝します。
c++ - KCachegrind でソース注釈を取得する
実行可能ファイルに関連付けられたソース コードを表示しようとしていますlab13
。KCachegrindの [ソース] タブをクリックすると、次のように表示されます。
ただし、次のように-g
デバッグ フラグを使用していmakefile
ます。
callgrind.out
への次の呼び出しを使用してファイルを作成しましたvalgrind
。
KCachgrindのドキュメントを見ましたが、[ソース] タブ機能をアクティブにする方法に関する情報はありません。
OSX でプログラムをコンパイルし、X11 経由で KCachgrind を実行しています。callgrind.out
コードと同じディレクトリからファイルを読み取っています。他のすべての KCachgrind 機能は動作しているようです。
[ソース] タブを機能させるにはどうすればよいですか?
php - KCacheGrind を使用して PHP XDebug データを集約する
以前に PHP XDebug によって取得されたプロファイル データを集計する方法はありますか?
私はPHP XDebugを管理して、1つのリクエストに関連するデータを単一のファイルに入れました。そのファイルを kcachegrind で開くと、そのファイルに集約されたすべてのリクエストが表示されます。ただし、各リクエストには独自のスタック トレースがあります (変更される可能性があることは理解しています)。すべてのリクエストから集計されたプロファイル データを表示する方法はありますか? 100% 正確でなくても、一部の呼び出しが欠落していてもかまいません。日常業務全体の簡単な概要が必要なだけです。
免責事項: kcachegrind は必須ではありません。これまでのところ最高のツールであることがわかりました。
profiling - Callgrind プロファイル形式の包括的/自己費用
Callgrind プロファイル形式を理解しようとしています。オンラインの説明を見つけました
「拡張された例」に遭遇するまで、私はそれをかなりよく理解していると思っていました:
説明は次のとおりです。「メイン」では、16行目からのコードのみが実行され、他の関数も呼び出されることがわかります。「メイン」の包括的コストは 420 です。これは、自己コスト 20 と呼び出しで費やされたコストの合計です。
func2 のみの自己コストが既に 700 である場合、「main」の包括的コストはどのようにして 420 になりますか?