mirror of
https://github.com/opencontainers/runc.git
synced 2025-10-27 01:21:13 +08:00
Use sync.Once to init Intel RDT when needed for a small speedup to operations which do not require Intel RDT. Simplify IntelRdtManager initialization in LinuxFactory. Signed-off-by: Xiaochen Shen <xiaochen.shen@intel.com>
26 lines
460 B
Go
26 lines
460 B
Go
package intelrdt
|
|
|
|
var (
|
|
cmtEnabled bool
|
|
)
|
|
|
|
// Check if Intel RDT/CMT is enabled.
|
|
func IsCMTEnabled() bool {
|
|
featuresInit()
|
|
return cmtEnabled
|
|
}
|
|
|
|
func getCMTNumaNodeStats(numaPath string) (*CMTNumaNodeStats, error) {
|
|
stats := &CMTNumaNodeStats{}
|
|
|
|
if enabledMonFeatures.llcOccupancy {
|
|
llcOccupancy, err := getIntelRdtParamUint(numaPath, "llc_occupancy")
|
|
if err != nil {
|
|
return nil, err
|
|
}
|
|
stats.LLCOccupancy = llcOccupancy
|
|
}
|
|
|
|
return stats, nil
|
|
}
|