Search Issue Tracker

Won't Fix

Won't Fix in 1.19.X

Votes

2

Found in [Package]

1.19.19

Issue ID

ADDR-2616

Regression

No

[Addressables] GC Alloc is high when calling LoadResourceLocationsAsync()

Package: Build Pipeline - Addressables

-

How to reproduce:
1. Open the attached project "LoadResourceLocations"
2. Open the scene "SampleScene" (Assets/Scenes/SampleScene.unity)
3. Open the Profiler window and enable "Deep Profile" (Window > Analysis > Profiler)
4. Enter Play mode
5. In the Game view window, click the button "LoadResourceLocations"
6. In the Profiler window, click on the CPU Usage spike that appears
7. In the Profiler Hierarchy view, inspect the GC Alloc value of LoadResourceLocationsAsync()

Expected result: GC Alloc value is around 7 MB
Actual result: GC Alloc value is around 15 MB

Reproducible with: 1.17.13, 1.19.19 (2019.4.37f1, 2020.3.31f1, 2021.2.16f1, 2022.1.0b13, 2022.2.0a8)
Could not test with: 1.16.9 (2019.4.37f1, 2020.3.31f1, 2021.2.16f1, 2022.1.0b13, 2022.2.0a8) (Error: 'AsyncOperationHandle<IList<IResourceLocation>>' does not contain a definition for 'WaitForCompletion)

  1. Resolution Note:

    There are no fixes planned for this Bug

  2. Resolution Note (1.19.X):

    Unfortunately, there isn't a stable way for us to fix or change this behavior given the current state of addressables. A change to fix this would be substantial and in a highly sensitive area and so while it's unfortunate that GC alloc is a bit higher than we'd like in editor now, this issue is editor exclusive and should not affect runtime performance at all. Hopefully the customer is able to work around it and we're sorry that more can't be done to help with the GC in playmode.

Add comment

Log in to post comment

All about bugs

View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.