보관함

Unity - 프로파일러란?

niamdank 2020. 7. 19. 20:42

  유니티의 프로파일러란? 

유니티의 프로파일러에 대해 알기 전에 프로파일링의 프로그램 세계에서의 의미를 확인하면 다음과 같다.

프로파일링(profiling, 프로그램 프로파일링/소프트웨어 프로파일링) 또는 성능 분석은 프로그램의 시간 복잡도 및 공간(메모리), 특정 명령어 이용, 함수 호출의 주기와 빈도 등을 측정하는 동적 프로그램 분석의 한 형태이다. 프로파일링 정보는 대개가 프로그램 최적화를 보조하기 위해 사용된다.
- 위키백과[프로파일링 (컴퓨터 프로그래밍) 항목 中]

이것을 통해 유니티의 프로파일러가 유니티로 만들어진 프로그램의 성능을 분석하고 그것의 결과물을 이용해 최적화를 하기 위한 툴이라는 것을 알 수 있다.

 

  프로파일러 실행 방법 

최신 버전의 유니티에서는 상단 메뉴의 [Window] - [Analysis] - [Profiler] 순으로 접근할 수 있으며 구 버전의 유니티에서는 [Window] - [Profiler] 순으로 접근할 수 있다.

간단하게 Ctrl + 7의 커맨드를 입력하여 바로 실행할 수도 있다.

 

  프로파일러의 구성 요소 

유니티 프로파일러 창은 다음과 같이 크게 네 부분으로 구분할 수 있다.

이것을 좌상단의 상자에서부터 시계방향으로 설명하면 다음과 같다.

  • 프로파일러 모듈  프로그램에서 프로파일링할 수 있는 모든 모듈의 리스트
  • 프로파일러 컨트롤  유니티 프로파일러와 연결할 기기 선택 및 프로파일링 간 프레임 이동
  • 프레임 차트  프로파일링 정보를 차트로 확인
  • 모듈 세부 정보 창  모듈마다 필요한 상세 정보를 표시

 

프로파일러 모듈의 종류는 다음과 같다.

  • CPU
  • GPU
  • Rendering
  • Memory
  • Audio
  • Video
  • Physics
  • Physics2D
  • NetworkMessages
  • NetworkOperations
  • UI
  • UIDetails
  • GlobalIllumination

이 중 최적화를 위해 많이 사용되는 것은 CPU와 Memory 정도이며 나머지 기능은 해당 기능에 문제가 발생했을 때 참고를 위해 잠깐씩만 사용된다.