Version: 2018.1 (switch to 2018.2b or 2017.4)
  • C#
  • JS

Script language

Select your preferred scripting language. All code snippets will be displayed in this language.


class in UnityEngine.Profiling


Implemented in:UnityEngine.CoreModule

Suggest a change


Thank you for helping us improve the quality of Unity Documentation. Although we cannot accept all submissions, we do read each suggested change from our users and will make updates where applicable.


Submission failed

For some reason your suggested change could not be submitted. Please <a>try again</a> in a few minutes. And thank you for taking the time to help us improve the quality of Unity Documentation.




Controls the Profiler from script.

You can add custom Profiler sections in your scripts with Profiler.BeginSample and Profiler.EndSample.

In standalone games, the Profiler saves all profiling information to a file when you specify a Profiler.logFile and set both Profiler.enabled and Profiler.enableBinaryLog to true.

Static Properties

enableBinaryLogEnables the logging of profiling data to a file.
enabledEnables the Profiler.
logFileSpecifies the file to use when writing profiling data.
usedHeapSizeLongReturns the number of bytes that Unity has allocated. This does not include bytes allocated by external libraries or drivers.

Static Methods

AddFramesFromFileDisplays the recorded profile data in the profiler.
BeginSampleBegin profiling a piece of code with a custom label.
BeginThreadProfilingEnables profiling on the thread from which you call this method.
EndSampleEnds the current profiling sample.
EndThreadProfilingFrees the internal resources used by the Profiler for the thread.
GetAllocatedMemoryForGraphicsDriverReturns the amount of allocated memory for the graphics driver, in bytes.
GetMonoHeapSizeLongReturns the size of the reserved space for managed-memory.
GetMonoUsedSizeLongThe allocated managed-memory for live objects and non-collected objects.
GetRuntimeMemorySizeLongGathers the native-memory used by a Unity object.
GetTempAllocatorSizeReturns the size of the temp allocator.
GetTotalAllocatedMemoryLongThe total memory allocated by the internal allocators in Unity. Unity reserves large pools of memory from the system. This function returns the amount of used memory in those pools.
GetTotalReservedMemoryLongThe total memory Unity has reserved.
GetTotalUnusedReservedMemoryLongUnity allocates memory in pools for usage when unity needs to allocate memory. This function returns the amount of unused memory in these pools.
SetTempAllocatorRequestedSizeSets the size of the temp allocator.

Did you find this page useful? Please give it a rating: