@@ -3,7 +3,8 @@ import { JOB_TYPE } from '~/const';
import { getListValueWithKey } from '~/utils';
const CLUSTERS = [{ k: 'OpenI', v: i18n.t('cloudbrainObj.openi') }, { k: 'C2Net', v: i18n.t('cloudbrainObj.c2net') }];
const COMPUTER_RESOURCES = [{ k: 'GPU', v: 'CPU/GPU' }, { k: 'NPU', v: 'Ascend NPU' }, { k: 'GCU', v: 'GCU' }, { k: 'MLU', v: 'MLU' }, { k: 'DCU', v: 'DCU' }];
const COMPUTER_RESOURCES = [{ k: 'GPU', v: 'CPU/GPU' }, { k: 'NPU', v: 'Ascend NPU' }, { k: 'GCU', v: 'GCU' }, { k: 'MLU', v: 'MLU' }, { k: 'DCU', v: 'DCU' }, { k: 'ILUVATAR-GPGPU', v: 'ILUVATAR-GPGPU' }, { k: 'METAX-GPGPU', v: 'METAX-GPGPU' }];
const COMPUTER_RESOURCES_TITLE = [{ k: 'GPU', v: i18n.t('computeResourceTitle.GPU') }, { k: 'NPU', v: i18n.t('computeResourceTitle.NPU') }, { k: 'GCU', v: i18n.t('computeResourceTitle.GCU') }, { k: 'MLU', v: i18n.t('computeResourceTitle.MLU') }, { k: 'DCU', v: i18n.t('computeResourceTitle.DCU') }, { k: 'ILUVATAR-GPGPU', v: i18n.t('computeResourceTitle.ILUVATAR-GPGPU') }, { k: 'METAX-GPGPU', v: i18n.t('computeResourceTitle.METAX-GPGPU') }];
const sortList = [
{ k: '', v: i18n.t('all') },
@@ -11,7 +12,9 @@ const sortList = [
{ k: 'NPU', v: 'NPU' },
{ k: 'GCU', v: 'GCU' },
{ k: 'MLU', v: 'MLU' },
{ k: 'DCU', v: 'DCU' }
{ k: 'DCU', v: 'DCU' },
{ k: 'ILUVATAR-GPGPU', v: 'ILUVATAR-GPGPU' },
{ k: 'METAX-GPGPU', v: 'METAX-GPGPU' },
];
const getSortList = (typeList) => {
@@ -80,7 +83,7 @@ export const CreatePageConfigs = {
}],
'C2Net': [{
url: 'grampus/notebook/create?type=0',
computerResouces: ['GPU', 'NPU', 'GCU', 'MLU', 'DCU'],
computerResouces: ['GPU', 'NPU', 'GCU', 'MLU', 'DCU', 'ILUVATAR-GPGPU', 'METAX-GPGPU' ],
'GPU': [{
url: 'grampus/notebook/create?type=0',
clusterType: 'C2Net',
@@ -173,6 +176,44 @@ export const CreatePageConfigs = {
spec: { required: true },
},
}],
'ILUVATAR-GPGPU': [{
url: 'grampus/notebook/create?type=5',
clusterType: 'C2Net',
tips2: i18n.t('cloudbrainObj.pathTips3', {
code: '/code',
dataset: '/dataset',
model: '/pretrainmodel',
}),
form: {
taskName: { required: true, },
taskDescr: { required: false, },
branchName: { required: true, },
model: { required: false, multiple: true },
imagev2: { required: true },
dataset: { required: false, useExceedSize: true },
networkType: { required: true },
spec: { required: true },
},
}],
'METAX-GPGPU': [{
url: 'grampus/notebook/create?type=6',
clusterType: 'C2Net',
tips2: i18n.t('cloudbrainObj.pathTips3', {
code: '/code',
dataset: '/dataset',
model: '/pretrainmodel',
}),
form: {
taskName: { required: true, },
taskDescr: { required: false, },
branchName: { required: true, },
model: { required: false, multiple: true },
imagev2: { required: true },
dataset: { required: false, useExceedSize: true },
networkType: { required: true },
spec: { required: true },
},
}],
}]
}],
// 训练任务
@@ -474,7 +515,7 @@ export const ListPageConfigs = {
],
pages: [{
jobType: 'DEBUG',
sortList: getSortList(['', 'GPU', 'NPU', 'GCU', 'MLU', 'DCU']),
sortList: getSortList(['', 'GPU', 'NPU', 'GCU', 'MLU', 'DCU', 'ILUVATAR-GPGPU', 'METAX-GPGPU' ]),
jobTypeName: getListValueWithKey(JOB_TYPE, 'DEBUG'),
url: 'debugjob',
createUrl: 'grampus/notebook/create?type=1',
@@ -707,6 +748,56 @@ export const DetailPageConfigs = {
name: 'operationProfile'
}],
}],
'ILUVATAR-GPGPU': [{
detailUrl: 'grampus/notebook/',
summary: [],
operations: [],
tabs: [{
name: 'configInfo',
fields: [
'taskName', 'imagev2',
'status', 'spec',
'creator', 'aiCenter',
'branch', 'modelName',
'computerRes', 'modelVersion',
'createTime', 'modelFiles',
'startTime', '',
'endTime', '',
'duration', '',
'descr', '',
'failedReason',
'dataset',
'modelList',
]
}, {
name: 'operationProfile'
}],
}],
'METAX-GPGPU': [{
detailUrl: 'grampus/notebook/',
summary: [],
operations: [],
tabs: [{
name: 'configInfo',
fields: [
'taskName', 'imagev2',
'status', 'spec',
'creator', 'aiCenter',
'branch', 'modelName',
'computerRes', 'modelVersion',
'createTime', 'modelFiles',
'startTime', '',
'endTime', '',
'duration', '',
'descr', '',
'failedReason',
'dataset',
'modelList',
]
}, {
name: 'operationProfile'
}],
}],
}]
}],
// 训练任务
@@ -1080,7 +1171,7 @@ export const getCreatePageConfigs = (url) => {
computerResouces: computerResouces.map(_item => {
return {
key: _item,
label: getListValueWithKey(COMPUTER_RESOURCES, _item),
label: getListValueWithKey(COMPUTER_RESOURCES_TITLE , _item),
url: cfg2[_item] && cfg2[_item][0] ? cfg2[_item][0].url : '',
}
}),