Heap Size
Total size of megablocks allocated by the RTS
Blocks Size
Total size of blocks allocated by the RTS
Live bytes
Total size of objects live on the heap (should match top of area pane)

Process memory usage (as reported by the OS) should correspond roughly to the heap size, except for data allocated through the FFI (and the RTS also calls malloc() itself in a few places).

When heap profiling is enabled, blocks size and live bytes will typically differ by the size of the nursery. For understanding the relationship between blocks size and live bytes, this blog post contains more information.

When heap profiling is not enabled, live bytes will be updated only on a major GC, but heap size and blocks size are updated more frequently. (Enabling heap profiling causes more frequent major GCs to collect heap samples.)

This view can also be useful in identifying fragmentation. A very badly fragmented heap will have low live bytes but much higher blocks size.