1
0
mirror of https://github.com/newnius/YAO-scheduler.git synced 2025-06-07 22:31:55 +00:00
This commit is contained in:
Newnius 2020-06-05 15:35:56 +08:00
parent 6f0a9617e4
commit c879cf0461

View File

@ -46,10 +46,14 @@ func (optimizer *Optimizer) init(conf Configuration) {
}
func (optimizer *Optimizer) feedStats(job string, stats [][]TaskStatus) {
go func() {
var UtilsCPU []float64
var Mems []float64
var BwRxs []float64
var BwTxs []float64
str := strings.Split(job, "-")
if len(str) == 2 {
jobName := str[0]
for _, stat := range stats {
for _, task := range stat {
UtilsCPU = append(UtilsCPU, task.UtilCPU)
@ -58,7 +62,7 @@ func (optimizer *Optimizer) feedStats(job string, stats [][]TaskStatus) {
BwTxs = append(BwTxs, task.BWTx)
}
}
optimizer.stats[job] = map[string]float64{
optimizer.stats[jobName] = map[string]float64{
"cpu": optimizer.mean(UtilsCPU),
"cpu_std": optimizer.std(UtilsCPU),
"mem": optimizer.max(Mems),
@ -66,6 +70,8 @@ func (optimizer *Optimizer) feedStats(job string, stats [][]TaskStatus) {
"bw_tx": optimizer.mean(BwTxs),
}
}
}()
}
func (optimizer *Optimizer) max(values []float64) float64 {
value := 0.0