Browse Source

#1654

add train job endtime
tags/v1.22.3.2^2
chenyifan01 4 years ago
parent
commit
796af34cc1
3 changed files with 15 additions and 10 deletions
  1. +3
    -3
      models/cloudbrain.go
  2. +10
    -5
      routers/api/v1/repo/modelarts.go
  3. +2
    -2
      routers/repo/cloudbrain.go

+ 3
- 3
models/cloudbrain.go View File

@@ -102,7 +102,7 @@ type Cloudbrain struct {
ContainerIp string
CreatedUnix timeutil.TimeStamp `xorm:"INDEX created"`
UpdatedUnix timeutil.TimeStamp `xorm:"INDEX updated"`
Duration int64
Duration int64 //运行时长 单位秒
TrainJobDuration string
Image string //镜像名称
GpuQueue string //GPU类型即GPU队列
@@ -1395,7 +1395,7 @@ func UpdateTrainJobVersion(job *Cloudbrain) error {
func updateJobTrainVersion(e Engine, job *Cloudbrain) error {
var sess *xorm.Session
sess = e.Where("job_id = ? AND version_name=?", job.JobID, job.VersionName)
_, err := sess.Cols("status", "train_job_duration", "start_time", "end_time").Update(job)
_, err := sess.Cols("status", "train_job_duration", "duration", "start_time", "end_time").Update(job)
return err
}

@@ -1475,7 +1475,7 @@ func UpdateInferenceJob(job *Cloudbrain) error {
func updateInferenceJob(e Engine, job *Cloudbrain) error {
var sess *xorm.Session
sess = e.Where("job_id = ?", job.JobID)
_, err := sess.Cols("status", "train_job_duration").Update(job)
_, err := sess.Cols("status", "train_job_duration", "duration", "start_time", "end_time").Update(job)
return err
}
func RestartCloudbrain(old *Cloudbrain, new *Cloudbrain) (err error) {


+ 10
- 5
routers/api/v1/repo/modelarts.go View File

@@ -144,11 +144,11 @@ func GetModelArtsTrainJobVersion(ctx *context.APIContext) {
job.StartTime = timeutil.TimeStamp(result.StartTime / 1000)
}
job.Status = modelarts.TransTrainJobStatus(result.IntStatus)
job.Duration = result.Duration
job.Duration = result.Duration / 1000
job.TrainJobDuration = result.TrainJobDuration

if result.Duration != 0 {
job.TrainJobDuration = util.AddZero(result.Duration/3600000) + ":" + util.AddZero(result.Duration%3600000/60000) + ":" + util.AddZero(result.Duration%60000/1000)
job.TrainJobDuration = util.AddZero(result.Duration/3600) + ":" + util.AddZero(result.Duration%3600/60) + ":" + util.AddZero(result.Duration%60)

} else {
job.TrainJobDuration = "00:00:00"
@@ -379,17 +379,22 @@ func GetModelArtsInferenceJob(ctx *context.APIContext) {
ctx.NotFound(err)
return
}

if job.StartTime == 0 {
job.StartTime = timeutil.TimeStamp(result.StartTime / 1000)
}
job.Status = modelarts.TransTrainJobStatus(result.IntStatus)
job.Duration = result.Duration
job.Duration = result.Duration / 1000
job.TrainJobDuration = result.TrainJobDuration

if result.Duration != 0 {
job.TrainJobDuration = util.AddZero(result.Duration/3600000) + ":" + util.AddZero(result.Duration%3600000/60000) + ":" + util.AddZero(result.Duration%60000/1000)
job.TrainJobDuration = util.AddZero(result.Duration/3600) + ":" + util.AddZero(result.Duration%3600/60) + ":" + util.AddZero(result.Duration%60)

} else {
job.TrainJobDuration = "00:00:00"
}
if models.IsTrainJobTerminal(job.Status) {
job.EndTime = job.StartTime.Add(job.Duration / 1000)
}

err = models.UpdateInferenceJob(job)
if err != nil {


+ 2
- 2
routers/repo/cloudbrain.go View File

@@ -1030,14 +1030,14 @@ func SyncCloudbrainStatus() {

if result != nil {
task.Status = modelarts.TransTrainJobStatus(result.IntStatus)
task.Duration = result.Duration
task.Duration = result.Duration / 1000
task.TrainJobDuration = result.TrainJobDuration

if task.StartTime == 0 {
task.StartTime = timeutil.TimeStamp(result.StartTime / 1000)
}
if result.Duration != 0 {
task.TrainJobDuration = util.AddZero(result.Duration/3600000) + ":" + util.AddZero(result.Duration%3600000/60000) + ":" + util.AddZero(result.Duration%60000/1000)
task.TrainJobDuration = util.AddZero(result.Duration/3600) + ":" + util.AddZero(result.Duration%3600/60) + ":" + util.AddZero(result.Duration%60)

} else {
task.TrainJobDuration = "00:00:00"


Loading…
Cancel
Save