From 40bb2d8f04a46b840c8c58b4960c4425a3d5226b Mon Sep 17 00:00:00 2001 From: tzwang Date: Mon, 26 Feb 2024 17:33:08 +0800 Subject: [PATCH] modified octopus submit options Former-commit-id: 96d68b07d16acad26c8d853e54abe6d2e6e3f1bc --- api/internal/storeLink/octopus.go | 59 ++++++++++++++++++++++++++++--- 1 file changed, 55 insertions(+), 4 deletions(-) diff --git a/api/internal/storeLink/octopus.go b/api/internal/storeLink/octopus.go index d05dd5ce..d5f4c5aa 100644 --- a/api/internal/storeLink/octopus.go +++ b/api/internal/storeLink/octopus.go @@ -46,7 +46,7 @@ const ( SAILINGSI = "sailingsi" MLU = "MLU" CAMBRICONMLU290 = 256 - GCU = "GCU" + GCU = "enflame" EnflameT20 = 128 BASE_TOPS = 128 CAMBRICON = "cambricon" @@ -293,6 +293,10 @@ func (o *OctopusLink) GenerateSubmitParams(option *option.AiOption) error { if err != nil { return err } + err = o.generateAlgorithmId(option) + if err != nil { + return err + } err = o.generateCmd(option) if err != nil { return err @@ -457,19 +461,42 @@ func (o *OctopusLink) generateImageId(option *option.AiOption) error { if option.TaskType == "" { return errors.New("TaskType not set") } - req := &octopus.GetPresetImageListReq{ + + req := &octopus.GetUserImageListReq{ Platform: o.platform, PageIndex: o.pageIndex, PageSize: o.pageSize, } - resp, err := o.svcCtx.OctopusRpc.GetPresetImageList(o.ctx, req) + resp, err := o.svcCtx.OctopusRpc.GetUserImageList(o.ctx, req) if err != nil { return err } if !resp.Success { + return errors.New("failed to get imageId") + } + + if option.ResourceType == CPU { + for _, img := range resp.Payload.Images { + if img.Image.ImageName == "test-image" { + option.ImageId = img.Image.Id + return nil + } + } + } + + preImgReq := &octopus.GetPresetImageListReq{ + Platform: o.platform, + PageIndex: o.pageIndex, + PageSize: o.pageSize, + } + preImgResp, err := o.svcCtx.OctopusRpc.GetPresetImageList(o.ctx, preImgReq) + if err != nil { + return err + } + if !preImgResp.Success { return errors.New("failed to get PresetImages") } - for _, image := range resp.Payload.Images { + for _, image := range preImgResp.Payload.Images { if strings.Contains(image.ImageName, option.TaskType) && strings.Contains(image.ImageName, cardAliasMap[option.ComputeCard]) { option.ImageId = image.Id return nil @@ -478,6 +505,30 @@ func (o *OctopusLink) generateImageId(option *option.AiOption) error { return errors.New("failed to get ImageId") } +func (o *OctopusLink) generateAlgorithmId(option *option.AiOption) error { + req := &octopus.GetMyAlgorithmListReq{ + Platform: o.platform, + PageIndex: o.pageIndex, + PageSize: o.pageSize, + } + resp, err := o.svcCtx.OctopusRpc.GetMyAlgorithmList(o.ctx, req) + if err != nil { + return err + } + if !resp.Success { + return errors.New("failed to get algorithmId") + } + + for _, algorithm := range resp.Payload.Algorithms { + if algorithm.FrameworkName == strings.Title(option.TaskType) && strings.Contains(algorithm.AlgorithmName, option.DatasetsName) { + option.AlgorithmId = algorithm.AlgorithmId + return nil + } + } + + return nil +} + func (o *OctopusLink) generateCmd(option *option.AiOption) error { return nil