mirror of
https://github.com/newnius/YAO-scheduler.git
synced 2025-12-15 08:16:43 +00:00
update
This commit is contained in:
@@ -90,21 +90,30 @@ func (optimizer *Optimizer) feed(job string, utils []int) {
|
|||||||
}
|
}
|
||||||
|
|
||||||
func (optimizer *Optimizer) predictUtilGPU(job string) (int, bool) {
|
func (optimizer *Optimizer) predictUtilGPU(job string) (int, bool) {
|
||||||
log.Info("predictUtilGPU, ", job)
|
str := strings.Split(job, "-")
|
||||||
return 49, true
|
if len(str) == 2 {
|
||||||
if _, err := optimizer.jobUtilsGPU[job]; err {
|
jobName := str[0]
|
||||||
return 100, false
|
|
||||||
|
log.Info("predictUtilGPU, ", jobName)
|
||||||
|
return 49, true
|
||||||
|
if _, err := optimizer.jobUtilsGPU[jobName]; err {
|
||||||
|
return 100, false
|
||||||
|
}
|
||||||
|
if optimizer.versions[jobName] > 5 {
|
||||||
|
return optimizer.jobUtilsGPU[jobName], true
|
||||||
|
}
|
||||||
}
|
}
|
||||||
if optimizer.versions[job] > 5 {
|
return 100, false
|
||||||
return optimizer.jobUtilsGPU[job], true
|
|
||||||
}
|
|
||||||
return optimizer.jobUtilsGPU[job], false
|
|
||||||
}
|
}
|
||||||
|
|
||||||
func (optimizer *Optimizer) predictTime(job string) (OptimizerJobExecutionTime, bool) {
|
func (optimizer *Optimizer) predictTime(job string) (OptimizerJobExecutionTime, bool) {
|
||||||
log.Info("predictTime,", job)
|
str := strings.Split(job, "-")
|
||||||
if _, err := optimizer.predicts[job]; err {
|
if len(str) == 2 {
|
||||||
return OptimizerJobExecutionTime{}, false
|
jobName := str[0]
|
||||||
|
log.Info("predictTime,", jobName)
|
||||||
|
if _, ok := optimizer.predicts[jobName]; ok {
|
||||||
|
return optimizer.predicts[job], optimizer.predicts[jobName].Version > 5
|
||||||
|
}
|
||||||
}
|
}
|
||||||
return optimizer.predicts[job], optimizer.predicts[job].Version > 5
|
return OptimizerJobExecutionTime{}, false
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -267,13 +267,6 @@ func (scheduler *SchedulerFair) AcquireResource(job Job, task Task) NodeStatus {
|
|||||||
log.Info(allocationType)
|
log.Info(allocationType)
|
||||||
/*assign*/
|
/*assign*/
|
||||||
if len(candidates) > 0 {
|
if len(candidates) > 0 {
|
||||||
var available []GPUStatus
|
|
||||||
for _, status := range candidates[0].Status {
|
|
||||||
if status.MemoryAllocated == 0 && status.MemoryUsed < 10 {
|
|
||||||
available = append(available, status)
|
|
||||||
}
|
|
||||||
}
|
|
||||||
|
|
||||||
node := candidates[0]
|
node := candidates[0]
|
||||||
res.ClientID = node.ClientID
|
res.ClientID = node.ClientID
|
||||||
res.ClientHost = node.ClientHost
|
res.ClientHost = node.ClientHost
|
||||||
|
|||||||
Reference in New Issue
Block a user