2009-07-13 3 views
2

JetBrains dotTrace를 사용하고 있습니다. 내 CPU가 인 앱을 프로파일했습니다. 그러나 당신이 트리를 걸어 내려갈 때의 결과는 위의 레벨 인에 합쳐져 있지 않습니다. 나는 메소드 호출에서 질문 메소드의 노드 본문이 아닌 것을 볼 수 있습니다.JetBrains dotTrace, 소스 코드를 한 줄씩 프로파일 링 할 수 있습니까? 다른 도구가 필요합니다.

소스 코드를 라인별로 프로파일 링 할 수 있습니까.

즉, 하나 개의 노드 :

  • SimulatePair() 99.04 %
    --nextUniform() 30.12 %

그래서 방법이 nextUniform를 호출
--IDCF() 24.08 % + IDCF는 SimulatePair에서 54 %의 시간을 사용합니다 (또는 전체 실행 시간이 54 %입니다). SimulatePair의 다른 46 %가 무슨 일이 일어나고 있는지에 관계없이 IDCF는 한 줄씩 세부 사항을 필요로합니다.

어떤 도움이나 다른 도구가 대단히 감사합니다.

감사

답변

2

체크 아웃 ANTS ...

라인 레벨 코드 타이밍 - 그것은 간단 책임 성능 이

+0

그냥 달아서 꽤 느리게 실행되지만 아주 좋아, 정확히 내가 원했던 것, 감사합니다. – m3ntat

+0

환상적인 도구, 라이센스 가격 가치. –

+0

또한 어떻게 결과를 해석합니까, 나는 (스레드 차단) 상단에있다 시간 35.781 %, 아이들과 시간 67 % 정확히 무슨 뜻입니까? 이것은 단일 스레드 애플 리케이션이지만 위의 소리는 꽤 나쁘다. – m3ntat

-2

Here's the method I use.이 비 효율성 코드의 특정 라인 로 드릴 다운 , 무료, 당신에게 라인 정보를 제공하고, 그러한 혼란을 겪지 않습니다.

0

향후 검색자를 위해 dotTRACE 4.0 BETA은 줄 단위 프로파일 링을 지원합니다. 끝없는 반복을 찾는데 도움이되었습니다.

+0

그래도 그래도 "스레드 시간"은 CPU 소비량에 대한 정의입니다 (쓰레드가 잠들지 않고 대기하지 않음). 4.5.1 평가판을 사용했습니다. – Marcel

1

dotTrace 6은 라인별로 프로파일 링을 지원합니다. 또한 Profiler API를 사용하여 응용 프로그램의 어떤 부분을 PerformanceProfiler.Start 및 PerformanceProfiler.Stop을 통해 프로파일 링할지 코드를 통해 설정할 수 있습니다.

정말 사용하기 쉽고 강력합니다.

관련 문제