여기에서 설명 된 계측 모델을 .Net 응용 프로그램 성능 프로파일 링에 사용하면 프로필 도구가 성능 측정 코드를 삽입하도록 프로파일 실행 파일로 실행 가능 코드를 변경한다는 의미입니까? 그래서 원래의 실행 코드가 수정 되었습니까?계측 모델을 사용하여 성능 튜닝
http://msdn.microsoft.com/en-us/library/ms242753(VS.80).aspx
관련, 조지
여기에서 설명 된 계측 모델을 .Net 응용 프로그램 성능 프로파일 링에 사용하면 프로필 도구가 성능 측정 코드를 삽입하도록 프로파일 실행 파일로 실행 가능 코드를 변경한다는 의미입니까? 그래서 원래의 실행 코드가 수정 되었습니까?계측 모델을 사용하여 성능 튜닝
http://msdn.microsoft.com/en-us/library/ms242753(VS.80).aspx
관련, 조지
예; 인스트루먼트 된 코드는 인스트루먼트되지 않은 코드와 다릅니다. 그리고 결과적으로 에주의해야합니다. 그러나 대부분의 프로파일 러는 중요한 비트에 집중할 수있는 합리적인 작업을 수행합니다. 필자는 샘플링 옵션에 대해 많은 행운을 얻지 못했습니다.하지만 계측은 종종 유용했습니다. 개인적으로 나는 jetBrains을 좋아합니다. 당신이 무엇을 코드에서 뜨거운 영역을 알 때
샘플링 모드이며, 그것이 바로 실행중인 모든 스레드의 현재 호출 스택을 샘플링합니다 코드를 수정하지 않습니다. 스레드가 만족스럽게 잠자고 있거나 리소스 (뮤텍스, 이벤트 등)를 기다리는 경우 핫 영역으로 계산됩니다. 이 모드를 사용하여로드를 측정하려고합니다.
Instrumnation 모드 (추적)은 각 방법에서 소요 된 시간을 측정합니다.
디버그 기호를 사용하여 코드를 계측해야하지만 시스템에 걸린 오버 헤드가 결국 제외됩니다. 이 모드를 사용하여 단일 프로세스를 측정하려고합니다.
예, 계측기를 사용할 때 프로파일 러는 필요한 성능 데이터를 수집하고 추적하는 추가 지침을 사용하여 코드를 수정합니다. 계측 된 버전의 어셈블리를 배포하고 절대로 디버깅 용으로 계측 된 어셈블리를 사용하고 싶지는 않을 것입니다 (중요한 섹션/경쟁 조건 등은 추가 계측을 통해 다르게 동작 할 수 있습니다).
계측은 프로파일 링이 목표로하는 목표에 매우 유용 할 수 있습니다. 실제 데이터를 수집하고 값 비싼 작업을 분리함으로써 최적화 노력을 적절하게 집중시킬 수 있으며 결과를 정확하게 측정 할 수 있으므로 시간 낭비, 복잡성 증가, 유지 보수 시간 단축 및 조기 최적화와 관련된 기타 모든 문제를 피할 수 있습니다.
쿨, 마크! 두 개의 추가 설명, 1. 계측 모드가 원래 코드 또는 실행 파일을 실제로 변경한다는 것을 확인하십시오. 2. jetBrains은 VSTS의 빌트인 프로파일 러와 비교할 때 무료가 아니며 장점이 있습니까? – George2
샘플링 모델에서 스레드가 대기 상태 일 때 시간을 포함하는 다른 방법은? 올바르게 기억한다면, 샘플링 모델은 대기 스레드에서 시간을 계산하지 못합니까? 그래서 내 응용 프로그램 성능 병목 현상이 일부 스레드에서 항상 기다리는 경우 샘플링 모델을 통해 알 수 없습니다. – George2