Skip to content

Commit

Permalink
IL: decouple eval task and deploy task
Browse files Browse the repository at this point in the history
Signed-off-by: JimmyYang20 <yangjin39@huawei.com>
  • Loading branch information
JimmyYang20 committed Nov 22, 2021
1 parent 3d7c041 commit 5bf70e6
Show file tree
Hide file tree
Showing 3 changed files with 158 additions and 199 deletions.
26 changes: 13 additions & 13 deletions pkg/globalmanager/controllers/incrementallearning/downstream.go
Original file line number Diff line number Diff line change
Expand Up @@ -122,25 +122,25 @@ func (c *Controller) syncToEdge(eventType watch.EventType, obj interface{}) erro

runtime.InjectSecretAnnotations(c.kubeClient, job, job.Spec.CredentialName)

// isJobResidentNode checks whether nodeName is a job resident node
isJobResidentNode := func(nodeName string) bool {
// the node where LC monitors dataset and the node where inference worker is running are job resident node
if nodeName == dsNodeName || nodeName == deployNodeName {
return true
}
return false
}

doJobStageEvent := func(modelName string, nodeName string) {
if currentType == sednav1.ILJobStageCondWaiting {
if jobStage != sednav1.ILJobDeploy {
syncJobWithNodeName(dsNodeName)
syncJobWithNodeName(dsNodeName)
if modelName != "" {
syncModelWithName(modelName)
}
} else if currentType == sednav1.ILJobStageCondRunning {
if nodeName != "" {
syncJobWithNodeName(nodeName)
}

if jobStage == sednav1.ILJobDeploy {
if evalNodeName != dsNodeName {
// delete LC's job from eval node that's different from dataset node when deploy worker's status is ready.
c.sendToEdgeFunc(evalNodeName, watch.Deleted, job)
}
}
syncJobWithNodeName(nodeName)
} else if currentType == sednav1.ILJobStageCondCompleted || currentType == sednav1.ILJobStageCondFailed {
if nodeName != dsNodeName {
if !isJobResidentNode(nodeName) {
// delete LC's job from nodeName that's different from dataset node when worker's status is completed or failed.
c.sendToEdgeFunc(nodeName, watch.Deleted, job)
}
Expand Down
13 changes: 6 additions & 7 deletions pkg/localcontroller/gmclient/types.go
Original file line number Diff line number Diff line change
Expand Up @@ -16,7 +16,10 @@ limitations under the License.

package gmclient

import messagetypes "github.com/kubeedge/sedna/pkg/globalmanager/messagelayer/model"
import (
messagetypes "github.com/kubeedge/sedna/pkg/globalmanager/messagelayer/model"
"github.com/kubeedge/sedna/pkg/globalmanager/runtime"
)

const (
// InsertOperation is the insert value
Expand All @@ -27,6 +30,8 @@ const (
StatusOperation = "status"
)

type Model = runtime.Model

// Message defines message between LC and GM
type Message struct {
Header MessageHeader `json:"header"`
Expand All @@ -44,12 +49,6 @@ type UpstreamMessage struct {
Output *Output `json:"output"`
}

type Model struct {
Format string `json:"format"`
URL string `json:"url"`
Metrics map[string]interface{} `json:"metrics,omitempty"`
}

type Input struct {
Models []Model `json:"models,omitempty"`
DataURL string `json:"dataURL,omitempty"`
Expand Down
Loading

0 comments on commit 5bf70e6

Please sign in to comment.