func IsCATEnabled() bool
Check if Intel RDT/CAT is enabled
func IsCMTEnabled() bool
Check if Intel RDT/CMT is enabled.
func IsMBAEnabled() bool
Check if Intel RDT/MBA is enabled
func IsMBMEnabled() bool
Check if Intel RDT/MBM is enabled.
func Root() (string, error)
Root returns the Intel RDT "resource control" filesystem mount point.
func WriteIntelRdtTasks(dir string, pid int) error
WriteIntelRdtTasks writes the specified pid into the "tasks" file
type CMTNumaNodeStats struct { // The 'llc_occupancy' in 'container_id' group. LLCOccupancy uint64 `json:"llc_occupancy"` }
type L3CacheInfo struct { CbmMask string `json:"cbm_mask,omitempty"` MinCbmBits uint64 `json:"min_cbm_bits,omitempty"` NumClosids uint64 `json:"num_closids,omitempty"` }
type MBMNumaNodeStats struct { // The 'mbm_total_bytes' in 'container_id' group. MBMTotalBytes uint64 `json:"mbm_total_bytes"` // The 'mbm_local_bytes' in 'container_id' group. MBMLocalBytes uint64 `json:"mbm_local_bytes"` }
type Manager struct {
// contains filtered or unexported fields
}
func NewManager(config *configs.Config, id string, path string) *Manager
NewManager returns a new instance of Manager, or nil if the Intel RDT functionality is not specified in the config, available from hardware or enabled in the kernel.
func (m *Manager) Apply(pid int) (err error)
Applies Intel RDT configuration to the process with the specified pid
func (m *Manager) Destroy() error
Destroys the Intel RDT container-specific 'container_id' group
func (m *Manager) GetPath() string
Returns Intel RDT path to save in a state file and to be able to restore the object later
func (m *Manager) GetStats() (*Stats, error)
Returns statistics for Intel RDT
func (m *Manager) Set(container *configs.Config) error
Set Intel RDT "resource control" filesystem as configured.
type MemBwInfo struct { BandwidthGran uint64 `json:"bandwidth_gran,omitempty"` DelayLinear uint64 `json:"delay_linear,omitempty"` MinBandwidth uint64 `json:"min_bandwidth,omitempty"` NumClosids uint64 `json:"num_closids,omitempty"` }
type Stats struct { // The read-only L3 cache information L3CacheInfo *L3CacheInfo `json:"l3_cache_info,omitempty"` // The read-only L3 cache schema in root L3CacheSchemaRoot string `json:"l3_cache_schema_root,omitempty"` // The L3 cache schema in 'container_id' group L3CacheSchema string `json:"l3_cache_schema,omitempty"` // The read-only memory bandwidth information MemBwInfo *MemBwInfo `json:"mem_bw_info,omitempty"` // The read-only memory bandwidth schema in root MemBwSchemaRoot string `json:"mem_bw_schema_root,omitempty"` // The memory bandwidth schema in 'container_id' group MemBwSchema string `json:"mem_bw_schema,omitempty"` // The memory bandwidth monitoring statistics from NUMA nodes in 'container_id' group MBMStats *[]MBMNumaNodeStats `json:"mbm_stats,omitempty"` // The cache monitoring technology statistics from NUMA nodes in 'container_id' group CMTStats *[]CMTNumaNodeStats `json:"cmt_stats,omitempty"` }