Documentation ¶
Index ¶
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
This section is empty.
Types ¶
type CPURegulator ¶
type CPURegulator struct { types.ResourceEssentials // contains filtered or unexported fields }
CPURegulator gets raw cpu requirement data from policy and generates real cpu requirement for a certain region with fine-grained strategies to be robust
func (*CPURegulator) GetRequirement ¶ added in v0.4.0
func (c *CPURegulator) GetRequirement() int
GetRequirement returns the latest regulated cpu requirement
func (*CPURegulator) Regulate ¶
func (c *CPURegulator) Regulate(controlKnobValue types.ControlKnobValue)
Regulate runs an episode of cpu regulation to restrict raw cpu requirement and store the result as the latest cpu requirement value
func (*CPURegulator) SetEssentials ¶
func (c *CPURegulator) SetEssentials(essentials types.ResourceEssentials)
SetEssentials updates some essential parameters to restrict cpu requirement
func (*CPURegulator) SetLatestControlKnobValue ¶ added in v0.5.5
func (c *CPURegulator) SetLatestControlKnobValue(controlKnobValue types.ControlKnobValue)
SetLatestControlKnobValue overwrites the latest regulated cpu requirement
type DummyRegulator ¶ added in v0.4.0
type DummyRegulator struct {
// contains filtered or unexported fields
}
DummyRegulator always get requirement without regulate
func (*DummyRegulator) GetRequirement ¶ added in v0.4.0
func (d *DummyRegulator) GetRequirement() int
func (*DummyRegulator) Regulate ¶ added in v0.4.0
func (d *DummyRegulator) Regulate(controlKnobValue types.ControlKnobValue)
func (*DummyRegulator) SetEssentials ¶ added in v0.4.0
func (d *DummyRegulator) SetEssentials(_ types.ResourceEssentials)
func (*DummyRegulator) SetLatestControlKnobValue ¶ added in v0.5.5
func (d *DummyRegulator) SetLatestControlKnobValue(controlKnobValue types.ControlKnobValue)
type Regulator ¶ added in v0.4.0
type Regulator interface { // SetEssentials updates some essential parameters to restrict requirement SetEssentials(essentials types.ResourceEssentials) // SetLatestControlKnobValue overwrites the latest regulated requirement SetLatestControlKnobValue(controlKnobValue types.ControlKnobValue) // Regulate runs an episode of regulation to restrict raw requirement and store the result // as the latest requirement value Regulate(controlKnobValue types.ControlKnobValue) // GetRequirement returns the latest regulated requirement GetRequirement() int }
Regulator gets raw requirement data from policy and generates real requirement for a certain region with fine-grained strategies to be robust
func NewCPURegulator ¶
func NewCPURegulator() Regulator
NewCPURegulator returns a cpu regulator instance with immutable parameters
func NewDummyRegulator ¶ added in v0.4.0
func NewDummyRegulator() Regulator