A method of monitoring runtime memory usage by a program. The method can
include retrieving data from a first region of virtual memory that has
been allocated to the program and compressing the data. A data
compression rate can be measured. The method further can include
generating a notification comprising notification data indicating that
the first region of memory was not efficiently used by the program during
execution when the data compression exceeds a threshold value or the data
compression rate exceeds a statistical value determined from an
application's memory usage.