넷빈 6.5 에서 profiler 사용하기 - 02

0

Written on 오전 4:48 by 강여사(J.Y.Kang)

그럼 이번에는 다른 성능분석을 위해 세션을 종료하겠습니다.
profile- stop profiling session



이번에는 CPU 성능 측정을 해보도록 하겠습니다.

이러한 CPU 작업을 선택할 때에는 .어플리케이션의 메소드-수준 CPU 성능(실행 시간)을 프로파일하고 실시간으로 결과를 처리합니다. 당연히 오버헤드가 꽤 되게 때문에, 설정을 통해 전체 어플리케이션의 성능을 분석할 것인지, 아니면 어플리케이션 코드의 일부를 프로파일링 할 것인지, 심지어 특정 코드 조각(fragment)로 다운할 것인지 선택할 수 있습니다.

이때 나타나는 추정치(overhead)는 대략적으로 그린거라 눈금을 너무 자세히 들여다 볼 필요는 없습니다. --; (2개라고 20%는 아니라는 뜻 --;; )

전체 어플리케이션에 대한 CPU 성능분석을 하고자 하면 그냥 Entire Application 이 선택된 상태로 Run (실행)하면 됩니다.



오버헤드를 줄이기 위해 (또는 동시에 결과 범위를 줄이기 위해 ^^;) 부분만 프로파일링 하는 방법을 설명하도록 하겠습니다.

Part of application 으로 라디오 버튼을 바꾸고, 옆에 있는 define를 누릅니다.



주. 어플리케이션의 부분을 프로파일하기 위해, 우선 하나나 그 이상의 루트 메소드를 지정해야 합니다. 루트 메소드는 매개 루트로 지정될 소스 코드 안의 메소드, 클래스나 패키지로, 프로파일링 데이터는 어플리케이션 쓰레드 중 하나가 매개 루트를 들어오고 나갈 때 수집되게 됩니다. 어플리케이션 쓰레드 중 하나가 루트 메소드에 들어오기 전에는 어떠한 프로파일링 데이터도 수집되지 않습니다.

Select Root Method 팝업창이 뜨는데 여기서 Add project 를 클릭합니다.



프로젝트안의 쭈욱~~ 따라 들어가서 WordLibrary 를 선택합니다. 이 자바 클래스를 루트로 삼아 CPU 프로파일링을 분석할 계획이라는 뜻입니다.
Ok




그럼 자동적으로 저렇게 그림처럼 올라옵니다.
ok



그런 다음 필터를 사용할 수도 있는데, 필터는 매개된 클래스를 제한할 수 있습니다.



Show filter value 클릭하여 필터된 클래스의 목록을 볼 수 있는데, 미리 정의된 프로파일링 필터를 선택하거나 아니면 직접 사용자 정의 필터를 만들 지 선택할 수 있습니다.

profile only project classes 선택하고 실행 (run)



실행하게되면 다시 어플리케이션이 실행되고, 프로파일링 세션이(이번에는 CPU 분석)으로 시작되는데, 그림처럼 자동으로 프로파일링 후 Live Profiling Results 가 나타난다. (안 나타나면 Profiler 패널에서 Live Profiling Results를 클릭한다. 그리고 아래 그림처럼 차트를 보고자 하면 Live Profiling Result 창 오른쪽 위의 조그만 아이콘을 누르면 아래 그림처럼 나타난다. )



계속...

If you enjoyed this post Subscribe to our feed


No Comment

댓글 쓰기