問題タブ [profiling]

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 投票する
8 に答える
143729 参照

optimization - VBA コードの実行時間をどのようにテストしますか?

関数のさまざまな実行時間を比較できるように、実行にかかった時間を知らせる関数をラップできる VBA のコードはありますか?

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

.net - インプロセスでネイティブを IL 命令ポインターにマップする方法

.NET フレームワークのアンマネージ API を使用してインプロセスの .NET プロセスをプロファイリングする場合、StackSnapshotCallback 関数に提供されるネイティブ命令ポインターに相関する IL 命令ポインターを検索することは可能ですか?

おそらく明らかなように、現在のスタックのスナップショットを取得しており、スタック ダンプにファイルと行番号の情報を提供したいと考えています。Managed Stack Explorerは、クエリを実行してこれを行いISymUnmanagedMethod::GetSequencePointsます。これは素晴らしいことですが、シーケンス ポイントはオフセットに関連付けられており、これまでのところ、これらはメソッドの先頭からのオフセットであると想定しています (中間言語で)。

David Broman は、彼のブログ投稿Profiler stack Walking: Basics and beyondへのフォローアップ コメントで、このマッピングは を使用して実現できることを示していますICorDebugCode::GetILToNativeMapping。ただし、このインターフェイスを取得するには、別のデバッガー プロセスから自分のプロセスにアタッチする必要があるため、これは理想的ではありません。

これらのスナップショットを作成している間も、Visual Studio デバッガー内からアプリケーションを引き続き実行できるようにしたいので、その手順は避けたいと思います。出力ウィンドウの行番号をクリックして、問題のコードに移動しやすくなります。

機能は可能です....管理されたコード内で自由に行番号付きのスタックトレースを吐き出すことができます.唯一の問題は、アクセス可能かどうかです. また、パフォーマンス上の理由から、スタックの実際のダンプを遅らせる必要があるため、System::Diagnostics::StackTraceor機能を使用したくありません....そのため、後でメソッド名とコードの場所を解決するためのコストを節約することが望ましい.. System::Environment::StackTrace. ネイティブ フレームとマネージド フレームを混在させる機能。

0 投票する
4 に答える
2694 参照

.net - .NETCF でのメモリ リーク - 動的コントロールを作成していますか?

.NET CF アプリケーションでメモリ リークの問題があります。

RPMを使用して、動的に作成するコントロールが期待どおりにガベージ コレクションされないことを確認しました。.NET ウィンドウ フォームで同じコードを実行すると、動作が異なり、期待どおりにコントロールが破棄されます。

プロセス ヒープカウンターの PerfMon 経由の RPM からの出力を参照してください。
代替テキスト

GC ヒープ:
代替テキスト

私の推測では、パネルへの弱い参照は、なんらかの不明な理由でオブジェクトを GC の対象にできないのではないでしょうか?

注: Dispose()はサンプルの問題を解決しますが、オブジェクトが使用されなくなった時期を明確に判断できないため、既存のアプリケーションに簡単に組み込むことはできません。

問題を説明するために、ソースの簡略版を含めました。

更新:
1. GC.Collect() を呼び出しても、パネルがクリーンアップされません。
2. Windows CE 4.2 デバイスで .NET CF 2.0 SP1 を使用します。

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

c# - SQLプロファイラーまたは同様のツールで.netスタックトレースを取得する方法はありますか?

以前の仕事では、実行時(本番)プロファイラーツールの設計と構築を支援しました。このツールは、他の優れた機能の中でも、実行されたすべてのSQLステートメントの.Netスタックトレースを提供できました。ステロイドのSQL-Serverプロファイラーと考えてください。したがって、SQLステートメントと期間を表示するだけでなく、SQLが実行されたコンテキストも取得します。DB中心のアプリを開発するとき、私はこの情報を神から送るものだと思います。

問題は、これが開発されて以来、私の前の会社がノートンライフロックに買収されたということです。ツールはまだダウンロード可能ですが、ライセンスが何であるかが非常に不明確であり、SKUSymnatecが販売しているわけではありません。

SQLステートメントの実行でスタックトレースを提供する同様のツールを誰かが知っているかどうか疑問に思っていましたか?

代替スクリーンショットhttp://img151.imageshack.us/img151/4357/profiler1jz3.gif

これは未回答のままです。ANTS他は、単に「いいえ」と答えて受け入れることを考慮して、これを行いません。

0 投票する
4 に答える
3277 参照

linux - Mac OS X で Shark のように動作する Linux 用の同様のツールはありますか?

Mac OS X のSharkは、実行中のシステムでアプリケーションをプロファイリングするための優れたツールです。Linux 用の同様のツールはありますか?

OProfileの可能性があるように見えますが、使用した人はいますか?

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

python - オープン ソース プロファイリング フレームワーク?

アプリケーションのパフォーマンスが静的ビルドまたは共有ビルド、ストリップまたは非ストリップ、upx または no upx、gcc -O2 または gcc -O3、ハッシュまたは btree などとして優れているかどうかをテストして定量的に示したいと思ったことはありませんか?これはあなたのためのスレッドです。アプリケーションを調整する方法は何百もありますが、各実験の結果をどのように収集、整理、処理、視覚化するのでしょうか。

Mozilla のPerftasticとコンセプトが似ているオープン ソース アプリケーション パフォーマンス エンジニアリング/プロファイリング フレームワークを数か月間探していました。そこでは、さまざまなチューニング実験の何百もの化身を​​開発/ビルド/テスト/プロファイリングできます。

いくつかの要件:

プラットホーム

SUSE32 および SUSE64

データ形式

非常に柔軟で、コンパクトで、シンプルで、階層的です。いくつかの可能性があります。

データ収集

柔軟でカスタマイズ可能なプラグイン。/proc、sys 時間、経過時間、CPU 使用率、メモリ プロファイル、リーク、valgrind ログ、アリーナの断片化、I/O、localhost ソケット、バイナリ サイズ、開いている fds からのパフォーマンス データなど、アプリケーションから収集するデータはたくさんあります。など。ホストシステムからのものもあります。これに私が選んだ言語は Python です。これらのプラグインを開発して、すべての異なる形式のデータを監視および/または解析し、それらをフレームワークのデータ形式で保存します。

タグ付け

GCC のバージョンやコンパイル オプション、プラットフォーム、ホスト、アプリ オプション、実験、ビルド タグなどのデータを含むすべての実験にタグが付けられます。

グラフ化

歴史、比較、階層、動的、静的。

  • アプリケーションのビルドは、過去 3 年間連続して新しいアプリ バージョンを 1 日に数回リリースするカスタム CI サーバーによって行われます。これが、継続的な傾向分析が必要な理由です。新しい機能を追加したり、バグを修正したり、ビルド オプションを変更したりするときに、プロファイリング データを自動的に収集して傾向を確認したいと考えています。これは、さまざまな静的ビルドの生成が必要な場所です。
  • 分析に関しては、 Mozilla 動的グラフは比較グラフ作成に最適です。異なるタグ間の比較グラフがあれば素晴らしいと思います。たとえば、N ビルド バージョンの比較、プラットフォームの比較、ビルド オプションの比較などです。
  • 3K テストのテスト スイートがあり、データはテストごとに収集され、テスト間データからテストごと、タグ付けされたグループごとにグループ化され、回帰スイートが完成します。
  • 可能性にはRRDToolOrcaGraphiteが含まれます

グループ分けによる分析

  • マックス
  • 中央値
  • 平均
  • 標準偏差

プレゼンテーション

これらはすべて、アプリ サーバーを介して表示および制御されます。できれば、Django または TG が最適です。

インスピレーション

0 投票する
5 に答える
377 参照

sql-server - パフォーマンスのために sqlserver 2005 データベースをプロファイリングする最良の方法は何ですか?

どのようなテクニックを使用しますか? 実行に最も時間がかかるジョブをどのように見つけますか? 問題のあるアプリケーションを見つける方法はありますか?

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

c# - C# WPF でのメモリ リーク

C# でのメモリ リークの原因を突き止めるためのアドバイスを参考にしてください。メモリ リークとは何か、C# で発生する理由はわかりましたが、過去にどのようなツールや戦略を使用して解決したのでしょうか?

.NET メモリ プロファイラを使用していますが、巨大なメイン​​ オブジェクトの 1 つが、管理するウィンドウを閉じた後もメモリ内に残っていることがわかりましたが、そのオブジェクトへのすべてのリンクを切断する方法がわかりません。

十分に明確でない場合は、質問付きの回答を投稿してください。それに応じて質問を編集します。ありがとう!

0 投票する
7 に答える
3077 参照

sharepoint - SharePoint アプリケーションのプロファイリングのベスト プラクティス

作業している SharePoint アプリケーションの応答時間が不十分な場合、その原因をどのように特定し、どの順序で実行しますか? これまでのところ、SharePoint セグメントに特化したオープン ソースまたは商用のプロファイリング ツールをまだ見つけていないので、ツールやベスト プラクティスへのポインタをいただければ幸いです。

PS。Web パーツのプロファイリング オプションは知っていますが、アプリケーション全体をカバーするものを探しています。

0 投票する
8 に答える
1209 参照

logging - プロファイリングとロギングの違いは何ですか?

プロファイリングとロギングの違いは何ですか?

プロファイリングをパフォーマンス測定に使用して、各機能にかかる時間を確認するだけですか? それとも私はオフですか?

通常、プロファイリング ライブラリはどのように使用されますか?

プロファイリングによって取得される統計の種類は何ですか?