mirror of
https://github.com/newnius/YAO-scheduler.git
synced 2025-06-06 22:01:55 +00:00
update
This commit is contained in:
parent
c6c7166475
commit
a1102e61db
10
src/ga.go
10
src/ga.go
@ -141,7 +141,7 @@ func (X Allocation) Crossover(Y eaopt.Genome, rng *rand.Rand) {
|
||||
taskToNode := map[string]string{}
|
||||
for nodeID, tasks := range X.TasksOnNode {
|
||||
for _, task := range tasks {
|
||||
taskToNode[task.Name] = nodeID
|
||||
taskToNode[task.ID] = nodeID
|
||||
}
|
||||
}
|
||||
|
||||
@ -158,17 +158,17 @@ func (X Allocation) Crossover(Y eaopt.Genome, rng *rand.Rand) {
|
||||
for _, task := range Y.(Allocation).TasksOnNode[nodeID] {
|
||||
//fmt.Println(Y.(Allocation).TasksOnNode[nodeID])
|
||||
idx := -1
|
||||
nodeID2, ok := taskToNode[task.Name]
|
||||
nodeID2, ok := taskToNode[task.ID]
|
||||
if !ok {
|
||||
log.Warn("Error", taskToNode, X.TasksOnNode, task.Name)
|
||||
log.Warn("Error", taskToNode, X.TasksOnNode, task.ID)
|
||||
}
|
||||
for i, task2 := range X.TasksOnNode[nodeID2] {
|
||||
if task2.Name == task.Name {
|
||||
if task2.ID == task.ID {
|
||||
idx = i
|
||||
}
|
||||
}
|
||||
if idx == -1 {
|
||||
log.Warn("Error 2", taskToNode, X.TasksOnNode, task.Name)
|
||||
log.Warn("Error 2", taskToNode, X.TasksOnNode, task.ID)
|
||||
}
|
||||
//fmt.Println(X.TasksOnNode)
|
||||
copy(X.TasksOnNode[nodeID2][idx:], X.TasksOnNode[nodeID2][idx+1:])
|
||||
|
@ -40,6 +40,9 @@ func serverAPI(w http.ResponseWriter, r *http.Request) {
|
||||
msgSubmit.Code = 1
|
||||
msgSubmit.Error = err.Error()
|
||||
} else {
|
||||
for i := range job.Tasks {
|
||||
job.Tasks[i].ID = job.Name + ":" + job.Tasks[i].Name
|
||||
}
|
||||
scheduler.Schedule(job)
|
||||
}
|
||||
js, err := json.Marshal(msgSubmit)
|
||||
|
@ -965,7 +965,7 @@ func (pool *ResourcePool) doAcquireResource(job Job) []NodeStatus {
|
||||
}
|
||||
|
||||
for i := range job.Tasks {
|
||||
if job.Tasks[i].Name == task.Name {
|
||||
if job.Tasks[i].ID == task.ID {
|
||||
ress[i] = res
|
||||
}
|
||||
}
|
||||
|
@ -30,6 +30,7 @@ type Job struct {
|
||||
}
|
||||
|
||||
type Task struct {
|
||||
ID string `json:"id"`
|
||||
Name string `json:"name"`
|
||||
Job string `json:"job_name"`
|
||||
Image string `json:"image"`
|
||||
|
Loading…
Reference in New Issue
Block a user