mirror of
https://github.com/libvirt/libvirt.git
synced 2026-10-02 12:20:06 -05:00
qemu: resctrl energy counters via domstats
Added energy reporting from resctrl PERF_PK_MON through domstats: cpu.energy.monitor.count=1 cpu.energy.monitor.0.name=vcpus_0 cpu.energy.monitor.0.vcpus=0 cpu.energy.monitor.0.pkg.count=2 cpu.energy.monitor.0.pkg.0.id=0 cpu.energy.monitor.0.pkg.0.core_energy=0.000000 cpu.energy.monitor.0.pkg.0.activity=0.000000 cpu.energy.monitor.0.pkg.1.id=1 cpu.energy.monitor.0.pkg.1.core_energy=2.888203 cpu.energy.monitor.0.pkg.1.activity=1.718601 Changes: - Added VIR_DOMAIN_STATS_CPU_ENERGY_MONITOR_* macros to libvirt-domain.h - Added qemuDomainGetStatsEnergy() to qemu_driver.c Signed-off-by: Jedrzej Wasiukiewicz <jedrzej.wasiukiewicz@intel.com> Signed-off-by: Christopher M. Cantalupo <christopher.m.cantalupo@intel.com> Signed-off-by: Michal Privoznik <mprivozn@redhat.com> Reviewed-by: Michal Privoznik <mprivozn@redhat.com>
This commit is contained in:
1 parent
615a7bb898
commit
4e6f997867
2 files changed
+128
-4
No files matched your search
@@ -4420,6 +4420,71 @@ struct _virDomainStatsRecord {
|
||||
# define VIR_DOMAIN_STATS_MEMORY_BANDWIDTH_MONITOR_SUFFIX_NODE_SUFFIX_BYTES_TOTAL ".bytes.total"
|
||||
|
||||
|
||||
/**
|
||||
* VIR_DOMAIN_STATS_CPU_ENERGY_MONITOR_COUNT:
|
||||
*
|
||||
* The number of energy monitors for this domain, as an unsigned int.
|
||||
*
|
||||
* Since: 12.4.0
|
||||
*/
|
||||
# define VIR_DOMAIN_STATS_CPU_ENERGY_MONITOR_COUNT "cpu.energy.monitor.count"
|
||||
|
||||
/**
|
||||
* VIR_DOMAIN_STATS_CPU_ENERGY_MONITOR_PREFIX:
|
||||
*
|
||||
* Prefix for an individual energy monitor group. Concatenate
|
||||
* with the monitor index and one of the "cpu.energy.monitor.<i>." suffix
|
||||
* macros below to form a full parameter name.
|
||||
*
|
||||
* Since: 12.4.0
|
||||
*/
|
||||
# define VIR_DOMAIN_STATS_CPU_ENERGY_MONITOR_PREFIX "cpu.energy.monitor."
|
||||
|
||||
/**
|
||||
* VIR_DOMAIN_STATS_CPU_ENERGY_MONITOR_SUFFIX_NAME:
|
||||
*
|
||||
* Name of the monitor group as a string.
|
||||
*
|
||||
* Since: 12.4.0
|
||||
*/
|
||||
# define VIR_DOMAIN_STATS_CPU_ENERGY_MONITOR_SUFFIX_NAME ".name"
|
||||
|
||||
/**
|
||||
* VIR_DOMAIN_STATS_CPU_ENERGY_MONITOR_SUFFIX_VCPUS:
|
||||
*
|
||||
* vCPU set covered by the monitor group as a string.
|
||||
*
|
||||
* Since: 12.4.0
|
||||
*/
|
||||
# define VIR_DOMAIN_STATS_CPU_ENERGY_MONITOR_SUFFIX_VCPUS ".vcpus"
|
||||
|
||||
/**
|
||||
* VIR_DOMAIN_STATS_CPU_ENERGY_MONITOR_SUFFIX_PKG_COUNT:
|
||||
*
|
||||
* Number of PERF_PKG nodes the monitor group exposes, as an unsigned int.
|
||||
*
|
||||
* Since: 12.4.0
|
||||
*/
|
||||
# define VIR_DOMAIN_STATS_CPU_ENERGY_MONITOR_SUFFIX_PKG_COUNT ".pkg.count"
|
||||
|
||||
/**
|
||||
* VIR_DOMAIN_STATS_CPU_ENERGY_MONITOR_SUFFIX_PKG_PREFIX:
|
||||
*
|
||||
* Prefix for a single mon_PERF_PKG node inside a monitor group.
|
||||
*
|
||||
* Since: 12.4.0
|
||||
*/
|
||||
# define VIR_DOMAIN_STATS_CPU_ENERGY_MONITOR_SUFFIX_PKG_PREFIX ".pkg."
|
||||
|
||||
/**
|
||||
* VIR_DOMAIN_STATS_CPU_ENERGY_MONITOR_SUFFIX_PKG_SUFFIX_ID:
|
||||
*
|
||||
* Kernel-assigned mon_PERF_PKG node id, as an unsigned int.
|
||||
*
|
||||
* Since: 12.4.0
|
||||
*/
|
||||
# define VIR_DOMAIN_STATS_CPU_ENERGY_MONITOR_SUFFIX_PKG_SUFFIX_ID ".id"
|
||||
|
||||
/**
|
||||
* VIR_DOMAIN_STATS_DIRTYRATE_CALC_STATUS:
|
||||
*
|
||||
|
||||
Reference in new issue
Block a user