1
0
mirror of https://github.com/newnius/YAO-scheduler.git synced 2025-06-06 22:01:55 +00:00
This commit is contained in:
Newnius 2020-07-01 11:44:09 +08:00
parent e5109db709
commit f2768984ae

View File

@ -67,6 +67,8 @@ func (jm *JobManager) start() {
return return
} }
isShare := false
isScheduleAhead := false
if !jm.killFlag { if !jm.killFlag {
/* switch to Running state */ /* switch to Running state */
jm.scheduler.UpdateProgress(jm.job, Running) jm.scheduler.UpdateProgress(jm.job, Running)
@ -85,6 +87,9 @@ func (jm *JobManager) start() {
UUIDs = append(UUIDs, GPU.UUID) UUIDs = append(UUIDs, GPU.UUID)
if GPU.MemoryUsed == GPU.MemoryTotal { if GPU.MemoryUsed == GPU.MemoryTotal {
shouldWait = "1" shouldWait = "1"
isScheduleAhead = true
} else if GPU.MemoryUsed > 0 {
isShare = true
} }
/* attach to GPUs */ /* attach to GPUs */
InstanceOfResourcePool().attach(GPU.UUID, jm.job) InstanceOfResourcePool().attach(GPU.UUID, jm.job)
@ -174,7 +179,7 @@ func (jm *JobManager) start() {
} }
InstanceOfOptimizer().FeedStats(jm.job, "Worker", stats) InstanceOfOptimizer().FeedStats(jm.job, "Worker", stats)
if len(jm.job.Tasks) == 1 { if len(jm.job.Tasks) == 1 && !isShare && !isScheduleAhead {
InstanceOfOptimizer().FeedTime(jm.job, stats) InstanceOfOptimizer().FeedTime(jm.job, stats)
} }
log.Info("JobMaster exited ", jm.job.Name) log.Info("JobMaster exited ", jm.job.Name)