If the HP Caliper run is made on a ccNUMA system, then the memory usage of every “logical domain” is separately measured and reported. If on an SMP system, then only the single, “local domain” is measured and reported.

The system memory usage measurement is always taken if the --memory-usage=option is used. The measurement is made only once at the beginning of the HP Caliper run and the same data is reported for each process in a multiprocess run.

The process memory usage measurement can be taken:

At the beginning of a process's execution: --memory-usage=begin

At the end of a process's execution: --memory-usage=end

Periodically throughout a process's execution: --memory-usage=timed

At any combination or all of the above: --memory-usage=all

The default sampling rate for measuring process memory usage is 1 second. To specify a different rate, use an integer value (greater than 0) followed by an optional time modifier indicating seconds (s), minutes (m), or hours (h). The value is assumed to be in seconds if no time modifier is given.

To reduce the volume of data, only samples that show a difference in memory utilization from the previous sample are saved and reported.

NOTE: To maintain compatibility with earlier versions of HP Caliper, exit is synonymous with end.

The process memory usage being measured is the number of pages the process has allocated from the system. It includes executable code, shared libraries, static data, mmap'd regions, and dynamic (malloc'd heap) memory. It does not measure how much of this system-allocated memory is currently in use. For example, a process might malloc a large block and free it, but the system-allocated memory will still reflect that the pages are in use by the process.

The --memory-usage=option is supported only for --scope process measurements. (This is the default for the --scopeoption.)

As with all HP Caliper command-line options, --memory-usage=can be abbreviated to any non-ambiguous string, and colon-separated arguments can be given in any order.

Examples of the --memory-usage= Option

Some examples of the option follow:

--memory-usage=all

Causes process memory usage to be measured at the beginning, at the end, and every 1 second of the process's execution.

--memory-usage=begin:end

Causes process memory usage to be measured twice: at the beginning and at the end of the process's execution.

--memory-usage=timed:15

Causes process memory usage to be measured every 15 seconds of the process's execution.

--memory-usage=all:30m

Causes process memory usage to be measured at the beginning, at the end, and every 30 minutes of the process's execution.

--memory-usage=end

Causes process memory usage to be measured once: at the end of the process's execution.

Measuring Memory Usage Concurrently with Other Measurements 153