Jaké jsou některé dobré .NET Profilometry?

hlasů
374

Co profilers jste použili při práci s .NET programů, a které byste obzvláště doporučil?

Položena 06/08/2008 v 21:14
zdroj uživatelem
V jiných jazycích...                            


30 odpovědí

hlasů
285

Použil jsem JetBrains dotTrace a Redgate mravenci značně. Oni jsou docela podobná funkcemi a cenou. Oba nabízejí užitečný výkon profilování a zcela základní paměti profilování.

dotTrace integruje Resharper, který je opravdu pohodlné, jak můžete profil výkonnost testu jednotky s jedním kliknutím z IDE. Nicméně dotTrace často vypadá, že dá falešné výsledky (např říkají, že metoda trvalo několik let ke spuštění)

Dávám přednost způsob, jakým Mravenci prezentuje výsledky profilování. Ukáže vám zdrojový kód a nalevo od každého řádku vám řekne, jak dlouho to trvalo spustit. dotTrace má jen stromový pohled.

EQATEC Profiler je zcela základní a vyžaduje, abyste sestavit speciální instrumentace verze svých sestav, které pak mohou být spuštěny v EQATEC Profiler. Je to však zadarmo.

Celkově dávám přednost mravenci pro výkon profilování, ale pokud budete používat Resharper pak integrace dotTrace je vrah funkce a znamená, že bije mravenci v použitelnosti.

Volný Microsoft CLR Profiler ( .NET Framework 2.0 / .Net Framework 4.0 ), je vše, co potřebujete pro NET paměti profilování.

2011 Aktualizace:

Paměti Profiler Scitech má docela základní uživatelské rozhraní, ale spoustu užitečných informací, včetně některých informací o neřízeným paměti, která dotTrace a mravenci postrádají - můžete najít užitečné, pokud děláte volání Interop modelu COM, ale ještě jsem se najít nějaké profilování, které umožňuje COM problémy s pamětí snadno diagnostikovat - ty mají obvykle vypuknout windbg.exe.

Mravenci Profiler má přijít na mílovými kroky v posledních několika letech, a jeho paměť Profiler má několik opravdu užitečných funkcí, které ji teď tlačily před dotTrace jako balíček ve svém odhadu. Je mi to štěstí, že licence pro obě strany, ale pokud se chystáte koupit jeden NET profiler pro výkon a paměť, aby to mravenci.

Odpovězeno 19/09/2008 v 09:29
zdroj uživatelem

hlasů
88

Jiní se vztahuje výkon profilování, ale s ohledem na paměťovou profilování jsem v současné době vyhodnocuje jak Vědeckotechnické NET paměti Profiler 3.1 a mravenci Memory Profiler 5.1 (aktuální verze v září 2009). Snažil jsem se JetBrains jeden rok nebo dva před a to nebylo tak dobré, jako mravenci (pro paměti profilování), takže jsem se neobtěžoval tentokrát. Při čtení webových stránek, vypadá to, že nemá stejný paměti profilování rysy jako ostatní dva.

Oba Mravenci a Scitech paměť profiler mají vlastnosti, které druhý nikoli, takže což je nejlepší bude záviset na vašich preferencích. Obecně lze říci, že jeden Scitech poskytuje podrobnější informace, zatímco ANTS je opravdu neuvěřitelné identifikovat objekt unikající. Celkově dávám přednost mravenci jedno, protože to je na identifikaci možných úniků tak rychle.

Zde jsou hlavní výhody a nevýhody každého z mých zkušeností:

Společné vlastnosti mravenců a Scitech .NET Profiler paměť

  • Funkce analýzy v reálném čase
  • Výborný jak na videa na svých webových stránkách
  • Snadné použití
  • Přiměřeně výkonný (zřejmě pomalejší než bez profilování připojené, ale ne tolik, budete frustrováni)
  • Ukázat případy úniku objektů
  • V podstatě oba dělat svou práci docela dobře

ANTS

  • One-Click filtry najít společné úniky patří: objekty udržován při životě pouze obsluh událostí, objekty, které jsou umístěny, ale stále žijí a objekty, které jsou pouze udržován při životě pomocí odkazu z likvidovaného objektu. To je pravděpodobně ten vrah funkce mravenců - zjištění úniku je neuvěřitelně rychlý protože toto. Z vlastní zkušenosti vím, že většina úniků je způsobeno obsluh událostí není právě sundal a Mravenci vás prostě dostanete přímo k těmto objektům. Úžasný.
  • Objektů retenční graf. Zatímco stejný info je k dispozici v Scitech, je to mnohem jednodušší, aby interpretovat mravenci.
  • Ukazuje velikost s dětmi vedle velikosti samotného objektu (ale pouze tehdy, když je vybrána instance bohužel ne v celkovém seznamu třídy).
  • Lepší integrace do Visual Studio (klepněte pravým tlačítkem myši na graf skočit do souboru)

Scitech .NET Profiler Memory

  • Ukazuje trasování zásobníku, kdy byl objekt přidělen. To je opravdu užitečná pro objekty, které jsou přiděleny v mnoha různých místech. Mravenci, že je obtížné přesně určit, v němž byla vytvořena unikly objekt.
  • Ukazuje počet jednorázových předmětů, které nebyly odstraněny. I když není svědčící o netěsnosti, to identifikovat příležitosti k vyřešení tohoto problému a zlepšit svůj výkon aplikací v důsledku rychlejšího garbage collection.
  • Podrobnější možnosti filtrování (několik sloupců může být filtrován samostatně).
  • Uvádí informace o celkovém vytvořené objekty (včetně těch, odpadky shromažďují). Mravenci se zobrazí pouze Live 'objektu statistiky. To usnadňuje analyzovat a optimalizovat výkon celkově aplikace (např. Určit, ve kterých spousta objektů vytvářeny zbytečně, které nejsou nezbytně netěsní).

Jako shrnutí, myslím Mravenci vám pomůže najít to, co uniká rychleji, zatímco Scitech poskytuje trochu více podrobností o svém celkovém výkonu paměti aplikace a jednotlivé objekty, jakmile budete vědět, co hledat v místě (např. Zásobník stopy na vytvoření). Pokud byl přidán trasování zásobníku a sledování undisposed jednorázových předmětů mravencům bych vidět, že je třeba použít něco jiného.

Odpovězeno 25/09/2009 v 04:16
zdroj uživatelem

hlasů
45

Nedávno jsem zjistil, EQATEC Profiler http://www.eqatec.com/tools/profiler . Pracuje s většinou verzí .NET a na spoustu platforem. Je snadné použití a její části je zdarma i pro komerční využití.

Odpovězeno 29/08/2008 v 10:46
zdroj uživatelem

hlasů
31

[ Úplné zveřejnění ]

I když ještě není tak plně funkční jako některé další .NET paměťových profilerů zde uvedených, je zde nový vstup na trh s názvem JustTrace . Je vyroben podle Telerik a jeho primárním cílem je, aby se sledování / profilování jednodušší a rychlejší udělat pro všechny typy aplikací (web / Silverlight / desktop).

Pokud jste někdy našel profilování a optimalizaci zastrašující nebo pomalu s jinými nástroji, pak JustTrace by stálo za to podívat.

Odpovězeno 22/08/2011 v 16:42
zdroj uživatelem

hlasů
25

Nezapomeňte nProf - s prefectly dobrý, freeware Profiler.

Odpovězeno 06/08/2008 v 21:19
zdroj uživatelem

hlasů
14

Zjistil jsem, že dotTrace Profiler by JetBrains být vynikající profilování nástrojem pro .NET a způsob jejich ASP.NET je kvalita.

Odpovězeno 04/03/2009 v 23:23
zdroj uživatelem

hlasů
12

Mravenci Profiler . Osobně jsem nepoužil mnoho, ale já opravdu nemám žádné stížnosti o mravencích. Vizualizace je opravdu užitečná.

Odpovězeno 06/08/2008 v 21:19
zdroj uživatelem

hlasů
11

Pokud hledáte něco, rychlé, snadné a zdarma vám, http://code.google.com/p/slimtune/ Zdá se dělat svou práci dobře.

Odpovězeno 29/12/2010 v 21:04
zdroj uživatelem

hlasů
11

AutomatedQA AQTime pro načasování a SciTech MemProfiler pro paměť.

Odpovězeno 29/08/2008 v 10:49
zdroj uživatelem

hlasů
9

Pracoval jsem s JetBrains dotTrace pro WinForms a konzole Apps (dosud testován na ASP.net), a to funguje docela dobře:

Nedávno se také přidal „Osobní licence“, který je podstatně levnější než ten právnických osob. Přesto, jestli někdo ví, že některé levnější, nebo dokonce volné ty, tak bych rád slyšel, stejně :-)

Odpovězeno 06/08/2008 v 21:17
zdroj uživatelem

hlasů
7

Nezapomeňte na úžasné SciTech .net paměti Profiler

Je to skvělé pro vystopování, proč se vaše .net app nedostatek paměti.

Odpovězeno 15/10/2008 v 23:25
zdroj uživatelem

hlasů
5

Dodal bych, že dotTrace Schopnost diff paměťové a stopových výkon sezení je naprosto neocenitelné (Mravenci může mít také funkci paměti diff, ale neviděl jsem výkonnostní rozdíl).

Být schopen před spustit profilování relace a po opravy chyby nebo vylepšení, a pak porovnávat výsledky je nesmírně cenná, a to zejména s aplikací mamutí starších NET (jako v mém případě), jejichž plnění nikdy nebyl prioritou a kde nález úzká místa by mohla být velmi únavné. Dělá před a po diff vám umožní vidět změny v počtu volání pro každou metodu a změny v délce trvání pro každou metodu .

To je užitečné nejen při změnách kódu, ale také, pokud máte aplikaci, která používá jinou databázi, řekněme, u každého klienta / zákazníka. Jestliže jeden zákazník stěžuje na pomalost, můžete spustit profilování relace pomocí své databáze a porovnat výsledky s „rychlým“ databázi zjistit, které operace přispívají k pomalosti. Samozřejmě existuje mnoho nástrojů databáze na straně výkonu, ale někdy mám opravdu pomáhá vidět metriky výkonu ze strany aplikace (protože to je blíže k tomu, co uživatel to vlastně vidí).

Sečteno a podtrženo: dotTrace funguje skvěle, a rozdíl je neocenitelná.

Odpovězeno 08/04/2009 v 00:29
zdroj uživatelem

hlasů
4

AQTime je rozumné, ale má trochu křivku učení a není tak snadné jako vestavěné v jednom v Team Suite

Odpovězeno 04/03/2009 v 23:19
zdroj uživatelem

hlasů
3

Současná verze SharpDevelop (3.1.1) má pěknou integrovaný Profiler. Je to poměrně rychle, a integruje velmi dobře do SharpDevelop IDE a jeho NUnit běžce. Výsledky se zobrazují v pružném stylu Tree / List (pomocí LINQ vytvořit svůj vlastní volby). Dvojklikem zobrazené metodu skočí přímo do zdrojového kódu.

Odpovězeno 08/02/2010 v 14:15
zdroj uživatelem

hlasů
3

V minulosti jsem používal profiler, který je dodáván s Visual Studio Team System .

Odpovězeno 31/08/2008 v 06:12
zdroj uživatelem

hlasů
2

Chtěl bych dodat YourKit Java a .NET profilování, I love it for Java, jsem se snažil .NET verze ačkoli.

Odpovězeno 15/06/2010 v 10:56
zdroj uživatelem

hlasů
2

Nejnovější verze mravenců paměti profilování (myslím, že je to 5) jednoduše skály !!! Byl jsem strašení únik pomocí WinDbg a SOS, protože se ukázalo, že nejlepší způsob, jak před, tak jsem se snažil mravenci a mám to za pár minut. Opravdu skvělý kus software.

Odpovězeno 07/07/2009 v 23:07
zdroj uživatelem

hlasů
2

Pochybuji, že profilování, který je dodáván s Visual Studio Team System je nejlepší profiler, ale já jsem zjistil, že je dost dobrý na mnoha příležitostech. Co konkrétně budete potřebovat rámec toho, co VS nabídkách?

EDIT: Bohužel je k dispozici pouze v VS Team System, ale pokud máte přístup k té, která stojí za to mimo kontrolu.

Odpovězeno 04/03/2009 v 23:20
zdroj uživatelem

hlasů
2

Nezkoušel to sám, ale možná dotTrace ? Jejich aplikace ReSharper je jistě dobrá. Možná dotTrace je taky :)

Odpovězeno 04/03/2009 v 23:19
zdroj uživatelem

hlasů
2

Pracoval jsem s Redgate v Profiler v minulosti. Dělal práci za mě.

Odpovězeno 06/08/2008 v 21:17
zdroj uživatelem

hlasů
1

Pokud Licensing je problém, můžete zkusit windbg na paměti profilování

Odpovězeno 02/02/2012 v 16:36
zdroj uživatelem

hlasů
1

Byl jsem testování Telerik je JustTrace nedávno a ačkoli to je daleko od hotového výrobku kluci jdou správným směrem.

Odpovězeno 02/09/2011 v 14:05
zdroj uživatelem

hlasů
1

NuMega Pravda Time Profiler žije v DevPartner Studio Micro Focus. To zajišťuje přívod a metodě úrovni for .NET aplikací, které vyžadují pouze PDBs, není potřeba zdroj (ale pomáhá to.) Lze rozlišovat mezi algoritmicky těžké rutiny oproti těm s dlouhým I / O vyčkávání s použitím naše patentovaná na niti režimu jádra časování ovladač. Verze 10.5 je dodáván s novou podporou 64-procesním ze dne 4. února 2011. Nestyda konektor: Pracuji na produktové řady DevPartner. Návaznosti na http://www.DevPartner.com po zprávách o 10,5 startu.

Disclaimer: Já jsem produktový manažer pro DevPartner v Micro Focus.

Odpovězeno 31/01/2011 v 04:16
zdroj uživatelem

hlasů
1

Pro mě SpeedTrace je nejlepším nástrojem na trhu, protože to není jen vám pomohou najít úzká místa uvnitř vašich aplikací. To vám také pomůže v situacích, řešení potíží zjistit, proč byla přihláška shazovat, vaše nastavení nenainstaloval, aplikace zavěsil váš výkon aplikací je někdy chudé v závislosti na vstup dat, například k identifikaci pomalé db transakcí.

Odpovězeno 07/08/2010 v 12:31
zdroj uživatelem

hlasů
1

Musím přinést úžasný nástroj ke svému oznámení, které jsem použil někdy zpět. AVICode Interceptor Studio . Ve svém předchozím podniku jsme použili tento nádherný nástroj profilovat WebApplication ( To má být jediný největší webových aplikací na světě a největší civilní IT projektem kdy udělal ). Představení tým udělal zázraky s pomocí této nádherné nástroje. Je to bolest jej nakonfigurovat, ale to je jeden čas činnost a já bych řekl, že stojí za to čas. Získat tuto stránku pro podrobnosti.

Díky, James

Odpovězeno 16/03/2010 v 22:07
zdroj uživatelem

hlasů
1

Performance Analyzer Intel® VTune ™ pro rychlé vzorkování

Odpovězeno 19/09/2008 v 09:48
zdroj uživatelem

hlasů
1

Nešťastné většina profilerů Zkoušel jsem selhala při použití s ​​ocasními hovory, nejvíce pozoruhodně mravenců. Jen jsem skončit psát své vlastní. K dispozici je jednoduchá implementace na CodeProject, který můžete použít jako základ.

Odpovězeno 19/09/2008 v 09:38
zdroj uživatelem

hlasů
0

Pokud jste na ASP.NET MVC, můžete zkusit MVCMiniProfiler (http://benjii.me/2011/07/using-the-mvc-mini-profiler-with-entity-framework/)

Odpovězeno 13/03/2012 v 15:41
zdroj uživatelem

hlasů
0

Vybrali jsme YourKit Profiler pro .NET v mé společnosti, jak to bylo nejlepší hodnota (cena vs. funkce). Pro malou firmu, která chce mít flexibilní licencí (plovoucí licence) bylo ideální volbou - Mravenci byl developer sedadlo medailonek v té době.

Samozřejmě, že nám poskytuje možnost připojit k probíhajícím procesu, které nebylo možné s dotTrace. Dejte si pozor i když to pro připojování není tou nejlepší volbou, protože vše .NET zpomalí, ale je to jediný způsob, jak profil NET aplikace založená jinými procesy. Mají moudré, mravenci a dotTrace byly lepší - ale nakonec YourKit bylo dost dobré.

Odpovězeno 09/01/2012 v 17:12
zdroj uživatelem

hlasů
0

Zjistil jsem spoustu problémů ve velkém C # aplikace používat tento .

Obvykle dochází k problému při spuštění nebo vypnutí jako zásuvné moduly jsou načteny, a velké datové struktury jsou vytvořeny, zničená, serializovat nebo rekonstruován. Často jsou vytvořeny a inicializaci více než jednou, a změna manipulátory dostat přidáno vícekrát, další slučování problém.

V případech, jako je tento program může být tak pomalé, že pouze dva vzorky jsou dostatečné určit viníky místa způsob / funkce / nemovitost volání.

Odpovězeno 05/06/2009 v 16:17
zdroj uživatelem

Cookies help us deliver our services. By using our services, you agree to our use of cookies. Learn more