Memory Profiler 1.0.0 Released

Hi all :)

We are excited to share the release of the final version 1.0.0 of the Memory Profiler package which came with the Unity 2022.2 Tech Stream!

The updated Memory Profiler delivers improvements to the profiling suite, allowing you to get a more complete view of your memory usage, and make it easier and faster to optimize your performance or detect memory issues:

  • Memory reporting has been reworked to be much closer to how the operating system works with memory. This will provide a clearer picture of your memory footprint.
  • The Summary view has been added to highlight the memory usage on the device and breakdown of the key asset types and subsystems.
  • The 'Unity Objects' view and ‘All of Memory’ view have been introduced to provide a simple, yet complete picture of allocated resources.
  • Object References and Details information has been moved to a dedicated panel to help with object identification and understanding why memory wasn’t garbage collected.
  • Comparison workflow has been improved to give you a clearer picture of high level differences.

With the aim of reducing information overload, and providing a fast and accurate memory profiler, we have retired the objects and allocations tab, the treemap and the fragmentation tab. The same information is available in the Unity Objects and All of Memory views, plus we are looking to understand use cases and needs better so that we can provide a simple and actionable solution to memory fragmentation problem.

Please read more in our blogpost Everything you need to know about Memory Profiler 1.0.0

Feedback
Thank you all for helping us to craft a better workflow and providing invaluable feedback!

The work on the memory profiler is not done and we will be actively reviewing your feedback and needs for further improvements. Please submit any feature requests to the Unity Engineering Roadmap or here on the Profiling forum. We are looking forward to hearing more from you!

Additional Information

Check out these profiling-related resources from the latest release cycle:

7 Likes

Hi i'm looking for advice on how to submit a bugreport.

When we make a capture and open it in our main project Unity just hangs, and memory usage increases tremendously. This is using the capture that is also included in the (separate) report IN-43015.

In reality it uses nearly all my 64gb memory. When i open the same report in an empty project its way faster. Problem is our project is nearly 500gb, i'm not sure how to report this problem.

Hi Tijmen,
Bit of a late response but in 1.1.0-x we've tackled the memory usage for opening snapshots in a couple of places. Not sure if that reduces it enough for the issue you were facing here. One issue in particular is that opening the snapshot involves loading every single byte used by the managed heap at the moment of capture into memory (and 1.0.0 loaded those as managed byte arrays. 1.1. loads these into native memory so as to not cause exponentially bigger snapshots if Editor snapshots are taken after a snapshot was opened).

Similar issue. Starting from 2022.2 (up and including 2022.3.0f1) when trying to open snapshot, Unity eats up all the available memory (32Gb) and eventually crashes the editor. No such issue in 2022.1. Tried on latest verified release version as well as the 1.1.0-pre.1 - no difference, so it doesn't seem related to what @MartinTilo mentioned.

Any ideas?

As you spotted in the other thread , there’s another known issue of crashing on trying to allocated native memory via UnsafeUtility.Malloc for the managed heap section entries crash for some very large managed heaps. That fix is still pending for 1.1.0-pre.2.

If you have a callstack, I could maybe confirm that this is the issue I’m already fixing or if we’ll need a bug report for this.

1 Like