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. We have updated the language to the Editor Terms based on feedback from our employees and community. Learn more.
    Dismiss Notice

Play mode script 'Simulate Groups' is incredibly slow

Discussion in 'Addressables' started by CameronND, May 8, 2020.

  1. CameronND

    CameronND

    Joined:
    Oct 2, 2018
    Posts:
    83
    Is there any way to speed up the Simulate Groups play mode script? Our project has about 5000 assets set up in addressable groups and its taking over 5 minutes to even play the game from within the editor. That is incredibly slow and not practical to use at all.

    Im using the Event Viewer to profile the asset bundles memory usage and I can't use the 'Use Asset Database' because it's not accurately tracking the loading/unloading properly.

    Im using osx editor version 2019.2.9f and addressables version 1.7.5.
     
  2. phobos2077

    phobos2077

    Joined:
    Feb 10, 2018
    Posts:
    350
    I agree. I tried Simulate Group once with only 2000+ assets in addressable groups, and it took several minutes to start as well. Completely pointless. It might be faster to just build and play with the actual asset bundles. Basically this option doesn't serve any purpose.

    - You use "Use asset database" during normal development when you just need to test anything that's not related to using Addressables.
    - You use "Use existing build" when you want to test in conditions closest to real build. Useful for optimizing load times, debugging custom providers, etc.
    - When do you ever need "Simulate groups"?
     
  3. CameronND

    CameronND

    Joined:
    Oct 2, 2018
    Posts:
    83
    Unfortunately building and testing with built asset bundles isn't always practical either:
    1. Asset bundles build only for the current platform, so for us this is always either Android or iOS, but the editor requires either OSX or Windows bundles. So that means we have to switch platforms (which can take ages due to reimporting) then build the bundles. Then maybe i need to switch back to the mobile platform so code works properly if we have UNITY_IOS or UNITY_ANDROID anywhere in our code. This would be perhaps less of an issue if I could build bundles for a different target platform without having to switch the entire editor target platform.
    2. If I am testing stuff relating to the bundle organization, grouping etc then I would need to rebuild bundles before I test each time which would take even longer since building full bundles for us takes about an hour currently.
     
  4. TreyK-47

    TreyK-47

    Unity Technologies

    Joined:
    Oct 22, 2019
    Posts:
    1,799
    Thanks for the feedback, guys! I'll flag this for the team to review, and share any insight they have.
     
  5. TreyK-47

    TreyK-47

    Unity Technologies

    Joined:
    Oct 22, 2019
    Posts:
    1,799
    After connecting with the team, it was suggested that you file a ticket regarding the performance of Simulate Groups.
     
  6. atambrin

    atambrin

    Joined:
    Jul 15, 2018
    Posts:
    1
    Have you tried setting the LocalLoadSpeed / RemoteLoadSpeed?
    Code (CSharp):
    1. using UnityEditor.AddressableAssets.Settings;
    2.  
    3. ProjectConfigData.LocalLoadSpeed = 102400000;
    4. ProjectConfigData.RemoteLoadSpeed = 102400000;
     
    Last edited: Aug 25, 2022
    SneakyFoxDev and dnnkeeper like this.