Search Issue Tracker
By Design
Votes
0
Found in
2017.3.0p1
Issue ID
1012713
Regression
No
[Android] Profiler isn't capturing GL mtrack memory allocations when profiling android build and LOD is getting switched
How to reproduce:
1. Load project 'repro.zip'
2. Switch platform to android
3. Open scene 'mini_speedtree'
4. Build & Run for android (make sure it's Development build)
5. Open the Profiler window (Window > Profiler)
6. Attach profiler to the device
7. Select "Memory", observe how much memory is used by textures
8. Use "adb shell dumpsys meminfo" to check how much memory is used by the graphics layer of this process (GL mtrack)
* Note: GL mtrack wasn't reported in the dump on Mali GPU (Adreno has it)
9. Come close to the trees in-game
10. Observe that when LOD switched, profiler doesn't show any further allocations to the textures
11. Use "adb shell dumpsys meminfo" to check how much memory is used by the graphics layer of this process (GL mtrack) and see that the number has now increased
Expected results: When LOD switches to 'high detail' there should be some indication that there's a memory allocation in GL mtrack
Actual results: Profiler isn't capturing GL mtrack allocations when LOD is switched
Reproducible with:
2018.1.0b11, 2017.3.1p4, 2017.2.2p1, 2017.1.3p2
Could not test with 2018.2 because of another bug
Tested android build on:
Google Pixel 2 XL*, OS:8.1.0, CPU:arm64-v8a, GPU:Adreno (TM) 540
Samsung SM N950U1*, OS:7.1.1, CPU:arm64-v8a, GPU:Adreno (TM) 540
Samsung SM N950F*, OS:7.1.1, CPU:arm64-v8a, GPU:Mali-G71 (no GL mtrack data in dympsys)
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- Crash on ujob_execute_job while using OverlapBoxCommand when collisions are more than maxHits
- The validity of the multiple handles can behave differently based on the load/release operations order, when multiple Addressables.LoadAssetAsync and Addressables.Release are used to load and release the same Addressable Asset
- OnPointerExit and OnPointerEnter is mistakenly called when an overlapping child Image is destroyed
- Dynamic text is rendered in the background when it is inside the <font> tag
- SerializeReference interface does not show CustomPropertyDrawer when it's inherited from another interface
Add comment