Documentation

Unity Engine


User Manual

Script Reference

Unity Engine


Profiling tools reference

Reference for various profiling tools available for performance analysis.
Read time 2 minutesLast updated 4 days ago

Profiling your application is the best way to measure its performance. You can use different profiling tools to understand where there might be any issues with elements of your application including memory usage, CPU performance, GPU performance, and your custom scripts.

Unity's analysis tools

Unity has several profiling and analysis tools to measure the performance of your application:

Tool

Description

ProfilerMeasures the performance of the Unity Editor, your application in Play mode, or connects to a device running your application in development mode.
Memory ProfilerProvides in-depth memory performance analysis.
Profiling Core packageProvides APIs you can use to add contextual information to Unity Profiler captures. For more information, refer to Adding profiling information to your code.
Profile AnalyzerCompares two profiling datasets together to analyze how your changes affect your application's performance.
Frame DebuggerProvides a way to measure the graphical performance of your application.
Project AuditorCreates a report that describes issues about the scripts, assets, and code in your project.

Third party profiling tools

Alongside the Unity Profiler, use platform-specific profiling tools to ensure your application runs as expected. These tools have the most utility on platforms that can use IL2CPP to produce a C++ version of the project. These native code versions provide transparent call stacks and high-resolution method timings that are unavailable when running under Mono.
The following list provides some examples of available profiling tools. You can also use Unity's low level native plug-in Profiler API to export profiling data to third-party profiling tools.

Android

Tool

Description

Android GPU InspectorA tool by Google for general Android GPU profiling.
Streamline Performance AnalyzerA tool by ARM to analyze devices with ARM CPUs.
Arm Performance StudioA selection of tools by ARM to analyze Mali GPU devices.
PVRTuneA tool by Imagination Technologies for Imagination PowerVR GPU devices.
Snapdragon ProfilerA tool by Qualcomm for GPU and system profiling of Qualcomm chip devices.

macOS and iOS

Tool

Description

Profiling apps using InstrumentsUse Xcode's inbuilt profiling tool to analyze your application.
Metal DebuggerAnalyzes projects that use the Metal API.

Windows

Tool

Description

AMD uProfA profiling tool by AMD for performance analysis.
Intel Performance AnalyzersTools by Intel for graphics performance analysis.
NVIDIA Nsight GraphicsA tool by NVIDIA for graphics debugging and profiling.
PIX on WindowsA tool by Microsoft for GPU performance tuning and debugging.
SuperluminalA profiler by Superluminal for C++ applications.
VTuneA tool by Intel for CPU and GPU performance profiling.
Windows Performance ToolkitMicrosoft's collection of performance monitoring tools.
Visual Studio Graphics DiagnosticsGraphics debugging and profiling tools in Visual Studio.
RenderDocA graphics debugging tool by RenderDoc for analyzing rendering.
Radeon Developer Tool SuiteTools by AMD for GPU profiling and debugging.

Additional resources