1
0
mirror of https://github.com/newnius/YAO-scheduler.git synced 2025-12-12 23:36:44 +00:00
This commit is contained in:
2020-04-30 14:48:58 +08:00
parent a677214b65
commit 0688ab4239
2 changed files with 8 additions and 2 deletions

View File

@@ -89,6 +89,8 @@ func (optimizer *Optimizer) feed(job string, utils []int) {
}
func (optimizer *Optimizer) predictUtilGPU(job string) (int, bool) {
log.Info("predictUtilGPU, ", job)
return 49, true
if _, err := optimizer.jobUtilsGPU[job]; err {
return 100, false
}
@@ -99,6 +101,7 @@ func (optimizer *Optimizer) predictUtilGPU(job string) (int, bool) {
}
func (optimizer *Optimizer) predictTime(job string) (OptimizerJobExecutionTime, bool) {
log.Info("predictTime,", job)
if _, err := optimizer.predicts[job]; err {
return OptimizerJobExecutionTime{}, false
}

View File

@@ -28,6 +28,8 @@ type SchedulerFair struct {
resourceAllocationsMu sync.Mutex
enabled bool
parallelism int
enableShare bool
enablePreSchedule bool
}
type FairJobSorter []Job
@@ -51,6 +53,8 @@ func (scheduler *SchedulerFair) Start() {
scheduler.resourceAllocations = map[string]*ResourceCount{}
scheduler.enabled = true
scheduler.schedulingJobsCnt = 0
scheduler.enableShare = true
scheduler.enablePreSchedule = true
scheduler.parallelism = 1
@@ -213,10 +217,9 @@ func (scheduler *SchedulerFair) AcquireResource(job Job, task Task) NodeStatus {
log.Info(candidates)
/* second round, find sharable gpu */
if len(candidates) == 0 {
if len(candidates) == 0 && scheduler.enableShare {
// check sharable
allocationType = 2
log.Info("dasdsa")
if util, valid := InstanceOfOptimizer().predictUtilGPU(job.Name); valid {
for i := 0; i < pool.poolsCount; i++ {