문제

난 모든 사람을 사용하여 합리적인 정화.

그래서 당신은 무엇을 측정하려면:

  • 시간에 의해 촬영 기능
  • 최대 메모리 사용법
  • 범위 코드

지금이 순간,우리는 그것을 할 수동으로[를 사용하여 로그에 문으로 타임스탬프 및 다른 스크립트 로그 분석 및 출력을 excel.휴...)

당신은 무엇을 권장합니까?을 가리키는 도구를 또는 어떤 기술을 것 감사합니다!

편집:Sorry,내가 지정하지 않은 환경을 먼저, 는 그것의 일반 C 에서 독자적인 모바일 플랫폼

도움이 되었습니까?

해결책

당신은 아마 다른 도구에 대한 성능 프로파일링하고 코드를 커버합니다.

프로파일링을 위한 선호에 상어 MacOSX.그것은에서 무료로 사과하고 아주 좋습니다.면 바닐라 C 을 사용할 수 있어야한다면,그것의 보류를 얻을 수 있습합니다.

프로파일링을 위한 윈도우에서 사용할 수 있습 LTProf.저렴하지만,하지 않아요:http://successfulsoftware.net/2007/12/18/optimising-your-application/

(나는 생각한 마이크로소프트 정말 촬영 환경에 의지 않을 제공하는 프로파일러와 함께 저렴 버전의 Visual Studio.)

범위에 대한 선호 범위는 검사기에서 Windows:http://successfulsoftware.net/2008/03/10/coverage-validator/ 그것이 업데이트를 적용합니다.

다른 팁

나는이 많이있다.이 있는 경우 IDE 또는 얼음, 가 기술 는 일부를 설명서 노력하지만,작동하지 않고 실패합니다.

경고:현대적 프로그래머는 이 싫어하고 나는 닫힌 영역.그들은 사랑의 도구입니다.하지만 그것은 정말 작품,그리고 당신은 항상 없이 좋은 도구입니다.

나는 가정 당신의 경우에는 코드 같은 것 DSP 또는 비디오에서 실행되는 타이머는 빠르다.가 무엇을 실행에 각 타이머 틱 서브루틴 A.작성 테스트 코드를 실행 서브루틴에서 간단한 루프,말 1000 배,또는 충분히 당신을 기다리는 적어도 여러 초입니다.

를 실행하는 동안,무작위로 중지에 그것을 일시중지 키 및 샘플 호출 스택(지 프로그램 카운터)고 기록한다.(그 설명 부분입니다.) 이렇게 몇몇 수의 시대,다음과 같 10.면 충분하지 않습니다.

지금 보기 위해 간의 공통점 쌓 샘플입니다.보에 대한 어떤 명령이나 통화를 교육에 나타나는 적어도 2 개의 샘플입니다.의 많은있을 것입이지만,그들 중 일부는 것입니다면 코드에서는 최적화 할 수 있습니다.

이렇게 하고,당신을 얻을 것이 좋은 속도 향상을 보장해 드립니다.1000 반복은 더 적은 시간이 걸릴 것입니다.

이유는 당신이 많이 필요하지 않의 샘플은 당신을 찾고 작은 것들입니다.다음과 같이 보이면 특정한 통화에 대한 지시에 5 10 견본 책임은 약 50%of total execution time.더 많은 샘플을 말할 것을 더 정확하게 어떤 비율은,당신은 정말 알고 싶어요.는 경우에 당신도 나처럼,모든 당신이 알고 싶은 곳에 그것은,그래서 당신은 그것을 해결할 수 있습니다,그리고 다음에 이동 하나입니다.

이렇게 할 때까지 당신은 아무것도 찾을 수 없습니다 더하고 최적화하고 당신은에있을 것입 또는 근처의 최고 속도입니다.

복잡한 애플리케이션을 위해 내가 큰 팬의 인텔 Vtune.그것은 약간 다른 사고방식 전통적인 프로파일러는 기기 코드.작동 샘플링을 통해 프로세서 어디를 보시 포인터가 1,000 번 두 번째입니다.그것은 거대한 이점을 필요로하지 않는 모든 변경 사항을 바이너리,이는 자주하지 않고 변경의 타이밍을 하려는 당신이 무엇을 측정합니다.

불행하게도 그것은 좋지 않습니다.net 또는 자바이 있기 때문에 없는 방법에 대한 Vtune 을 지도시 포인터를 기호가 있는 전통적인 코드.

그것은 또한 당신을 측정하는 모든 종류의 다른 프로세서/하드웨어 중심의 측정과 같은 시계 당 instruction cache hits/미스,TLB 타/미스 등을 이유를 식별하는 특정 부분의 코드도 더 이상을 실행하는 당신이 기대하는 것보다 단지 검사하여 코드입니다.

당신이 하고 있는'에 금속을 포함 된'C'시스템이(나 무'mobile'암시에서 당신의 게시물),당신은 일반적으로 몇 가지 종류의 타이머 ISR,에서 그것은 매우 쉽게 예제 코드에서는 인터럽트 발생(에 의해 파고 뒤에서 스택을 보거나 링크를 레지스터 또는 어떤).그런 다음 그 사소한 히스토그램을 만들의 주소에서의 어떤 조합 단위/범위의 관심입니다.

그것은 일반적으로 다음 너무 힘들지 않을 섞어서의 어떤 조합한 코드/스크립트/엑셀트에는 병합하고 히스토그램 계산으로 주소서 당신의 링커 상징/목록 파일을 줄 당신은 프로필 정보.

는 경우 당신은 매우 RAM 제한 될 수 있습니다,약간의 고통의 수집하는 데이터가 충분한 이 둘 간단하고 유용하지만,당신은 것을 말할 필요가 우리에 대한 자세한 플랫폼입니다.

nProf 무료는 않습니다.NET.

작업이 완 적어도 충분히 80/20.(20%의 코드를 복용,시간의 80%)

Windows(.NET 기본 Exe): AQTime 을위한 훌륭한 도구입니다.독립형 또는 Visual Studio 플러그인입니다.

Java:나의 팬 JProfiler.다시 실행할 수 있는 독립형 또는 이클립스(또는 다른 Ide)플러그인입니다.

내가 믿는 모두가 재판 버전입니다.

Google Perftools 은 매우 유용합니다.

내가 사용하는 devpartner 와 MSVC6XP

는 방법은 어떤 공구 작동하는 경우 플랫폼은 독자적인 OS?나는 당신이 최선을 다하고 있는 지금

라이센스 : CC-BY-SA ~와 함께 속성
제휴하지 않습니다 StackOverflow
scroll top