2008-08-14 5 views
78

C# 프로파일 러가 필요합니다.괜찮은 C# 프로파일 러가 있습니까?

나는 돈을 지불하는 것에 싫은 것이 아니지만 구매 주문을 제기하는 데 시간이 걸리기 때문에 무료 또는 시험 버전이있는 것이 이상적입니다.

어떤 권장 사항이 있습니까?

+5

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

+0

질문을 검열하는 이유는 "토론을 요구할 가능성이있다"는 것이 너무 많습니다. –

답변

31

다음과 같은 시도 할 수 있습니다 :


편집 : Nprof가 대체되었습니다. SlimTune과 .Net 4.0 응용 프로그램과 함께 작동합니다.

+7

저는 ProfileSharp를 가지고 놀았습니다. 그것은 절대적으로 끔찍합니다. –

+1

nprof는 .Net 1.1에서만 생각합니다. .Net 1.1로 컴파일 할 수 있다면 프로필을 작성한 다음 .Net 2로 다시 컴파일하여 릴리스하는 것이 유용 할 수 있습니다. 그러나 generics 및 null 가능 유형과 같은 .Net2 기능을 사용하기 시작하면이 작업은 불가능합니다. – redcalx

+1

Matthew와 동의합니다. ProfileSharp는 끔찍하며, 가장 간단한 명령 줄 인 exe에서도 프로필을 만들 수 없습니다. 시간 낭비하지 마라. –

1

현재, Ants 프로파일 러에 대한 나의 열광적 인 팬이 그들을 사용하지 마십시오. 얼마나 비싼 지 잘 모르겠다. MVP에 직원을 배치하면 무료 라이센스를 얻기 위해 MVP를 활용할 수 있습니다.

+0

전체 MVP에 대해 좀 더 자세히 설명해 줄 수 있습니까? 감사합니다, –

+0

MVP는 제품을 무료로 redgate 할 수있는 라이센스를 얻습니다. MVP는 비용을 비공식으로 처리하는 팀원을 보유하고있는 경우 사용자를 끌어들이는 루프 구멍입니다. – DevelopingChris

+0

이 허점을 설명하고이를 활용하는 방법에 대한 링크가 있습니까? –

4

나는 AQtime을 사용했으며 절대로 실망시키지 않았습니다. 평가판이 있다고 확신합니다.

+0

AQTime은 ANT보다 관리되지 않는 코드를 지원한다는 점에서 큰 이점이 있습니다. –

40

1 년 반 전에 대규모 C# 프로젝트에서 Ants profiler을 사용했습니다. 비용이 많이 들었을 때 정말 대단히 훌륭하게 수행되었으며, 비싼 경쟁 업체 중 일부를 능가했습니다.

거의 한 줄씩 해상도별로 비용을 계산합니다.

+1

나는 개미도 좋아해. 레드 게이트 출신입니다. – Marcel

29

dotTrace은 JetBrains에서 널리 사용됩니다.

패트릭 스맥 챠 (Patrick Smacchia)의 굉장한 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의 하이 엔드 버전에 하나가 있다고 언급하는 것은 흥미 롭습니다. 저는 항상 실행 프로파일 링에 충분하다는 것을 알았습니다. 메모리 프로파일 링에 대해서는 이미 언급 한 메모리 프로파일 러를 사용하지만 은 일반적으로 '프로파일 러'로 설명하는이 아닙니다.

어떤 종류의 프로파일 링을 시도하셨습니까?

3

두 번째는 red gate's ANTS profiler입니다. 나는 정말 어려운 문제들을 추적하는데 사용했고, 사용하기 쉽고 (학습 곡선이 낮다), 이해하기 쉬운 방법으로 멋지고 자세한 데이터를 제시했다. 가격표는 가치가 있지만 무료는 아닙니다 ...

6

.NET Memory Profiler을 사용합니다. 좀 못생긴하지만 매달려있는 참조를 찾는 데 매우 유용합니다.

나는 원래 매우 섹시 Red Gate's ANTS profiler을 시도했지만 볼의 메모리 누수 지점에서 다음과 같은 이유로 짜증 :

1) 그 터무니없이 느린. 응용 프로그램을 녹화하기 시작하는 데 30 분이 걸렸습니다 (적색 게이트없이 20 초 소요).

2) 레드 게이트는 자체 도구로 자체 도구를 실행해야합니다. 두 개의 스냅 샷을 완성 할 때까지 900MB의 메모리를 사용했습니다! 레드 게이트 개미의 타이밍 구성 요소가 인상적이었다 그러나 그 다음

+2

둘 다 v4를 사용해 보셨습니까? 이제는 훨씬 더 좋습니다. – thecoop

1

. 그냥 사소한 (작은 크기) 응용 프로그램을 처리하지 않는 한, 메모리 프로파일 러와 귀찮게하지 않습니다.

:(추락 내가 있었다 닷넷 메모리 프로파일

0

메모리 사용을 프로파일 링하는 것은 매우 좋지 않다하지만 행운은 프로파일 러는 비주얼 스튜디오의 일부 버전에 포함하지 실행 속도 프로파일 링의 아주 좋은 일.

+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 (퍼포 레이션와 메모리) 또는 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 러너에 잘 통합되어 있습니다. 결과는 유연한 트리/목록 스타일로 표시됩니다 (LINQ를 사용하여 선택 항목을 만들 수 있음). 표시된 메소드를 두 번 클릭하면 소스 코드로 직접 이동합니다.