Reporting Tiering Statistics

Use the mvmcli command to view information about paging activity between PMEM and the DRAM performance tier for an application.

About this task

For any running application instance, you can view near-real-time information about DRAM tiering, including: The amount of tiering DRAM allocated to and used by an instance; how much data has been evicted (moved from DRAM to PMEM) and promoted (PMEM to DRAM) recently; and how much DRAM and PMEM are "active" (written to recently).

Procedure

Use the mvmcli stats command to view tiering information.
  -i|--id           application instance ID
  -n|--interval     seconds to wait between updates
  -p|--pid          PID of the running application instance
  -P|--port         Mvmalloc socket port
  -s|--socket_path  unix domain socket path of mvmallocd. Default: /tmp/dpme_daemon.0
  -u|--unit         M|m (MiB) | G|g (GiB)  unit. Default: MiB

The command has the following options:
-i|--id
The application instance ID
-n|--interval
The reporting interval (interval between updates), in seconds (different from the polling interval; see the note below)
-p|--pid
The PID of the running application instance
-P|--port
The mvmalloc socket port. Default is 5678
-s|--socket_path
The unix domain socket path of mvmallocd. Default is /tmp/dpme_daemon.0
-u|--unit
Units in which to report the statistics: M|m for MiB, G|g for GiB
Note: The Transparent Memory Service polls the application instance to compute tiering statistics at an interval specified by the LruPollMsec parameter. LruPollMsec is defined in the mvmalloc.yml configuration file used to start the instance, with units in milliseconds (ms). If LruPollMsec is not defined, the polling interval defaults to 10 seconds (10,000 ms). The polling interval depends on processor availability and is approximate.
For example:
$ ./mvmcli/mvmcli stats -p 16806 -n 2
Memory stats in MiB
Time       DRAM Used   DRAM Unused   SysFree   Evicted  Promoted  Hot-DRAM  Candidates
16:31:14           4           252     11710         0         0         0           0
16:31:16           4           252     11710         0         0         0           0
16:31:18           4           252     11710         0         0         0           0
In the example above, the command reports statistics every two seconds for the application instance with PID 16806.
Note: As shown in the example, the tiering statistics change infrequently if the reporting interval is smaller than the polling interval.