java.lang.Object
com.ibm.virtualization.management.GuestOSProcessorUsage
This provides a snapshot of the Guest (Virtual Machine(VM)/Logical Partition(LPAR))
Processor usage statistics as seen by the Hypervisor Host. The statistics are an aggregate across
all physical CPUs assigned to the Guest by the Hypervisor Host.
The supported Operating System and Hypervisor combinations are:
- Linux and Windows on VMWare (IBM Java 8 only).
- AIX and Linux on PowerVM.
- Linux and z/OS on z/VM.
- Linux on PowerKVM.
- Since:
- 1.7.1
-
Constructor Summary
-
Method Summary
Modifier and TypeMethodDescriptionstatic GuestOSProcessorUsage
from
(CompositeData cd) Receives aCompositeData
representing aGuestOSProcessorUsage
object and attempts to return the rootGuestOSProcessorUsage
instance.float
The total CPU Entitlement assigned to this Guest by the Hypervisor.long
The total used time of the Guest as reported by the Hypervisor in microseconds.long
The the clock speed of the Host Processor in platform-dependent units.long
The timestamp when the usage statistics were last sampled in microseconds.toString()
Text description of thisGuestOSProcessorUsage
object.
-
Constructor Details
-
GuestOSProcessorUsage
public GuestOSProcessorUsage()Creates a newGuestOSProcessorUsage
instance.
-
-
Method Details
-
getCpuTime
public long getCpuTime()The total used time of the Guest as reported by the Hypervisor in microseconds.- z/OS maintains CPU usage history only for the last 4 hours. The value might not be monotonically increasing.
- Returns:
- used time in microseconds or -1 if info not available.
-
getHostCpuClockSpeed
public long getHostCpuClockSpeed()The the clock speed of the Host Processor in platform-dependent units.- z/OS: Millions of Service Units (MSUs).
- Linux, AIX, and Windows: MegaHertz (MHz).
- Returns:
- Host CPU clock speed or -1 if not available.
-
getTimestamp
public long getTimestamp()The timestamp when the usage statistics were last sampled in microseconds.- Returns:
- The last sampling timestamp in microseconds.
-
getCpuEntitlement
public float getCpuEntitlement()The total CPU Entitlement assigned to this Guest by the Hypervisor. The value is in Processor units and could be a fraction.- VMWare:
CpuLimitMHz
,CpuReservationMHz
,CpuShares
andHostProcessorSpeed
are used to arrive at the Entitlement.- See the VMware GuestSDK for more on what these mean.
- PowerVM:
entitled_proc_capacity/100
on AIX andpartition_entitled_capacity/100
on Linux represents the Entitlement.- See perfstat_partition_total interface on AIX.
- See lparcfg documentation on Linux.
- z/VM: CPU Entitlement is unavailable.
- Returns:
- CPU Entitlement assigned for this Guest or -1 if not available.
- VMWare:
-
from
Receives aCompositeData
representing aGuestOSProcessorUsage
object and attempts to return the rootGuestOSProcessorUsage
instance.- Parameters:
cd
- ACompositeData
that represents aGuestOSProcessorUsage
.- Returns:
- if
cd
is non-null
, returns a new instance ofGuestOSProcessorUsage
, Ifcd
isnull
, returnsnull
. - Throws:
IllegalArgumentException
- if argumentcd
does not correspond to aGuestOSProcessorUsage
with the following attributes:cpuTime
(java.lang.Long
)timestamp
(java.lang.Long
)cpuEntitlement
(java.lang.Float
)hostCpuClockSpeed
(java.lang.Long
)
-
toString
Text description of thisGuestOSProcessorUsage
object.- Overrides:
toString
in classObject
- Returns:
- Text description of this
GuestOSProcessorUsage
object.
-