93 Followers
98 Following
159 Posts
#gamedev vet, C# fan, DOD/ECS expert. Made Robocraft & Svelto.ECS.
Svelto.ECShttps://github.com/sebas77/Svelto.ECS
Code Articleshttps://www.sebaslab.com/
Photographyhttps://sebasphotography.com/
Ridinghttps://www.instagram.com/f850gs_seb/
@MartinTilo @marwi yes I meant those, anyway I don't know enough about their implementations to suggest anything
@MartinTilo @marwi are these all going through custom allocators?
@MartinTilo @marwi yeah possibly. It looks like they are not disposing or the cancellation token however that alone wouldn't explain the quantity of memory that was leaking, so there must be more to it
@MartinTilo @marwi the Unknown one is a big problem for me for sure. The InstantiateAsync bug turns out to be tracked and marked as fixed, but it is a lie (I am using 6000.1.7) https://issuetracker.unity3d.com/issues/memory-leak-when-using-instantiateasnyc-to-instantiate-a-large-prefab
Unity IssueTracker - Memory Leak when using InstantiateAsnyc to instantiate a large Prefab

How to reproduce: 1. Open the “IN-76682_repro“ 2. Open the “SampleScene“ 3. Enter Play Mode 4. Select the “Example“ GameObject 5. In...

also in relation to my previous post:

https://issuetracker.unity3d.com/issues/memory-leak-when-using-instantiateasnyc-to-instantiate-a-large-prefab

this is not solved, I can repro it in 6000.1.7 and 6000.0.26

all the cancellation tokens in the screenshot are leaked from InstantiateAsync

Unity IssueTracker - Memory Leak when using InstantiateAsnyc to instantiate a large Prefab

How to reproduce: 1. Open the “IN-76682_repro“ 2. Open the “SampleScene“ 3. Enter Play Mode 4. Select the “Example“ GameObject 5. In...

DO NOT use Object.InstantiateAsync. This hidden method must stay as it is. It causes massive leaks and me spending days to pinning it down. Eventually and sadly it wasn't Memory Profiler to help me but instead the still maintained (and now I know why) Heap Explorer plugin (you can find it on github).

At this point I think I am gonna write a blog post about the tools I am using for memory investigation on Android (and one day on iOS) #unity3d

@MartinTilo @marwi cool just letting you know that heap explorer ultimately was the key to unblock me, plus Object.InstantiateAsync should be banned until unity fixes the massive leak it has

@MartinTilo @marwi

another good one. HeapExplorer gave me a crucial clue that MemoryProfiler was not giving: the Linked1Cancellation token was linked to AsyncInstantiateOperation which is very likely linked to Object.InstantiateAsync

Unity Memory Profiler is great but it can be easily improved a ton.
The comparison window misses two fundamental features (why?!)
I need to be able to compare just the resident memory
I need to be able to compare the Memory Map tab too!
I am doing this work now without the comparison help