Documentation
¶
Index ¶
- Constants
- func GetTasksToAllocate(podGroupInfo *PodGroupInfo, taskOrderFn common_info.LessFn, ...) []*pod_info.PodInfo
- func GetTasksToAllocateInitResource(podGroupInfo *PodGroupInfo, taskOrderFn common_info.LessFn, ...) *resource_info.Resource
- func GetTasksToAllocateRequestedGPUs(podGroupInfo *PodGroupInfo, taskOrderFn common_info.LessFn, ...) (float64, int64)
- func GetTasksToEvict(job *PodGroupInfo, taskOrderFn common_info.LessFn) ([]*pod_info.PodInfo, bool)
- func HasTasksToAllocate(podGroupInfo *PodGroupInfo, isRealAllocation bool) bool
- type JobRequirement
- type PodGroupInfo
- func (podGroupInfo *PodGroupInfo) AddTaskInfo(ti *pod_info.PodInfo)
- func (podGroupInfo *PodGroupInfo) Clone() *PodGroupInfo
- func (podGroupInfo *PodGroupInfo) CloneWithTasks(tasks []*pod_info.PodInfo) *PodGroupInfo
- func (podGroupInfo *PodGroupInfo) DeleteTaskInfo(ti *pod_info.PodInfo) error
- func (podGroupInfo *PodGroupInfo) GetActiveAllocatedTasksCount() int
- func (podGroupInfo *PodGroupInfo) GetActivelyRunningTasksCount() int32
- func (podGroupInfo *PodGroupInfo) GetAliveTasksRequestedGPUs() float64
- func (podGroupInfo *PodGroupInfo) GetNumActiveUsedTasks() int
- func (podGroupInfo *PodGroupInfo) GetNumAliveTasks() int
- func (podGroupInfo *PodGroupInfo) GetNumAllocatedTasks() int
- func (podGroupInfo *PodGroupInfo) GetNumGatedTasks() int
- func (podGroupInfo *PodGroupInfo) GetNumPendingTasks() int
- func (podGroupInfo *PodGroupInfo) GetPendingTasks() []*pod_info.PodInfo
- func (podGroupInfo *PodGroupInfo) GetSchedulingConstraintsSignature() common_info.SchedulingConstraintsSignature
- func (podGroupInfo *PodGroupInfo) GetTasksActiveAllocatedReqResource() *resource_info.Resource
- func (podGroupInfo *PodGroupInfo) IsElastic() bool
- func (podGroupInfo *PodGroupInfo) IsPodGroupStale() bool
- func (podGroupInfo *PodGroupInfo) IsPreemptibleJob(isInferencePreemptible bool) bool
- func (podGroupInfo *PodGroupInfo) IsReadyForScheduling() bool
- func (podGroupInfo *PodGroupInfo) SetJobFitError(reason enginev2alpha2.UnschedulableReason, message string, ...)
- func (podGroupInfo *PodGroupInfo) SetPDB(pdb *policyv1.PodDisruptionBudget)
- func (podGroupInfo *PodGroupInfo) SetPodGroup(pg *enginev2alpha2.PodGroup)
- func (podGroupInfo *PodGroupInfo) SetTaskFitError(task *pod_info.PodInfo, fitErrors *common_info.FitErrors)
- func (podGroupInfo *PodGroupInfo) ShouldPipelineJob() bool
- func (podGroupInfo PodGroupInfo) String() string
- func (podGroupInfo *PodGroupInfo) UpdateTaskStatus(task *pod_info.PodInfo, status pod_status.PodStatus) error
- type PodGroupInfos
- type StalenessInfo
Constants ¶
View Source
const ( OverCapacity = "OverCapacity" PodSchedulingErrors = "PodSchedulingErrors" )
Variables ¶
This section is empty.
Functions ¶
func GetTasksToAllocate ¶
func GetTasksToAllocate( podGroupInfo *PodGroupInfo, taskOrderFn common_info.LessFn, isRealAllocation bool, ) []*pod_info.PodInfo
func GetTasksToAllocateInitResource ¶
func GetTasksToAllocateInitResource( podGroupInfo *PodGroupInfo, taskOrderFn common_info.LessFn, isRealAllocation bool, minNodeGPUMemory int64, ) *resource_info.Resource
func GetTasksToAllocateRequestedGPUs ¶
func GetTasksToAllocateRequestedGPUs( podGroupInfo *PodGroupInfo, taskOrderFn common_info.LessFn, isRealAllocation bool, ) (float64, int64)
func GetTasksToEvict ¶
func GetTasksToEvict(job *PodGroupInfo, taskOrderFn common_info.LessFn) ([]*pod_info.PodInfo, bool)
func HasTasksToAllocate ¶
func HasTasksToAllocate(podGroupInfo *PodGroupInfo, isRealAllocation bool) bool
Types ¶
type JobRequirement ¶
func (*JobRequirement) Get ¶
func (jr *JobRequirement) Get(resourceName v1.ResourceName) float64
type PodGroupInfo ¶
type PodGroupInfo struct {
UID common_info.PodGroupID
Name string
Namespace string
NamespacedName string
Queue common_info.QueueID
Priority int32
MinAvailable int32
JobFitErrors enginev2alpha2.UnschedulableExplanations
NodesFitErrors map[common_info.PodID]*common_info.FitErrors
// All tasks of the Job.
PodInfos pod_info.PodsMap
Allocated *resource_info.Resource
CreationTimestamp metav1.Time
LastStartTimestamp *time.Time
PodGroup *enginev2alpha2.PodGroup
PodGroupUID types.UID
// TODO(k82cn): keep backward compatibility, removed it when v1alpha1 finalized.
PDB *policyv1.PodDisruptionBudget
StalenessInfo
PodStatusIndex map[pod_status.PodStatus]pod_info.PodsMap
// contains filtered or unexported fields
}
func NewPodGroupInfo ¶
func NewPodGroupInfo(uid common_info.PodGroupID, tasks ...*pod_info.PodInfo) *PodGroupInfo
func (*PodGroupInfo) AddTaskInfo ¶
func (podGroupInfo *PodGroupInfo) AddTaskInfo(ti *pod_info.PodInfo)
func (*PodGroupInfo) Clone ¶
func (podGroupInfo *PodGroupInfo) Clone() *PodGroupInfo
func (*PodGroupInfo) CloneWithTasks ¶
func (podGroupInfo *PodGroupInfo) CloneWithTasks(tasks []*pod_info.PodInfo) *PodGroupInfo
func (*PodGroupInfo) DeleteTaskInfo ¶
func (podGroupInfo *PodGroupInfo) DeleteTaskInfo(ti *pod_info.PodInfo) error
func (*PodGroupInfo) GetActiveAllocatedTasksCount ¶ added in v0.4.8
func (podGroupInfo *PodGroupInfo) GetActiveAllocatedTasksCount() int
func (*PodGroupInfo) GetActivelyRunningTasksCount ¶ added in v0.4.8
func (podGroupInfo *PodGroupInfo) GetActivelyRunningTasksCount() int32
func (*PodGroupInfo) GetAliveTasksRequestedGPUs ¶
func (podGroupInfo *PodGroupInfo) GetAliveTasksRequestedGPUs() float64
func (*PodGroupInfo) GetNumActiveUsedTasks ¶
func (podGroupInfo *PodGroupInfo) GetNumActiveUsedTasks() int
func (*PodGroupInfo) GetNumAliveTasks ¶
func (podGroupInfo *PodGroupInfo) GetNumAliveTasks() int
func (*PodGroupInfo) GetNumAllocatedTasks ¶ added in v0.5.2
func (podGroupInfo *PodGroupInfo) GetNumAllocatedTasks() int
func (*PodGroupInfo) GetNumGatedTasks ¶ added in v0.5.1
func (podGroupInfo *PodGroupInfo) GetNumGatedTasks() int
func (*PodGroupInfo) GetNumPendingTasks ¶
func (podGroupInfo *PodGroupInfo) GetNumPendingTasks() int
func (*PodGroupInfo) GetPendingTasks ¶
func (podGroupInfo *PodGroupInfo) GetPendingTasks() []*pod_info.PodInfo
func (*PodGroupInfo) GetSchedulingConstraintsSignature ¶
func (podGroupInfo *PodGroupInfo) GetSchedulingConstraintsSignature() common_info.SchedulingConstraintsSignature
func (*PodGroupInfo) GetTasksActiveAllocatedReqResource ¶
func (podGroupInfo *PodGroupInfo) GetTasksActiveAllocatedReqResource() *resource_info.Resource
func (*PodGroupInfo) IsElastic ¶ added in v0.6.0
func (podGroupInfo *PodGroupInfo) IsElastic() bool
func (*PodGroupInfo) IsPodGroupStale ¶
func (podGroupInfo *PodGroupInfo) IsPodGroupStale() bool
func (*PodGroupInfo) IsPreemptibleJob ¶
func (podGroupInfo *PodGroupInfo) IsPreemptibleJob(isInferencePreemptible bool) bool
func (*PodGroupInfo) IsReadyForScheduling ¶
func (podGroupInfo *PodGroupInfo) IsReadyForScheduling() bool
func (*PodGroupInfo) SetJobFitError ¶
func (podGroupInfo *PodGroupInfo) SetJobFitError(reason enginev2alpha2.UnschedulableReason, message string, details *enginev2alpha2.UnschedulableExplanationDetails)
func (*PodGroupInfo) SetPDB ¶
func (podGroupInfo *PodGroupInfo) SetPDB(pdb *policyv1.PodDisruptionBudget)
func (*PodGroupInfo) SetPodGroup ¶
func (podGroupInfo *PodGroupInfo) SetPodGroup(pg *enginev2alpha2.PodGroup)
func (*PodGroupInfo) SetTaskFitError ¶
func (podGroupInfo *PodGroupInfo) SetTaskFitError(task *pod_info.PodInfo, fitErrors *common_info.FitErrors)
func (*PodGroupInfo) ShouldPipelineJob ¶
func (podGroupInfo *PodGroupInfo) ShouldPipelineJob() bool
func (PodGroupInfo) String ¶
func (podGroupInfo PodGroupInfo) String() string
func (*PodGroupInfo) UpdateTaskStatus ¶
func (podGroupInfo *PodGroupInfo) UpdateTaskStatus(task *pod_info.PodInfo, status pod_status.PodStatus) error
type PodGroupInfos ¶ added in v0.4.8
type PodGroupInfos struct {
PodGroupInfos []*PodGroupInfo
}
type StalenessInfo ¶
Click to show internal directories.
Click to hide internal directories.