This is a beta of the upcoming Xamarin Profiler 1.6.2 release. These previews are unsupported builds to allow developers to test the new features, and to gather feedback and bug reports. Your help is very appreciated!
Improve light allocations mode
In 1.6.1 there was an initial implementation of a light allocations mode, which allows profiling without recording every single bit of data for the profiled app. This helps in making the Xamarin Profiler much more usable with big or bad performing apps, which might generate such a huge amount of data that waiting for the whole data to be processed was a big problem.
To enable it, just uncheck the Track all allocations setting in the New Session dialog:
This makes the Xamarin Profiler not record information about every single allocation in the profiled application, and instead allow users to just take snapshots whenever they want to see current memory usage of the profiled app. This doesn't provide full information for the whole lifetime of the application, but instead allows users to perform much faster profiling to check for problems like memory leaks.
In this new release, a lot of under-the-scenes work has been done to further improve this feature.
Improve snapshots comparison
In previous releases, Xamarin Profiler only allowed comparing snapshots with its previous snapshot (by double clicking on a snapshot in the snapshots list, by default it showed new objects compared to the previous snapshot). This feature has now been extended to allow comparing any snapshots, which helps a lot in finding allocations through the snapshots taken via profiling your application.
To use this feature, just hover the mouse over the snapshot you want to compare, and click on the "..." button that shows up:
This will open the usual list of allocations on the selected snapshot grouped by class, but with the addition of several stats about object and size growth:
Several performance improvements
As always, performance is a top priority for us, as profiling generates a huge amount of data. Lots of small and not-so-small improvements have been added to this new release that should make using Xamarin Profiler for profiling big or misbehaving apps much nicer.