mirror of
https://github.com/opencontainers/runc.git
synced 2026-07-11 14:13:58 +08:00
95af9eff82
MBA Software Controller feature is introduced in Linux kernel v4.18. It is a software enhancement to mitigate some limitations in MBA which describes in kernel documentation. It also makes the interface more user friendly - we could specify memory bandwidth in "MBps" (Mega Bytes per second) as well as in "percentages". The kernel underneath would use a software feedback mechanism or a "Software Controller" which reads the actual bandwidth using MBM counters and adjust the memory bandwidth percentages to ensure: "actual memory bandwidth < user specified memory bandwidth". We could enable this feature through mount option "-o mba_MBps": mount -t resctrl resctrl -o mba_MBps /sys/fs/resctrl In runc, we handle both memory bandwidth schemata in unified format: "MB:<cache_id0>=bandwidth0;<cache_id1>=bandwidth1;..." The unit of memory bandwidth is specified in "percentages" by default, and in "MBps" if MBA Software Controller is enabled. For more information about Intel RDT and MBA Software Controller: https://www.kernel.org/doc/Documentation/x86/intel_rdt_ui.txt Signed-off-by: Xiaochen Shen <xiaochen.shen@intel.com>
14 lines
518 B
Go
14 lines
518 B
Go
package configs
|
|
|
|
type IntelRdt struct {
|
|
// The schema for L3 cache id and capacity bitmask (CBM)
|
|
// Format: "L3:<cache_id0>=<cbm0>;<cache_id1>=<cbm1>;..."
|
|
L3CacheSchema string `json:"l3_cache_schema,omitempty"`
|
|
|
|
// The schema of memory bandwidth per L3 cache id
|
|
// Format: "MB:<cache_id0>=bandwidth0;<cache_id1>=bandwidth1;..."
|
|
// The unit of memory bandwidth is specified in "percentages" by
|
|
// default, and in "MBps" if MBA Software Controller is enabled.
|
|
MemBwSchema string `json:"memBwSchema,omitempty"`
|
|
}
|