Documentation ¶
Index ¶
- func GetRegisteredInitializers() map[types.CPUProvisionPolicyName]InitFunc
- func RegisterInitializer(name types.CPUProvisionPolicyName, initFunc InitFunc)
- type InitFunc
- type PolicyBase
- type PolicyCanonical
- type PolicyNone
- type PolicyRama
- type ProvisionPolicy
- func NewPolicyCanonical(regionName string, regionType types.QoSRegionType, ownerPoolName string, ...) ProvisionPolicy
- func NewPolicyNone(_ string, _ types.QoSRegionType, _ string, _ *config.Configuration, ...) ProvisionPolicy
- func NewPolicyRama(regionName string, regionType types.QoSRegionType, ownerPoolName string, ...) ProvisionPolicy
Constants ¶
This section is empty.
Variables ¶
This section is empty.
Functions ¶
func GetRegisteredInitializers ¶
func GetRegisteredInitializers() map[types.CPUProvisionPolicyName]InitFunc
func RegisterInitializer ¶
func RegisterInitializer(name types.CPUProvisionPolicyName, initFunc InitFunc)
Types ¶
type InitFunc ¶
type InitFunc func(regionName string, regionType types.QoSRegionType, ownerPoolName string, conf *config.Configuration, extraConfig interface{}, metaReader metacache.MetaReader, metaServer *metaserver.MetaServer, emitter metrics.MetricEmitter) ProvisionPolicy
type PolicyBase ¶
type PolicyBase struct { types.ResourceEssentials types.ControlEssentials // contains filtered or unexported fields }
func NewPolicyBase ¶
func NewPolicyBase(regionName string, regionType types.QoSRegionType, ownerPoolName string, metaReader metacache.MetaReader, metaServer *metaserver.MetaServer, emitter metrics.MetricEmitter) *PolicyBase
func (*PolicyBase) GetControlKnobAdjusted ¶ added in v0.3.0
func (p *PolicyBase) GetControlKnobAdjusted() (types.ControlKnob, error)
func (*PolicyBase) SetBindingNumas ¶
func (p *PolicyBase) SetBindingNumas(numas machine.CPUSet)
func (*PolicyBase) SetEssentials ¶
func (p *PolicyBase) SetEssentials(resourceEssentials types.ResourceEssentials, controlEssentials types.ControlEssentials)
func (*PolicyBase) SetPodSet ¶
func (p *PolicyBase) SetPodSet(podSet types.PodSet)
type PolicyCanonical ¶
type PolicyCanonical struct {
*PolicyBase
}
func (*PolicyCanonical) Update ¶
func (p *PolicyCanonical) Update() error
type PolicyNone ¶ added in v0.4.0
type PolicyNone struct{}
func (*PolicyNone) GetControlKnobAdjusted ¶ added in v0.4.0
func (p *PolicyNone) GetControlKnobAdjusted() (types.ControlKnob, error)
func (*PolicyNone) SetBindingNumas ¶ added in v0.4.0
func (p *PolicyNone) SetBindingNumas(machine.CPUSet)
func (*PolicyNone) SetEssentials ¶ added in v0.4.0
func (p *PolicyNone) SetEssentials(types.ResourceEssentials, types.ControlEssentials)
func (*PolicyNone) SetPodSet ¶ added in v0.4.0
func (p *PolicyNone) SetPodSet(types.PodSet)
func (*PolicyNone) Update ¶ added in v0.4.0
func (p *PolicyNone) Update() error
type PolicyRama ¶ added in v0.3.0
type PolicyRama struct { *PolicyBase // contains filtered or unexported fields }
func (*PolicyRama) Update ¶ added in v0.3.0
func (p *PolicyRama) Update() error
type ProvisionPolicy ¶
type ProvisionPolicy interface { // SetEssentials set essentials for policy update SetEssentials(resourceEssentials types.ResourceEssentials, controlEssentials types.ControlEssentials) // SetPodSet overwrites policy's pod/container record SetPodSet(types.PodSet) // SetBindingNumas overwrites the numa ids this policy interested in SetBindingNumas(machine.CPUSet) // Update triggers an episode of algorithm update Update() error // GetControlKnobAdjusted returns the latest legal control knob value GetControlKnobAdjusted() (types.ControlKnob, error) }
ProvisionPolicy generates resource provision result based on configured algorithm
func NewPolicyCanonical ¶
func NewPolicyCanonical(regionName string, regionType types.QoSRegionType, ownerPoolName string, _ *config.Configuration, _ interface{}, metaReader metacache.MetaReader, metaServer *metaserver.MetaServer, emitter metrics.MetricEmitter) ProvisionPolicy
func NewPolicyNone ¶ added in v0.4.0
func NewPolicyNone(_ string, _ types.QoSRegionType, _ string, _ *config.Configuration, _ interface{}, _ metacache.MetaReader, _ *metaserver.MetaServer, _ metrics.MetricEmitter) ProvisionPolicy
func NewPolicyRama ¶ added in v0.3.0
func NewPolicyRama(regionName string, regionType types.QoSRegionType, ownerPoolName string, conf *config.Configuration, _ interface{}, metaReader metacache.MetaReader, metaServer *metaserver.MetaServer, emitter metrics.MetricEmitter) ProvisionPolicy
Click to show internal directories.
Click to hide internal directories.