Browse Source

提交代码

tags/v1.22.7.2^2
ychao_1983 3 years ago
parent
commit
d0fc337ee7
3 changed files with 55 additions and 41 deletions
  1. +40
    -30
      routers/repo/cloudbrain.go
  2. +3
    -3
      routers/repo/grampus.go
  3. +12
    -8
      routers/repo/modelarts.go

+ 40
- 30
routers/repo/cloudbrain.go View File

@@ -636,6 +636,7 @@ func CloudBrainTrainJobShow(ctx *context.Context) {
func cloudBrainShow(ctx *context.Context, tpName base.TplName, jobType models.JobType) { func cloudBrainShow(ctx *context.Context, tpName base.TplName, jobType models.JobType) {
ctx.Data["PageIsCloudBrain"] = true ctx.Data["PageIsCloudBrain"] = true
debugListType := ctx.Query("debugListType") debugListType := ctx.Query("debugListType")
cloudbrain.InitSpecialPool()


var task *models.Cloudbrain var task *models.Cloudbrain
var err error var err error
@@ -647,22 +648,22 @@ func cloudBrainShow(ctx *context.Context, tpName base.TplName, jobType models.Jo


if err != nil { if err != nil {
log.Info("error:" + err.Error()) log.Info("error:" + err.Error())
ctx.Data["error"] = err.Error()
ctx.NotFound(ctx.Req.URL.RequestURI(), nil)
return return
} }


result, err := cloudbrain.GetJob(task.JobID) result, err := cloudbrain.GetJob(task.JobID)
if err != nil { if err != nil {
log.Info("error:" + err.Error()) log.Info("error:" + err.Error())
ctx.Data["error"] = err.Error()
ctx.NotFound(ctx.Req.URL.RequestURI(), nil)
return return
} }
hasSpec := false
if task.JobType == string(models.JobTypeTrain) { if task.JobType == string(models.JobTypeTrain) {
if cloudbrain.TrainResourceSpecs == nil { if cloudbrain.TrainResourceSpecs == nil {
json.Unmarshal([]byte(setting.TrainResourceSpecs), &cloudbrain.TrainResourceSpecs) json.Unmarshal([]byte(setting.TrainResourceSpecs), &cloudbrain.TrainResourceSpecs)
} }
hasSpec := false
for _, tmp := range cloudbrain.TrainResourceSpecs.ResourceSpec { for _, tmp := range cloudbrain.TrainResourceSpecs.ResourceSpec {
if tmp.Id == task.ResourceSpecId { if tmp.Id == task.ResourceSpecId {
hasSpec = true hasSpec = true
@@ -670,24 +671,7 @@ func cloudBrainShow(ctx *context.Context, tpName base.TplName, jobType models.Jo
ctx.Data["CpuNum"] = tmp.CpuNum ctx.Data["CpuNum"] = tmp.CpuNum
ctx.Data["MemMiB"] = tmp.MemMiB ctx.Data["MemMiB"] = tmp.MemMiB
ctx.Data["ShareMemMiB"] = tmp.ShareMemMiB ctx.Data["ShareMemMiB"] = tmp.ShareMemMiB
}
}

if !hasSpec && cloudbrain.SpecialPools != nil {
for _, specialPool := range cloudbrain.SpecialPools.Pools {

if specialPool.ResourceSpec != nil {

for _, spec := range specialPool.ResourceSpec {
if task.ResourceSpecId == spec.Id {
ctx.Data["GpuNum"] = spec.GpuNum
ctx.Data["CpuNum"] = spec.CpuNum
ctx.Data["MemMiB"] = spec.MemMiB
ctx.Data["ShareMemMiB"] = spec.ShareMemMiB
break
}
}
}
break
} }
} }


@@ -697,10 +681,12 @@ func cloudBrainShow(ctx *context.Context, tpName base.TplName, jobType models.Jo
} }
for _, tmp := range cloudbrain.InferenceResourceSpecs.ResourceSpec { for _, tmp := range cloudbrain.InferenceResourceSpecs.ResourceSpec {
if tmp.Id == task.ResourceSpecId { if tmp.Id == task.ResourceSpecId {
hasSpec = true
ctx.Data["GpuNum"] = tmp.GpuNum ctx.Data["GpuNum"] = tmp.GpuNum
ctx.Data["CpuNum"] = tmp.CpuNum ctx.Data["CpuNum"] = tmp.CpuNum
ctx.Data["MemMiB"] = tmp.MemMiB ctx.Data["MemMiB"] = tmp.MemMiB
ctx.Data["ShareMemMiB"] = tmp.ShareMemMiB ctx.Data["ShareMemMiB"] = tmp.ShareMemMiB
break
} }
} }
} else { } else {
@@ -709,10 +695,32 @@ func cloudBrainShow(ctx *context.Context, tpName base.TplName, jobType models.Jo
} }
for _, tmp := range cloudbrain.ResourceSpecs.ResourceSpec { for _, tmp := range cloudbrain.ResourceSpecs.ResourceSpec {
if tmp.Id == task.ResourceSpecId { if tmp.Id == task.ResourceSpecId {
hasSpec = true
ctx.Data["GpuNum"] = tmp.GpuNum ctx.Data["GpuNum"] = tmp.GpuNum
ctx.Data["CpuNum"] = tmp.CpuNum ctx.Data["CpuNum"] = tmp.CpuNum
ctx.Data["MemMiB"] = tmp.MemMiB ctx.Data["MemMiB"] = tmp.MemMiB
ctx.Data["ShareMemMiB"] = tmp.ShareMemMiB ctx.Data["ShareMemMiB"] = tmp.ShareMemMiB
break

}
}
}

if !hasSpec && cloudbrain.SpecialPools != nil {

for _, specialPool := range cloudbrain.SpecialPools.Pools {

if specialPool.ResourceSpec != nil {

for _, spec := range specialPool.ResourceSpec {
if task.ResourceSpecId == spec.Id {
ctx.Data["GpuNum"] = spec.GpuNum
ctx.Data["CpuNum"] = spec.CpuNum
ctx.Data["MemMiB"] = spec.MemMiB
ctx.Data["ShareMemMiB"] = spec.ShareMemMiB
break
}
}
} }
} }
} }
@@ -731,14 +739,6 @@ func cloudBrainShow(ctx *context.Context, tpName base.TplName, jobType models.Jo
ctx.Data["resource_type"] = resourceType.Value ctx.Data["resource_type"] = resourceType.Value
} }
} }
for _, specialPool := range cloudbrain.SpecialPools.Pools {

for _, resourceType := range specialPool.Pool {
if resourceType.Queue == jobRes.Config.GpuType {
ctx.Data["resource_type"] = resourceType.Value
}
}
}


} else if task.JobType == string(models.JobTypeInference) { } else if task.JobType == string(models.JobTypeInference) {
if inferenceGpuInfos == nil { if inferenceGpuInfos == nil {
@@ -770,6 +770,16 @@ func cloudBrainShow(ctx *context.Context, tpName base.TplName, jobType models.Jo
} }
} }
} }

if cloudbrain.SpecialPools != nil {
for _, specialPool := range cloudbrain.SpecialPools.Pools {
for _, resourceType := range specialPool.Pool {
if resourceType.Queue == jobRes.Config.GpuType {
ctx.Data["resource_type"] = resourceType.Value
}
}
}
}
taskRoles := jobRes.TaskRoles taskRoles := jobRes.TaskRoles
taskRes, _ := models.ConvertToTaskPod(taskRoles[cloudbrain.SubTaskName].(map[string]interface{})) taskRes, _ := models.ConvertToTaskPod(taskRoles[cloudbrain.SubTaskName].(map[string]interface{}))
ctx.Data["taskRes"] = taskRes ctx.Data["taskRes"] = taskRes


+ 3
- 3
routers/repo/grampus.go View File

@@ -626,7 +626,7 @@ func GrampusTrainJobShow(ctx *context.Context) {
task, err := models.GetCloudbrainByJobIDWithDeleted(ctx.Params(":jobid")) task, err := models.GetCloudbrainByJobIDWithDeleted(ctx.Params(":jobid"))
if err != nil { if err != nil {
log.Error("GetCloudbrainByJobID failed:" + err.Error()) log.Error("GetCloudbrainByJobID failed:" + err.Error())
ctx.ServerError("system error", err)
ctx.NotFound(ctx.Req.URL.RequestURI(), nil)
return return
} }


@@ -634,8 +634,8 @@ func GrampusTrainJobShow(ctx *context.Context) {
result, err := grampus.GetJob(task.JobID) result, err := grampus.GetJob(task.JobID)
if err != nil { if err != nil {
log.Error("GetJob failed:" + err.Error()) log.Error("GetJob failed:" + err.Error())
//ctx.ServerError("GetJob failed", err)
//return
ctx.NotFound(ctx.Req.URL.RequestURI(), nil)
return
} }


if result != nil { if result != nil {


+ 12
- 8
routers/repo/modelarts.go View File

@@ -257,15 +257,15 @@ func NotebookShow(ctx *context.Context) {
var ID = ctx.Params(":id") var ID = ctx.Params(":id")
task, err := models.GetCloudbrainByIDWithDeleted(ID) task, err := models.GetCloudbrainByIDWithDeleted(ID)
if err != nil { if err != nil {
ctx.Data["error"] = err.Error()
ctx.RenderWithErr(err.Error(), tplModelArtsNotebookShow, nil)
log.Error("GET job error", err.Error())
ctx.NotFound(ctx.Req.URL.RequestURI(), nil)
return return
} }


result, err := modelarts.GetNotebook2(task.JobID) result, err := modelarts.GetNotebook2(task.JobID)
if err != nil { if err != nil {
ctx.Data["error"] = err.Error()
ctx.RenderWithErr(err.Error(), tplModelArtsNotebookShow, nil)
log.Error("GET job error", err.Error())
ctx.NotFound(ctx.Req.URL.RequestURI(), nil)
return return
} }


@@ -276,8 +276,8 @@ func NotebookShow(ctx *context.Context) {
models.ParseAndSetDurationFromModelArtsNotebook(result, task) models.ParseAndSetDurationFromModelArtsNotebook(result, task)
err = models.UpdateJob(task) err = models.UpdateJob(task)
if err != nil { if err != nil {
ctx.Data["error"] = err.Error()
ctx.RenderWithErr(err.Error(), tplModelArtsNotebookShow, nil)
log.Error("GET job error", err.Error())
ctx.NotFound(ctx.Req.URL.RequestURI(), nil)
return return
} }
} }
@@ -1643,7 +1643,11 @@ func TrainJobShow(ctx *context.Context) {


if err != nil { if err != nil {
log.Error("GetVersionListTasks(%s) failed:%v", jobID, err.Error()) log.Error("GetVersionListTasks(%s) failed:%v", jobID, err.Error())
ctx.RenderWithErr(err.Error(), tplModelArtsTrainJobShow, nil)
ctx.NotFound(ctx.Req.URL.RequestURI(), nil)
return
}
if len(VersionListTasks) == 0 {
ctx.NotFound(ctx.Req.URL.RequestURI(), nil)
return return
} }
//设置权限 //设置权限
@@ -2297,7 +2301,7 @@ func InferenceJobShow(ctx *context.Context) {


if err != nil { if err != nil {
log.Error("GetInferenceTask(%s) failed:%v", jobID, err.Error()) log.Error("GetInferenceTask(%s) failed:%v", jobID, err.Error())
ctx.RenderWithErr(err.Error(), tplModelArtsInferenceJobShow, nil)
ctx.NotFound(ctx.Req.URL.RequestURI(), nil)
return return
} }
//设置权限 //设置权限


Loading…
Cancel
Save