- System requirements
- Profiler architecture
- Running the profiler
- Profiler activation
- Start profiling
- Connect to profiled application
- Capturing snapshots
- Solving performance problems
- CPU profiling
- Threads
- Memory profiling
- Memory telemetry
- Object allocation recording
- Shallow and retained sizes
- Memory views
- Objects view
- Class list
- Class and namespace
- Domains and modules
- Object generations
- Shallow size
- Object explorer
- Biggest objects (dominators)
- Allocations
- Merged paths
- Class hierarchy
- Method merged callees view
- Method back traces view
- Quick info view
- GC roots view
- Leak detection: working with paths
- Memory inspections
- Comparing memory snapshots
- Values of primitive types
- Useful actions
- Garbage collection
- Exception profiling
- Probes: monitor higher level events
- Performance Charts
- Inspections: automatic recognition of typical problems
- Automatically trigger actions on event
- Summary, snapshot annotation, automatic deobfuscation
- Time measurement (CPU time, wall time)
- Filters
- Snapshot directory customization
- Export of profiling results to HTML, CSV, XML, plain text
- Profiler API
- Profiler HTTP API
- Command line tool to control profiling
- Settings
Allocations
This section is available only for snapshots that contain any recorded object allocations.
Allocations let you discover methods where objects were created.
Call tree
Shows a top-down call tree with the methods in which objects from the set were created, either for each particular thread ("by thread")

or with calls from all threads merged.

The tree is shown according to current filters.
Hot spots
Shows methods where the greatest number of objects from the set ("Hot spots by object count")

or objects with the greatest total shallow size ("Hot spots by object size") were created.

Methods are shown according to current filters:
- non-filtered methods (typically, methods from the source code of profiled application)
-
filtered methods (typically, methods from core classes and used libraries) that were
directly called from non-filtered methods or are at the top of thread stack trace (
Thread.Start()
).
Method list
Methods are shown according to current filters:
- non-filtered methods (typically, methods from the source code of profiled application)
-
filtered methods (typically, methods from core classes and used libraries) that were
directly called from non-filtered methods or are at the top of thread stack trace (
Thread.Start()
).
For each method, the list shows the number and shallow size of objects it had created.
