Unity built-in Profiler Profiler, Xcode analysis tools
Profiler:
1.CPU Usage:
Waitfortargetfps:vsync (vertical sync) function, which displays the CPU wait time of the current frame
Overhead:profiler overall time-the sum of the recording time for all items. Used to record unclear time consumption to help further refine profiler statistics.
Physics.simulate: CPU elapsed time for the physical simulation of the current frame.
Camera.render: CPU Usage for camera rendering readiness
Rendertexture.setactive: Sets the Rendertexture action.
Bottom-level implementations:
1. Compare the Colorsurface and depthsurface of the current frame to the previous frame.
2. If these two buffer matches do not generate a new RT, otherwise a new RT is generated, and the corresponding viewport and spatial transformation matrices are set.
Monobehaviour.onmouse_: Input message reception and feedback used to detect the mouse, mainly including: Sendmouseevents and dosendmouseevents. (As long as the edtor is open, this will exist.)
Handleutility.setviewinfo: In editor only, the function is to match the display in the GUI and editor to the display of the published version.
Gui. Redraw of the Repaint:gui (indicating that there is a native Ongui in use)
Event.internal_makemastereventcurrent: Responsible for GUI's message delivery
Cleanup Unused Cached data: empties useless cache data, mainly including Renderbuffer garbage collection and textrendering garbage collection.
1.rendertexture.garbagecollecttemporary: In Renderbuffer garbage collection, clear the temporary freetexture.
2.textrendering.cleanup:textmesh Garbage Collection Operations
Application.integrate Assets in Background: Traverse the pre-loaded thread queue and complete the load, complete the loading of the textures, substance update, and so on.
Application.loadlevelasync integrate: Load the CPU of the scene, usually if this time is long 70% of the likelihood is caused by the texture too long.
Unloadscene: Unloads gameobjects, component, and Gamemanager in the scene, typically when switching scenes.
Collectgameobjectobjects: While executing the above m items, the Gameobject and component in the scene are aggregated into an array. Then execute the destroy below.
Destroy: Remove CPU Usage for Gameobject and component.
Assetbundle.loadasync Integrate: Multithreading loads the content in Awakequeue, which is the awakefromload function for multithreaded execution of resources.
Loading.awakefromload: Called after the resource has been loaded, each resource is processed against its application.
2.GPU Usage:
Device.Present:device. The time-consuming display of presentframe, which appears in the release version.
Display and vertical synchronization on the Graphics.PresentAndSync:GPU is time consuming. This option appears in the release version.
The rendering of the vertex Buffer object for mesh in Mesh.DrawVBO:GPU is time consuming.
Shader.parse: The parsing process of the engine to Shader after the resource joins.
Shader.creategpuprogram: Build GPU Engineering based on the graphics library supported by the current device.
3.Memory Profiler
Used total: The sum of the current frame's unity memory, mono memory, gfxdriver memory, profiler memory.
Reserved Total: The system requests memory at the current frame.
Total System Memory Usage: The amount of virtual RAM used for the current frame. (usually 1.5~3 times we currently use memory)
Gameobjects in scene: The number of gameobject in the current frame scene.
Total Objects in scene: The number of objects in the current frame scene (except Gameobject, component, etc.).
Total Object count:object data + Asset Quantity
4.Detail Memory Profiler
Texture2d: Records the texture resources used in the current frame memory, including textures for various gameobject, Sky box textures, and lightmap resources used in the scene.
Scene Memory: Records the footprint of all aspects of the current scene, including Gameobject, resources used, various components, and Gamemanager, which are not shown here in the case of assetbundle loading.
Managedheap.usesize: The heap memory allocation that is caused by the code at run time, indicating the amount of heap storage allocated by the last GC to date.
Webstream: This is a memory footprint that is loaded by www.
System.executableanddlls: Different platforms and different hardware will not get the same value.
Unity Performance Optimization-profiler