Search Unity

  1. Welcome to the Unity Forums! Please take the time to read our Code of Conduct to familiarize yourself with the forum rules and how to post constructively.
  2. Dismiss Notice

RenderLoop.CleanupNodeQueue takes ~40% cpu usage

Discussion in 'Android' started by AdiOhaion, Mar 17, 2019.

  1. AdiOhaion

    AdiOhaion

    Joined:
    Jan 7, 2019
    Posts:
    7
    Hi,

    I'm working with version Unity 2018.2.1f1.

    I have a performance problem running my game on Nexus 7 only - the fps is below 15 on some of the game's scenes.

    The scene use Tiled2Unity map with a lot of objects, it happens even if I don't do anything and the map is totally static without anything actually moving.

    I read many of the posts of performance issues and for the last 4 days tried many solutions such as:

    1. Use mobile shaders.
    2. Set materials for all objects.
    3. Reduce the resolutions of the screen.
    4. Compress textures.
    5. Change the "Quality" settings of the projects.
    6. Tried to play around with vsync and targetFrameRate.
    7. Set all static objects in the game as static.

    All the above didn't really improve the performance on the Nexus 7 (setting the map objects as static did improve it though).

    When I run the game on Nexus 7 and go into a specific scene, I see a constant spike in the profiler from RenderLoop.CleanupNodeQueue, reaching to 40% cpu usage, manage to be completed only after 40 ms (On other devices it does not happen and this process is kept around 0.1%).

    I uploaded a screenshot of the profiler.

    Does anyone know what this process do and how can I reduce it?
    I'd be happy to get more suggestions on things I can try to tweak to fix this issues.


    Rendering data (on the specific scene):
    SetPass Calls: 602 Draw Calls: 681 Total Batches: 681 Tris: 10.2k Verts: 20.5k
    (Dynamic Batching) Batched Draw Calls: 391 Batches: 120 Tris: 1.0k Verts: 1.0k
    (Static Batching) Batched Draw Calls: 0 Batches: 0 Tris: 0 Verts: 0

    Memory:
    Textures: 271 / 148.2 MB
    Meshes: 729 / 5.4 MB
    Materials: 646 / 1.7 MB
    AnimationClips: 0 / 0 B
    AudioClips: 60 / 4.5 MB
    Assets: 33794
    GameObjects in Scene: 18457
    Total Objects in Scene: 69901
    Total Object Count: 103695
    GC Allocations per Frame: 3 / 0 B
     

    Attached Files:

  2. IAmChiagozie

    IAmChiagozie

    Joined:
    Jun 26, 2017
    Posts:
    23
    Does anyone have an update on this?
     
  3. LostShepherd

    LostShepherd

    Joined:
    May 31, 2019
    Posts:
    36
    Just wondering if you ever got to the bottom of this, I'm currently working through a very basic simple 2D game and am seeing the same. I've put all my assets in a SpriteAtlas, layered and am working through the UI generally to split out canvas and things but its still pretty ropey!