-
Notifications
You must be signed in to change notification settings - Fork 2
Profiler Tools
JungSu Kim edited this page Jan 27, 2016
·
1 revision
- Unity Profiler
- Unity Technology
- Mali Graphics Debugger
- Adreno Profiler
- PerfHUD ES
- PVRTun, PVR Trace
- DS-5 Streamline
- Android Studio Device Monitor
- Xcode Instruments
-
CPU 사용량 영역
- Total : 선택한 함수와 관련된 모든 함수의 사용률을 보여줌
- Self : 선택한 함수에 한정된 사용률을 보여줌
- Calls : 함수가 몇 번 호출됐는지 보여줌
- GC Alloc : 가비지 컬렉션을 위해 할당한 메모리양을 보여줌
- Time ms : 선택한 함수와 관련된 모든 함수의 수행 시간을 표시
- Self ms : 함수의 수행 시간을 표시
- Object : 함수가 속한 게임 오브젝트를 표시
-
GPU 사용량 영역
- Total : 선택한 함수와 관련된 모든 함수의 사용률을 보여줌
- DrawCalls : 선택한 함수에서 발생한 드로우 콜 횟수를 보여줌
- GPU ms : 선택한 함수에서 발생한 GPU 수행 시간을 보여줌
- Object : 선택한 함수와 관련된 게임 오브젝트를 보여줌
-
Rendering 영역
- 드로우 콜 횟수(Draw Calls)
- 드로우 콜이란 물체를 그리기 위해서 그래픽 API를 호출하는 작업.
- 그래픽 API를 호출하는 작업은 부하가 큰 작업이므로 이를 최소화하는 것이 성능 향상을 가져옴
- 삼각형 수(Tris)
- 현재 프레임에서 사용하고 있는 삼각면의 수를 보여줌
- 정점의 수(Verts)
- 현재 프레임에서 사용하고 있는 정점의 수를 보여줌
- 배치된 드로우 콜 수(Batched Draw Calls)
- 드로우 콜의 횟수를 최소화하기 위해 같은 메시와 재질을 사용하는 물체들을 모아서 이들을 한 번의 드로우 콜로 그릴 수 있게 최적화를 수행함.
- 이 항목은 같은 머티리얼을 사용해 절약된 드로우 콜 수치를 의미하며 이 수치가 높을수록 최적화나 설계가 잘돼 있음을 의미함.
- 사용한 텍스처 수(Used Textures)
- 현재 화면을 그리기 위해 사용된 텍스처와 이 텍스처들이 차지하는 메모리양을 보여줌
- 렌더 텍스처 수(Render Textures)
- 사용한 렌더 텍스처의 수와 크기, 그리고 현재 프레임에서 얼마나 많은 렌더 텍스처들이 교체(Switches) 됐는지를 보여줌.
- 렌더 텍스처는 주로 포스트 이미지 이펙트에서 많이 사용됨.
- 스크린(Screen)
- 화면의 크기와 화면을 나타내는 데 사용하는 메모리의 양을 표시
- 비디오 메모리 사용량(VRAM usage)
- 현재 사용하고 있는 비디오 메모리의 양을 추정해 보여줌
- 정점 버퍼의 수와 크기(VBO total)
- 메시를 구성하는 기본 정보들의 집합을 정점 버퍼(Vertex Buffer Object)라고 하며, 물체의 수만큼 정점 버퍼가 만들어짐.
- 앞의 숫자는 정점 버퍼의 개수를 나타내고, 뒤의 숫자는 비디오 카드 메모리에 저장된 정점 버퍼의 크기를 나타냄
- 그림자 생성자의 수(Shadow Casters)
- 그림자를 생성하는 물체의 수를 보여줌
- 스킨드 메시의 개수(Visible Skinned Meshes)
- 현재 보여지는 스킨드 메시렌더러 컴포넌트의 수를 나타냄
- 스크닝 작업은 연산량이 많으므로 이 수치를 최대한 줄여야 함
- 애니메이션 수(Animations)
- 현재 동작하고 있는 애니메이션 수를 보여줌
- 드로우 콜 횟수(Draw Calls)
-
Memory 영역
- 씬과 에셋에서 각각 얼마만큼의 메모리들이 사용됐는지 보여줌
-
Audio 영역
- Playing Sources
- 선택한 프레임에서 동작하는 오디오 소스의 개수를 보여줌
- Paused Sources
- 선택한 프레임에서 잠시 중지된 오디오 소스의 개수를 보여줌
- Audio Voices
- 선택한 프레임에서 사용되는 소리의 수를 보여줌
- Audio CPU Usage
- 오디오 재생에 쓰인 CPU의 사용률을 보여줌
- Audio Memory
- 오디오 엔진에서 사용하는 전체 메모리양을 보여줌
- Max Audio Memory Usage
- 오디오 엔진에서 사용하는 최대 메모리양을 보여줌
- Playing Sources
-
Physics 영역
- Active Rigidbodies
- 활동 중인 리지드바디의 개수를 보여줌
- Sleeping Rigidbodies
- 휴면 중인 리지드바디의 개수를 보여줌
- Number of Contacts
- 충돌체 사이에 발생한 충돌점(Contact Point)의 개수를 보여줌
- Static Colliders
- 씬 내에 리지드바디가 없는 고정된 충돌체의 개수를 보여줌
- Dynamic Colliders
- 리지드바디를 가지고 움직이고 있는 충돌체의 개수를 보여줌
- Active Rigidbodies
-
Internal Profiler
- iOS, Android의 내장 프로파일러 설정을 통해서 보여지는 내용
- cpu-player
- 현재 엔진과 프로그램에서 사용한 CPU 시간을 보여줌.
- 단위는 밀리초
- cpu-ogles-drv
- OpenGL/ES 라이브러리 호출에 사용한 CPU 시간을 보여줌
- 드로우 콜과 렌더 상태(Render State) 변경 같은 CPU에서 GPU로 작업을 이동하기 전에 준비 과정에 소요된 시간을 나타냄
- cpu-wait-gpu
- GPU가 작업을 끝낼 때까지 CPU가 기다리는 시간을 보여줌
- 이 수치가 높을수록 렌더링 작업 GPU의 성능에 비해 과도하게 설정된 것을 의미
- 3보다 크면 이 수치를 낮추게 노력해야 함
- cpu-present
- GPU가 작업한 백 프레임 버퍼를 화면에 쓰는 프론트 버터로 변경하는데 걸리는 시간을 보여줌
- frametime
- 프레임 제작에 걸린 시간을 보여줌
- draw-call
- 드로우 콜이 발생한 횟수를 보여줌
- tris
- 렌더링에 사용된 삼각면의 개수를 보여줌
- verts
- 렌더링에 사용된 정점의 개수를 보여줌
- batched
- 배칭된 도로우 콜의 개수를 보여줌
- physix
- 물리 엔진이 사용된 시간을 나타냄
- animation
- 본 애니메이션에 사용된 시간을 나타냄
- culling
- 시야 절두체 컬링 작업에 소요된 시간을 나타냄
- skinning
- 스키닝 애니메이션 작업에 소요된 시간을 보여줌
- batching
- 배칭에 소요된 시간을 보여줌
- render
- 게임 오브젝트들을 렌더링하는 데 소요된 시간을 나타냄
- fixed-update-count
- 프레임 사이에 FixedUpdate 함수가 몇 번 수행됐는지 보여줌
- update
- Update 함수의 실행에 소요된 시간을 보여줌
- fixedupdate
- FixedUpdate 함수의 실행에 소요된 시간을 보여줌
- FixedUpdate 함수는 기본으로 0.02초마다 설정되는 자주 실행되는 함수
- 이 수치는 최대한 줄여야 함
- coroutines
- 코루틴의 실행에 소요된 시간을 보여줌
- allocated heap
- 가비지 컬렉터에 의해 할당된 메모리의 총량을 보여줌
- used heap
- 할당된 메모리에서 사용되고 있는 메모리 용량을 보여줌
- max number of collection
- 최근 30플레임 이내에 진행한 가비지 콜렉션의 횟수를 보여줌
- collection total duration
- 가비지 콜렉션에 소요된 시간을 보여줌
- UNITE Conference
- Unity5 Features
- Unity 2D
- Unity AI
- Unity Animation
- Unity AR(Augmented Reality)
- Unity Assets
- Unity Build
- Unity Cache Server
- Unity Crypto
- Unity Debug
- Unity Easing
- Unity Editor
- Unity Effects
- Unity External Device
- Unity Game Decompile
- Unity Game Logic
- Unity Graphics
- Unity Hardware
- Unity HoloLens
- Unity Library
- Unity Lighting
- Unity Live2D
- Unity Networking
- Unity Optimization
- Unity Particle System
- Unity Physics
- Unity Precedural
- Unity Profiler
- Unity Rendering
- Unity Service
- Unity Shader
- Unity Testing
- Unity Variation
- Unity Windows
- Unity Things