# Functions

No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
GetCPUBasicInfo gets the cpu basic info from the node-level annotations.
No description provided by the author
GetCPUNormalizationRatio gets the cpu normalization ratio from the node.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
GetExtendedResourceSpec parses ExtendedResourceSpec from annotations.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
GetNodeRawAllocatable gets the raw allocatable of node from annotations.
No description provided by the author
GetNodeResourceAmplificationRatio gets the amplification ratio of a specific resource of node from annotations.
GetNodeResourceAmplificationRatios gets the resource amplification ratios of node from annotations.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
GetPodPriorityClassWithDefault gets the pod's PriorityClass with the default config.
GetPodPriorityClassWithQoS returns the default PriorityClass according to its QoSClass when the pod does not specify a PriorityClass explicitly.
No description provided by the author
No description provided by the author
GetPodQoSClassWithDefault gets the pod's QoSClass with the default config.
GetPodQoSClassWithKubeQoS returns the default QoSClass according to its kubernetes QoSClass when the pod does not specify a koordinator QoSClass explicitly.
GetPodSubPriority get pod's sub-priority in Koordinator from label.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
GetResourceSpec parses ResourceSpec from annotations.
GetResourceStatus parses ResourceStatus from annotations.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
HasNodeRawAllocatable checks if the node has raw allocatable annotation.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
SetCPUBasicInfo sets the cpu basic info at the node-level annotations.
SetCPUNormalizationRatio sets the node annotation according to the cpu-normalization-ratio.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
SetNodeRawAllocatable sets the node annotation according to the raw allocatable.
SetNodeResourceAmplificationRatio sets the amplification ratio of a specific resource of the node.
SetNodeResourceAmplificationRatios sets the node annotation according to the resource amplification ratios.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
TranslateResourceNameByPriorityClass translates defaultResourceName to extend resourceName by PriorityClass.

# Constants

AnnotationAliasGangMatchPolicy defines same match policy but different prefix.
RootQuotaName means quotaTree's root\head.
RootQuotaName means quotaTree's root\head.
AnnotationCPUBasicInfo denotes the basic CPU info of the node.
AnnotationCPUNormalizationRatio denotes the cpu normalization ratio of the node.
AnnotationCustomUsageThresholds represents the user-defined resource utilization threshold.
AnnotationDeviceAllocated represents the device allocated by the pod.
AnnotationDeviceAllocateHint guides the scheduler in selecting and allocating specialized hardware resources.
AnnotationDeviceJointAllocate guides the scheduler joint-allocates devices.
AnnotationEvictionCost indicates the eviction cost.
AnnotationExtendedResourceSpec specifies the resource requirements of extended resources for internal usage.
AnnotationGangGroups defines which gangs are bundled as a group The gang will go to bind only all gangs in one group meet the conditions.
AnnotationGangMatchPolicy defines the Gang Scheduling operation of taking which status pod into account Support GangMatchPolicyOnlyWaiting, GangMatchPolicyWaitingAndRunning, GangMatchPolicyOnceSatisfied, default is GangMatchPolicyOnceSatisfied.
AnnotationGangMinNum specifies the minimum number of the gang that can be executed.
AnnotationGangMode defines the Gang Scheduling operation when failed scheduling Support GangModeStrict and GangModeNonStrict, default is GangModeStrict.
AnnotationGangName specifies the name of the gang.
No description provided by the author
AnnotationGangTimeout means that the entire gang cannot be scheduled due to timeout The annotation is added by the scheduler when the gang times out.
AnnotationGangTotalNum specifies the total children number of the gang If not specified,it will be set with the AnnotationGangMinNum.
AnnotationGangWaitTime specifies gang's max wait time in Permit Stage.
RootQuotaName means quotaTree's root\head.
AnnotationKubeletCPUManagerPolicy describes the cpu manager policy options of kubelet.
AnnotationNetworkQOS are used to set bandwidth for Pod.
AnnotationNodeBandwidth specifies the total network bandwidth of the node, which can be set by cluster administrator or third party components.
AnnotationNodeBECPUSharedPools describes the CPU Shared Pool defined by Koordinator.
AnnotationNodeColocationStrategy denotes the annotation key of the node colocation strategy.
AnnotationNodeCPUAllocs describes K8s Guaranteed Pods.
AnnotationNodeCPUSharedPools describes the CPU Shared Pool defined by Koordinator.
AnnotationNodeCPUTopology describes the detailed CPU topology.
AnnotationNodeRawAllocatable denotes the un-amplified raw allocatable of the node.
No description provided by the author
AnnotationNodeResourceAmplificationRatio denotes the resource amplification ratio of the node.
No description provided by the author
RootQuotaName means quotaTree's root\head.
RootQuotaName means quotaTree's root\head.
AnnotationNUMATopologySpec represents numa allocation API defined by Koordinator.
RootQuotaName means quotaTree's root\head.
RootQuotaName means quotaTree's root\head.
AnnotationResctrl describes the resctrl config of pod.
AnnotationReservationAffinity represents the constraints of Pod selection Reservation.
AnnotationReservationAllocated represents the reservation allocated by the pod.
AnnotationReservationCurrentOwner indicates current resource owners which allocated the reservation resources.
AnnotationReservationOwners indicates the owner specification which can allocate reserved resources.
AnnotationReservationRestrictedOptions represent the Reservation Restricted options.
RootQuotaName means quotaTree's root\head.
AnnotationResourceSpec represents resource allocation API defined by Koordinator.
AnnotationResourceStatus represents resource allocation result.
RootQuotaName means quotaTree's root\head.
RootQuotaName means quotaTree's root\head.
No description provided by the author
AnnotationSoftEviction indicates custom eviction.
RootQuotaName means quotaTree's root\head.
RootQuotaName means quotaTree's root\head.
No description provided by the author
max is not welcomed since it may import outliers.
No description provided by the author
No description provided by the author
CPUBindPolicyConstrainedBurst constrains the CPU Shared Pool range of the Burstable Pod.
CPUBindPolicyDefault performs the default bind policy that specified in koord-scheduler configuration.
CPUBindPolicyFullPCPUs favor cpuset allocation that pack in few physical cores.
CPUBindPolicySpreadByPCPUs favor cpuset allocation that evenly allocate logical cpus across physical cores.
CPUExclusivePolicyNone does not perform any exclusive policy.
CPUExclusivePolicyNUMANodeLevel indicates mutual exclusion in the NUMA topology dimension.
CPUExclusivePolicyPCPULevel represents mutual exclusion in the physical core dimension.
RootQuotaName means quotaTree's root\head.
Deprecated: Device extension resource names should use the prefix `koordinator.sh`.
Deprecated: Device extension resource names should use the prefix `koordinator.sh`.
Deprecated: Device extension resource names should use the prefix `koordinator.sh`.
Deprecated: Device extension resource names should use the prefix `koordinator.sh`.
Deprecated: Device extension resource names should use the prefix `koordinator.sh`.
Deprecated: Device extension resource names should use the prefix `koordinator.sh`.
Deprecated: Device extension resource names should use the prefix `koordinator.sh`.
Deprecated: Device extension resource names should use the prefix `koordinator.sh`.
DeviceLevelDeviceExclusivePolicy represents mutual exclusion in the device instance dimension.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
Deprecated: because of the limitation of extended resource naming.
Deprecated: because of the limitation of extended resource naming.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
RootQuotaName means quotaTree's root\head.
RootQuotaName means quotaTree's root\head.
LabelCPUNormalizationEnabled indicates whether the cpu normalization is enabled on the node.
LabelCPUReclaimRatio denotes the CPU reclaim ratio of a node.
No description provided by the author
No description provided by the author
Deprecated: kubernetes-sigs/scheduler-plugins/lightweight-coscheduling.
Deprecated: kubernetes-sigs/scheduler-plugins/lightweight-coscheduling.
No description provided by the author
LabelMemoryReclaimRatio denotes the memory reclaim ratio of a node.
LabelNodeCPUBindPolicy constrains how to bind CPU logical CPUs when scheduling.
LabelNodeNUMAAllocateStrategy indicates how to choose satisfied NUMA Nodes when scheduling.
LabelNUMATopologyPolicy represents that how to align resource allocation according to the NUMA topology.
LabelPodMutatingUpdate is a label key that pods with `pod.koordinator.sh/mutating-update=true` will be mutated by Koordinator webhook when updating.
LabelPodOperatingMode describes the mode of operation for Pod.
No description provided by the author
LabelPodPriorityClass is used to revise those Pods that are already running and have Priority set, so that Koordinator can be smoothly deployed to the running cluster.
No description provided by the author
RootQuotaName means quotaTree's root\head.
RootQuotaName means quotaTree's root\head.
RootQuotaName means quotaTree's root\head.
RootQuotaName means quotaTree's root\head.
RootQuotaName means quotaTree's root\head.
RootQuotaName means quotaTree's root\head.
RootQuotaName means quotaTree's root\head.
RootQuotaName means quotaTree's root\head.
LabelReservationOrder controls the preference logic for Reservation.
No description provided by the author
No description provided by the author
NodeCPUBindPolicyFullPCPUsOnly requires that the scheduler must allocate full physical cores.
NodeCPUBindPolicyNone does not perform any bind policy.
NodeCPUBindPolicySpreadByPCPUs requires that the scheduler must evenly allocate logical cpus across physical cores.
NodeDomainPrefix represents the node domain prefix.
No description provided by the author
No description provided by the author
NodeReservationApplyPolicyDefault will affect the total amount of schedulable resources of the node and reserve CPU Cores.
NodeReservationApplyPolicyReservedCPUsOnly means that only CPU Cores are reserved, but it will not affect the total amount of schedulable resources of the node.
NormalizationRatioDiffEpsilon is the min difference between two cpu normalization ratios.
NUMADistributeEvenly indicates that evenly distribute CPUs across NUMA Nodes.
NUMALeastAllocated indicates that allocates from the NUMA Node with the most amount of available resource.
NUMAMostAllocated indicates that allocates from the NUMA Node with the least amount of available resource.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
PCIExpressLevelDeviceExclusivePolicy represents mutual exclusion in the PCIe dimension.
No description provided by the author
https://koordinator.sh/docs/architecture/priority/.
https://koordinator.sh/docs/architecture/priority/.
https://koordinator.sh/docs/architecture/priority/.
https://koordinator.sh/docs/architecture/priority/.
https://koordinator.sh/docs/architecture/priority/.
https://koordinator.sh/docs/architecture/qos/.
https://koordinator.sh/docs/architecture/qos/.
https://koordinator.sh/docs/architecture/qos/.
https://koordinator.sh/docs/architecture/qos/.
https://koordinator.sh/docs/architecture/qos/.
https://koordinator.sh/docs/architecture/qos/.
RootQuotaName means quotaTree's root\head.
No description provided by the author
ReservationPodOperatingMode means the pod represents a scheduling and resource reservation unit.
ResourceDomainPrefix is a prefix "kubernetes.io/" used by particular extend resources (e.g.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
RootQuotaName means quotaTree's root\head.
RunnablePodOperatingMode represents the original pod behavior, it is the default mode where the pod’s containers are executed by Kubelet when the pod is assigned a node.
No description provided by the author
SchedulingDomainPrefix represents the scheduling domain prefix.
RootQuotaName means quotaTree's root\head.

# Variables

No description provided by the author
No description provided by the author
No description provided by the author
KnownPriorityClasses is the list of known priority classes in koordinator.
Define Koordinator priority as a variable value to support customizing different priority ranges.
Define Koordinator priority as a variable value to support customizing different priority ranges.
Define Koordinator priority as a variable value to support customizing different priority ranges.
Define Koordinator priority as a variable value to support customizing different priority ranges.
Define Koordinator priority as a variable value to support customizing different priority ranges.
Define Koordinator priority as a variable value to support customizing different priority ranges.
Define Koordinator priority as a variable value to support customizing different priority ranges.
Define Koordinator priority as a variable value to support customizing different priority ranges.
QoSClassForGuaranteed indicates the QoSClass which a Guaranteed Pod without a koordinator QoSClass specified should be regarded by default.
No description provided by the author

# Structs

CPUBasicInfo describes the cpu basic features and status.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
CustomUsageThresholds supports user-defined node resource utilization thresholds.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
NodeReservation resource reserved by node.annotation, If node.annotation declares the resources to be reserved, like this: annotations: node.koordinator.sh/reservation: >- {"reservedCPUs":"0-5"}.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
ReservationAffinity represents the constraints of Pod selection Reservation.
ReservationAffinitySelector represents the union of the results of one or more label queries over a set of reservations; that is, it represents the OR of the selectors represented by the reservation selector terms.
No description provided by the author
No description provided by the author
ResourceSpec describes extra attributes of the resource requirements.
ResourceStatus describes resource allocation result, such as how to bind CPU.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author

# Type aliases

No description provided by the author
CPUBindPolicy defines the CPU binding policy.
No description provided by the author
No description provided by the author
No description provided by the author
DeviceAllocations would be injected into Pod as form of annotation during Pre-bind stage.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
NUMAAllocateStrategy indicates how to choose satisfied NUMA Nodes.
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
No description provided by the author
Ratio is a float64 wrapper which will always be json marshalled with precision 2.