2008-08-14 5 views
78

私はC#プロファイラが必要です。そこにまともなC#プロファイラーはありますか?

私は1つを支払うのに嫌うわけではありませんが、購入注文を行うには時間がかかりますので、無料または少なくとも試用版では理想的です。

推奨事項

+5

[What Are Some Good .NET Profilers?](http:// stackoverflow。 –

+0

質問を検閲する理由は、「議論を求める」可能性が高いということです。 –

答えて

31

あなたは次のことを試すことができます。

  • nprof(無料しかし、ちょっと古い)
  • ProfileSharp(オープンソース)
  • .Net Memory Profiler(メモリリークのために本当に良い、試用版があります)

編集: Nprofが置き換えられましたSlimTuneであり、.Net 4.0アプリケーションで動作します。

+7

私はProfileSharpで遊んだことがあります。それは絶対にひどいです。 –

+1

nprofは.Net 1.1のみと思います。 .Net 1.1にコンパイルすることができれば、それをプロファイルしてから.Net 2にリコンパイルしてリリースすることは有用です。しかし、ジェネリックスやヌル入力可能なタイプなどの.Net2機能を使用し始めると、これは不可能です。 – redcalx

+1

Matthewに同意すると、ProfileSharpはひどいですが、最も単純なコマンドラインのexeでもプロファイルすることはできませんでした。あなたの時間を無駄にしないでください –

1

現在、それらを使用しないで、Antsプロファイラについての私の仲間の仲間です。私はその有料の製品がどれだけ高価であるかわからないことを知っています。 MVPにスタッフを雇った場合、そのライセンスを利用して無料でライセンスを取得できる可能性があります。

+0

MVP全体の詳細をもう少し詳しく説明できますか?ありがとうございます、 –

+0

MVPはあなたのチームにMVPのコストをかけることのない人がいれば、あなたを魅了するループホールを無料で製品のライセンス交付を受けることができます。 – DevelopingChris

+0

この抜け穴を説明し、それをどのように活用するかについてのリンクがありますか? –

4

私はAQtimeを使用しています。私は試し版があると確信しています。

+0

AQTimeはアンマネージドコードをサポートしている点でANTよりも大きな利点があります。 –

40

1年半前に大きなC#プロジェクトでAnts profilerを使用しました。それは、コスト面では非常にうまくやっていましたし、より高価な競合他社よりも優れていました。

ほとんどの行ごとにコストが計算されます。

+1

私はANTSも好きです。それはRedgateのものです。 – Marcel

29

dotTraceが広く使用されている。

パトリックスマクチアの素晴らしい、NDependは、静的解析を提供するのに優れています。

+1

dotTraceは本当に使いやすい優れたプロファイラです。 –

+0

dotTrace 3.1は.NET 4.では動作しません。dotTrace 4.0を待たなければなりません。 –

+1

アップデートとして、dotTrace 4 PerformanceとdotTrace 3.5 Memoryの両方が.NET 4をサポートしています。 – gorohoroh

7

私はAnts profilerを使用しています。それは簡単な方法で非常に詳細な情報を提供します。

2

パトリックSmacchiaの素晴らしいNDependのは 静的 分析を提供するために優れています。

私は徹底的に静的解析のためのNDependのをお勧めしますが、ちょうどあなたが実際にそれが提供する情報のトラック輸送と同様に作業を分析するために脇に一日か二日を入れて、おそらく必要がありますことを警告するものをすべて統計情報は実際にはあなたのコードの意味です。

0

昨日.NET Memory Profilerが見つかりました。私はそれに非常に感銘を受けました。
今日私はライセンスを注文するつもりです。

7

Visual Studioのハイエンドバージョンには1つありますが、実行プロファイリングには十分であることがわかっています。メモリプロファイリングについては、すでに触れられているメモリプロファイラを使用していますが、ではありません。

どのようなプロファイリングをしようとしていましたか?

3

私は2番目になりますred gate's ANTS profilerです。私はそれを使って実際に厄介なパフォーマンス上の問題を追跡しました。使い方が簡単でなく(学習曲線が低い)、わかりやすい方法で素敵で詳細なデータを提示しました。値札は価値がありますが、無料ではありません。

6

.NET Memory Profilerを使用しています。ちょっと醜いですが、ぶら下がっている参照を見つけるのに非常に便利です。

Iは本来非常にセクシーであるRed Gate's ANTS profilerを試みたが、ビューのメモリリークの点からは、次の理由で吸う:

1)その途方もなく遅いです。録画を開始するにはアプリケーションを30秒かかっていた(レッドゲートなしで20秒かかる)。

2)レッドゲートは、独自のツールで独自のツールを実行する必要があります。私は2回のスナップショットを終える頃に900MBのメモリを使っていました!レッドゲートANTSのタイミングコンポーネントが印象的だったしかしその後

+2

両方のv4を試しましたか?それは今より良いオールラウンド今:) – thecoop

1

。ちょうどあなたが些細な(小さなフットプリント)アプリケーションを扱っている場合を除き、メモリプロファイラを気にしないでください。

:(クラッシュ私が持っていましたメモリ使用量をプロファイリングする.NETメモリプロファイラと

0

非常に良いではないが、幸運、プロファイラは、Visual Studioの一部のバージョンに含まれて実行速度をプロファイリングの非常に良い仕事をしていません。

+0

VS2010プロファイラに到達する片道は、ソリューションが読み込まれた後、 "デバッグ"メニューから "開始パフォーマンス分析"を見つけることです。その機能の詳細はhttp://msdn.microsoft.com/query/dev10.query?appId=Dev10IDEF1&l=EN-US&k=k(VS.PERFORMANCE.WIZARD.METHODPAGE)&rd=true – ShawnFeatherly

1

AQtimeは(PERFとメモリの両方)またはANTS(v4パフォーマンスプロファイラまたはv5ベータメモリプロファイラ)ここで

32

EQATEC profilerは非常に良好で完全に無料です。セットアップと使用は簡単で、アプリケーションにオーバーヘッドをあまりにも多く追加しているようには見えません。私はちょうど今日それを使用し始めて、私がそうでなければ見つけなかったいくつかのボトルネックをすでに見つけました。

+0

商用ライセンスでは無料ではありません(しかしまだ安い、$ 200)。 – mhenry1384

+0

はい、最新版のライセンスを変更して商用利用を開始したようです。私はまだ非常にそれをお勧めしたいと思います。 – HullCitySteve

+3

アップデート - ライセンス条項を変更して、標準の.NETアプリケーション(CFやSilverlightではなく)で商用利用できるようになりました。 – HullCitySteve

0

あなたの目標は何ですか?

特定のステートメントを見つけて、実行時間全体にどのような影響を与えているかを大まかに知ることができますか?

For that, I swear by this method.

2

EQATECプロファイラは、ここで仕事をしました。

11

SharpToolbox.comで包括的にlist of profilers for .NETを維持しています。

ここに示唆されているツールがあります。それぞれのツールについては、簡単に説明しています。

+0

これは期限が切れているように見える(redgateのエントリはかなり古い) –

+0

ハリー、これを指摘してくれてありがとうすべてのRedGate製品に関する情報が最新の状態になりました。 http://sharptoolbox.com/authors/red-gate-software – Fabrice

2

現在のSharpDevelop (3.1.1)のリリースには、統合されたプロファイラがあります。これはかなり速く、SharpDevelop IDEとそのNUnitランナーに非常によく統合されています。結果は、柔軟なTree/Listスタイルで表示されます(LINQを使用して独自の選択を作成します)。表示されたメソッドをダブルクリックすると、ソースコードに直接ジャンプします。

関連する問題