# "Show Utility Chart" - Explanation

## "Show Utility Chart" - Explanation

Hello,

Regarding the charts available from "Show Utility Chart" in Memory Hotspots view:

- the Access Stride Distribution

- the Working Set

- the Array of Structures
Distribution

I could not find their description in the User Guide, so would appreciate if you could let me know what the X and Y axes represent (and if by default they use data from the whole experiment as it seems), and the purpose of each chart.

Thanks

Gabriele

2 posts / 0 new
For more complete information about compiler optimizations, see our Optimization Notice.

Not quite easy - but i will try.

All of them are attempts to find patterns in data accesses. But after we experimented with them - found that looking for such patterns in the data from general statistical sampling (from where address being reconstructed) is not always working and not ready as widely used profiling capability.
Anyway - all those charts works either for all collected data or for filtered subset if some filtering done. All manipulate with data virtual addresses.

- "Working set" is estimating memory working set. Idea is that some addresses found accessed more often then the others - so we can approximate size of working set.
X is memory size, Y is number of references / % of all accessed for accumulated memory size. Similar to Pareto chart.

- "Access Stride distribution" - sorts references according to their memory address and builds distribution of distances between two neighbour accesses. X - distance in bytes, Y - number of such distances observed.

- "Array of Structures" - for selected memory region (note the additional controls) - Start , End and Stride - "assumes" that there was Array of Structures of size Stride in region [Start, End], so it counts the number of references for each offset within Stride over [Start, End]. The purpose to find that some members of structures were accessed more often then the others. In general, Structure of Arrays is more memory friendly structure vs. Array of Structures. X - is offset from the beg. of structure Y - number of references.

hope - this helps
julia