Memory Consumption Analysis
Use the Memory Consumption analysis for your Linux* native or Python* targets to explore memory consumption (RAM) over time and identify memory objects allocated and released during the analysis run.
How It Works
During Memory Consumption analysis, the
VTunedata collector intercepts memory allocation and deallocation events and captures a call sequence (stack) for each allocation event (for deallocation, only a function that released the memory is captured).
VTunestores the calling instruction pointer (IP) along with a call sequence in data collection files, and then analyzes and displays this data in a result tab.
Configure and Run Analysis
To configure and run the Memory Consumption analysis:
Prerequisites: Create a project .
- Click the (standalone GUI)/ (Visual Studio IDE)Configure Analysisbutton on theIntel® VTune™toolbar.ProfilerTheConfigure Analysiswindow opens.
- FromHOWpane, click the Browse button and selectMemory Consumption.The Memory Consumption analysis is pre-configured to collect data at the memory objects (data structures) granularity, which is provided due to instrumentation of memory allocations/de-allocations and getting static/global variables from symbol information.
- Optionally, you may configure theMinimal dynamic memory object size to trackoption. This option helps reduce runtime overhead of the instrumentation. The default value is 32 bytes.
By default, the analysis result opens in the Memory Consumption viewpoint . Identify peaks of the memory consumption on the Timeline pane and analyze allocation stacks for the hotspot functions. Double-click a hotspot function to switch to the Source view and analyze the source lines allocating a high amount of memory.