問題タブ [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.
asp.net - ASP.NET パフォーマンスのボトルネックの謎
従来の ASP.NET アプリ - AppSrv + MS SQL DB。どちらのサーバーも 8 コア、20 GB の RAM を搭載した重量物です。負荷テストを行うと、スループットは (LoadRunner によると) 400 VirtualUsers になり、主にアイドル状態の DB サーバーで CPU が約 30% 使用されます。応答時間は劇的に増加し、応答しなくなります。
最大プールが使い果たされている、ASP.NET の接続制限が設定されているなどの通常の疑いは、誤りではありません。最大プールは 200 に設定され、約 80 の接続が使用されます。接続制限は 0 に設定されます。
コードを ANTS プロファイラーで実行したところ、スレッド ブロックが大きく寄与していないことがわかりました。
アイデア大歓迎です!
vba - MicrosoftWordのVBAコードのプロファイリング
VBAを使用して単語ドキュメントを解析し、XML出力を構築するレガシーコードがいくつかあります。
言うまでもなく、犬のように動作しますが、どこで故障しているのか、そしておそらくそれをより速くするためのいくつかのオプションがあるかどうかを確認するためにプロファイリングすることに興味がありました。
結果の測定を開始できるようになるまで何も試したくないので、プロファイリングは必須です-少し検索しましたが、この仕事を簡単に行うものを見つけることができません。ブレントウッドの道具は1つありましたか?コードを変更する必要がありますが、機能せず、時間がなくなりました。
誰もがうまくいく簡単なことを知っていますか?
更新:コードベースは約20ほどのファイルで、それぞれに少なくとも100のメソッドがあります-各メソッドの開始/終了呼び出しを手動で追加することは適切ではありません-特に後でそれらをすべて削除します-私は実際に何らかの形で行うことを考えていましたこの問題を解決するための正規表現と、後でそれらをすべて削除するための正規表現ですが、少し煩わしいですが、唯一の解決策である可能性があります。私は以前にここでいくつかの素晴らしいタイミングコードを見つけたので、それのタイミング部分は問題ではありません。
php - PHP アプリのメモリ使用量を視覚的に分析するツール
PHP アプリケーションによるメモリ使用量の分析を容易にするフリーウェアまたは商用のものはありますか? xdebug が関数呼び出しによるメモリ使用量を示すトレース ファイルを生成できることは知っていますが、グラフィカル ツールがないとデータを解釈するのは困難です。
理想的には、総メモリ使用量だけでなく、ヒープ上にあるオブジェクトと、Jprofilerのように誰がそれらを参照しているかを表示できるようにしたいと考えています。
windows-mobile - Windows CE/Mobile 向けのコード プロファイリング / パフォーマンス分析ツール
Windows CE/Mobile アプリケーションのパフォーマンスのボトルネックを分析するために、Visual Studio 以外に知っているツールは何ですか? ネイティブ コードにコンパイルされた C/C++ アプリケーションをプロファイリングするために、CE/Mobile 用の AQTime のようなものを探しています。
.net - アプリケーションでシリアライゼーションのオーバーヘッドをプロファイリングするにはどうすればよいですか
私のアプリケーションには、フロントエンドとデータベースの間に WCF サービス層があります。現在 IIS6 でホストしているため、SOAP over HTTP を使用しています。アプリケーションでシリアライゼーション アクティビティに費やしている実際の時間を調べるにはどうすればよいですか?
sql-server - 最も高価なクエリをログに記録して見つけるにはどうすればよいですか?
sql2k8のアクティビティモニターを使用すると、最もコストのかかるクエリを確認できます。わかりました、それは素晴らしいですが、この情報をログに記録したり、クエリアナライザーを介してこの情報を取得したりする方法はありますか?SQL Managementコンソールを開いて、アクティビティモニターダッシュボードを見たくありません。
どのクエリが適切に記述されていないか、スキーマが適切に設計されていないかなどを把握したい。
助けてくれてありがとう!
performance - プロファイラーを使用することもできますが、なぜプログラムを停止しないのでしょうか?
何かがシングル スレッド プログラムの実行に必要な時間の 10 倍の時間を要している場合、そのプログラムに対してプロファイラーを実行できます。また、「一時停止」ボタンで停止することもでき、それが何をしているかを正確に見ることができます.
本来より 10% 遅くても、何度も停止すると、やがて不要なことを繰り返すようになります。通常、問題は実際には必要のないスタックの途中にある関数呼び出しです。これは問題を測定しませんが、確かに見つけます。
編集:反対意見は、ほとんどの場合、サンプルを1つだけ取ることを前提としています。真剣に考えるなら、10 をとってください。40% のような無駄の割合を引き起こしているコード行は、平均して、サンプルのその部分のスタックに表示されます。(シングル スレッド コードの) ボトルネックは、そこから隠れることはできません。
編集:私の言いたいことを示すために、多くの反対意見は「十分なサンプルがないので、あなたが見るものは完全に偽物である可能性があります」という形をとっています - 偶然についての漠然とした考え. しかし、ルーティン内にいるだけでなく、ルーティンがアクティブであるだけでなく、何らかの認識可能な説明が 30% の時間有効である場合、特定のサンプルでそれが見られる確率は 30% です。
次に、サンプルが 10 個だけ取得されたとします。10 サンプルで問題が見られる回数は二項分布に従い、問題が0 回見られる確率は .028 です。1回見る確率は.121です。2回の確率は.233、3回の確率は.267で、その後落ちます。2 回未満で表示される確率は .028 + .121 = .139 なので、2 回以上表示される確率は 1 - .139 = .861 となります。原則として、2 つ以上のサンプルで修正できるものが見つかった場合は、修正する価値があります。
この場合、10 個のサンプルで見られる確率は 86% です。あなたがそれを見ていない 14% にいる場合は、見られるまでサンプルを増やしてください。(サンプル数を20に増やすと、2回以上見る確率が99%以上になります。)ですから、正確に測定したわけではありませんが、正確に見つけたので、それを理解することが重要です。プログラムカウンターではなく、データの状態に関係するものなど、プロファイラーが実際に見つけることができないものである可能性があります。
javascript - Firebug プロファイラーの出力について
Firebug のプロファイラーを使用して、発生している JavaScript パフォーマンスの問題の原因をよりよく理解しようとしてきましたが、出力に少し混乱しています。
一部のコードをプロファイリングすると、プロファイラーはProfile (464.323 ms, 26,412 calls) を報告します。464.323 ミリ秒は、これらの 26,412 回の呼び出しの実行時間の合計であると思われます。
ただし、詳細な結果にドリルダウンすると、平均実行時間が 464.323 ミリ秒を超える個々の結果が表示されます。たとえば、平均時間が最も長い結果では、次の詳細が報告されます。
別の結果レポート:
これら 2 つの結果の間で、時間の結果の合計は 464.323 をはるかに超えています。
では、これらのさまざまな数字は何を意味するのでしょうか。どちらを信頼する必要がありますか?
eclipse - プロファイリングとは何ですか? Java プログラムをプロファイリングするにはどうすればよいですか?
プロファイリングについてはよく耳にします。これは何ですか?私が理解している限り、これはある種のパフォーマンス測定ですが、初心者がアイデアを理解できるように、誰かがこれをより明確に説明することができます. また、Java プログラムには Eclipse IDE を使用しています。Eclipse IDE を使用して自分のプログラムをプロファイリングできますか? プロファイリング中に考慮すべき要素は何ですか (つまり、ベスト プラクティスを意味します)?
perl - Template :: Toolkitでテンプレートのパフォーマンスをプロファイリングするにはどうすればよいですか?
Template :: Toolkitを使用するときに、さまざまなテンプレートのパフォーマンスをベンチマークするための最良の方法は何ですか?
内の他のテンプレートの処理に費やされた時間を除いて、各ブロックまたはテンプレートファイルの処理に費やされたCPU/システム時間を分解する何かが必要です。 たとえば、Devel :: DProfは、テンプレートモジュールのさまざまな内部メソッドに費やされた時間を単に教えてくれるので、これには役に立ちません。