|
|
|
@@ -25,6 +25,10 @@ const ( |
|
|
|
tplCloudBrainShow base.TplName = "repo/cloudbrain/show" |
|
|
|
) |
|
|
|
|
|
|
|
var ( |
|
|
|
gpuInfos *models.GpuInfos |
|
|
|
) |
|
|
|
|
|
|
|
// MustEnableDataset check if repository enable internal cb |
|
|
|
func MustEnableCloudbrain(ctx *context.Context) { |
|
|
|
if !ctx.Repo.CanRead(models.UnitTypeCloudBrain) { |
|
|
|
@@ -134,9 +138,11 @@ func CloudBrainNew(ctx *context.Context) { |
|
|
|
var categories *models.Categories |
|
|
|
json.Unmarshal([]byte(setting.BenchmarkCategory), &categories) |
|
|
|
ctx.Data["benchmark_categories"] = categories.Category |
|
|
|
var gpuTypes *models.GpuTypes |
|
|
|
json.Unmarshal([]byte(setting.GpuTypes), &gpuTypes) |
|
|
|
ctx.Data["gpu_types"] = gpuTypes.GpuType |
|
|
|
|
|
|
|
if gpuInfos == nil { |
|
|
|
json.Unmarshal([]byte(setting.GpuTypes), &gpuInfos) |
|
|
|
} |
|
|
|
ctx.Data["gpu_types"] = gpuInfos.GpuInfo |
|
|
|
ctx.Data["snn4imagenet_path"] = cloudbrain.Snn4imagenetMountPath |
|
|
|
ctx.Data["is_snn4imagenet_enabled"] = setting.IsSnn4imagenetEnabled |
|
|
|
ctx.HTML(200, tplCloudBrainNew) |
|
|
|
@@ -149,7 +155,7 @@ func CloudBrainCreate(ctx *context.Context, form auth.CreateCloudBrainForm) { |
|
|
|
command := form.Command |
|
|
|
uuid := form.Attachment |
|
|
|
jobType := form.JobType |
|
|
|
gpuType := setting.JobType |
|
|
|
gpuQueue := setting.JobType |
|
|
|
codePath := setting.JobPath + jobName + cloudbrain.CodeMountPath |
|
|
|
|
|
|
|
if jobType != string(models.JobTypeBenchmark) && jobType != string(models.JobTypeDebug) && jobType != string(models.JobTypeSnn4imagenet) { |
|
|
|
@@ -169,7 +175,13 @@ func CloudBrainCreate(ctx *context.Context, form auth.CreateCloudBrainForm) { |
|
|
|
|
|
|
|
benchmarkPath := setting.JobPath + jobName + cloudbrain.BenchMarkMountPath |
|
|
|
if setting.IsBenchmarkEnabled && jobType == string(models.JobTypeBenchmark) { |
|
|
|
gpuType = form.GpuType |
|
|
|
gpuQueue = form.GpuType |
|
|
|
var gpuType string |
|
|
|
for _, gpuInfo := range gpuInfos.GpuInfo { |
|
|
|
if gpuInfo.Queue == gpuQueue { |
|
|
|
gpuType = gpuInfo.Value |
|
|
|
} |
|
|
|
} |
|
|
|
downloadRateCode(repo, jobName, setting.BenchmarkCode, benchmarkPath, form.BenchmarkCategory, gpuType) |
|
|
|
} |
|
|
|
|
|
|
|
@@ -178,7 +190,7 @@ func CloudBrainCreate(ctx *context.Context, form auth.CreateCloudBrainForm) { |
|
|
|
downloadRateCode(repo, jobName, setting.Snn4imagenetCode, snn4imagenetPath, "", "") |
|
|
|
} |
|
|
|
|
|
|
|
err = cloudbrain.GenerateTask(ctx, jobName, image, command, uuid, codePath, modelPath, benchmarkPath, snn4imagenetPath, jobType, gpuType) |
|
|
|
err = cloudbrain.GenerateTask(ctx, jobName, image, command, uuid, codePath, modelPath, benchmarkPath, snn4imagenetPath, jobType, gpuQueue) |
|
|
|
if err != nil { |
|
|
|
ctx.RenderWithErr(err.Error(), tplCloudBrainNew, &form) |
|
|
|
return |
|
|
|
|