2012-03-23 2 views
1

접근자를 함수로 인라인하는 성능 향상을 측정하려고합니다.VisualVM을 사용하여 메소드의 총 총 시간을 얻는 방법

인라이닝의 결과로, 방법의 자체 시간이 증가합니다 (물론).

메서드의 총 시간과 호출을 측정해야합니다. VisualVM에서 프로파일 러는 전체 자체 시간을 나열하고 스냅 샷은 호출 트리의 각 위치에 대한 총 시간을 제공 할 수 있습니다. 내가 측정 할 필요가있는 것은 애플리케이션 전체의 총 총 시간입니다.

감사

답변

1

기본 성능 조정이 면책 조항 : 당신이 방법을 인라인 할 필요가 확실합니까? JVM (v1.6부터)은 필요할 때 자동으로이 작업을 수행합니다. Java에서 함수를 인라인하는 것이 매우 드뭅니다.

VisualVM을 사용하면 측정 할 클래스를 정의 할 수 있습니다. 호출 클래스 (함수를 인라인 한 클래스) 만 정의하거나 적어도 함수를 인라인하려는 클래스를 제외하면 호출 된 모든 함수가 '자체 시간'에 추가됩니다.

+0

+1 필요에 따라 핫 스폿 VM에서 인 액세서가 인라인됩니다. –

+0

감사합니다. 프로파일을 관심있는 클래스로 제한하는 사전 설정을 만들면 콜 트리의 함수에 대해 하나의 항목 만 얻습니다. 고마워, 내가 필요한 모든 통계가있다. – jsj

관련 문제