@@ -7,3 +7,9 @@ export const POINT_ACTIONS = [ | |||||
{ k: 35, v: i18n.t('dailyRunCloudbrainTasks') }, { k: 36, v: i18n.t('datasetRecommendedByThePlatform') }, { k: 37, v: i18n.t('submitNewPublicImage') }, { k: 38, v: i18n.t('imageRecommendedByThePlatform') }, { k: 39, v: i18n.t('firstChangeofAvatar') }, { k: 40, v: i18n.t('dailyCommit') }, | { k: 35, v: i18n.t('dailyRunCloudbrainTasks') }, { k: 36, v: i18n.t('datasetRecommendedByThePlatform') }, { k: 37, v: i18n.t('submitNewPublicImage') }, { k: 38, v: i18n.t('imageRecommendedByThePlatform') }, { k: 39, v: i18n.t('firstChangeofAvatar') }, { k: 40, v: i18n.t('dailyCommit') }, | ||||
]; | ]; | ||||
export const JOB_TYPE = [{ k: 'DEBUG', v: i18n.t('debugTask') }, { k: 'TRAIN', v: i18n.t('trainTask') }, { k: 'INFERENCE', v: i18n.t('inferenceTask') }, { k: 'BENCHMARK', v: i18n.t('benchmarkTask') }]; | export const JOB_TYPE = [{ k: 'DEBUG', v: i18n.t('debugTask') }, { k: 'TRAIN', v: i18n.t('trainTask') }, { k: 'INFERENCE', v: i18n.t('inferenceTask') }, { k: 'BENCHMARK', v: i18n.t('benchmarkTask') }]; | ||||
// 资源管理 | |||||
export const CLUSTERS = [{ k: 'OpenI', v: '启智集群' }, { k: 'C2Net', v: '智算集群' }]; | |||||
export const AI_CENTER = [{ k: 'OpenIOne', v: '云脑一' }, { k: 'OpenITwo', v: '云脑二' }, { k: 'chendu', v: '成都人工智能计算中心' }, { k: 'pclcci', v: '鹏城云计算所' }, { k: 'hefei', v: '合肥类脑类脑智能开放平台' }, { k: 'xuchang', v: '中原人工智能计算中心' }]; | |||||
export const COMPUTER_RESOURCES = [{ k: 'GPU', v: 'CPU/GPU' }, { k: 'NPU', v: 'NPU' }]; | |||||
export const ACC_CARD_TYPE = [{ k: 'T4', v: 'T4' }, { k: 'A100', v: 'A100' }, { k: 'V100', v: 'V100' }, { k: 'Ascend910', v: 'Ascend910' }]; |
@@ -17,7 +17,9 @@ | |||||
<span>所属集群</span> | <span>所属集群</span> | ||||
</div> | </div> | ||||
<div class="content"> | <div class="content"> | ||||
<el-select v-model="dataInfo.cluster"></el-select> | |||||
<el-select v-model="dataInfo.cluster"> | |||||
<el-option v-for="item in clusterList" :key="item.k" :label="item.v" :value="item.k" /> | |||||
</el-select> | |||||
</div> | </div> | ||||
</div> | </div> | ||||
<div class="form-row"> | <div class="form-row"> | ||||
@@ -25,7 +27,9 @@ | |||||
<span>智算中心</span> | <span>智算中心</span> | ||||
</div> | </div> | ||||
<div class="content"> | <div class="content"> | ||||
<el-select v-model="dataInfo.computingCenter"></el-select> | |||||
<el-select v-model="dataInfo.computingCenter"> | |||||
<el-option v-for="item in computingCenterList" :key="item.k" :label="item.v" :value="item.k" /> | |||||
</el-select> | |||||
</div> | </div> | ||||
</div> | </div> | ||||
<div class="form-row"> | <div class="form-row"> | ||||
@@ -33,7 +37,9 @@ | |||||
<span>计算资源</span> | <span>计算资源</span> | ||||
</div> | </div> | ||||
<div class="content"> | <div class="content"> | ||||
<el-select v-model="dataInfo.computingType"></el-select> | |||||
<el-select v-model="dataInfo.computingType"> | |||||
<el-option v-for="item in computingTypeList" :key="item.k" :label="item.v" :value="item.k" /> | |||||
</el-select> | |||||
</div> | </div> | ||||
</div> | </div> | ||||
<div class="form-row"> | <div class="form-row"> | ||||
@@ -41,7 +47,9 @@ | |||||
<span>卡类型</span> | <span>卡类型</span> | ||||
</div> | </div> | ||||
<div class="content"> | <div class="content"> | ||||
<el-select v-model="dataInfo.cardType"></el-select> | |||||
<el-select v-model="dataInfo.cardType"> | |||||
<el-option v-for="item in cardTypeList" :key="item.k" :label="item.v" :value="item.k" /> | |||||
</el-select> | |||||
</div> | </div> | ||||
</div> | </div> | ||||
<div class="form-row"> | <div class="form-row"> | ||||
@@ -75,6 +83,7 @@ | |||||
<script> | <script> | ||||
import BaseDialog from '~/components/BaseDialog.vue'; | import BaseDialog from '~/components/BaseDialog.vue'; | ||||
import { getQueueList } from '~/apis/modules/resources'; | import { getQueueList } from '~/apis/modules/resources'; | ||||
import { CLUSTERS, AI_CENTER, COMPUTER_RESOURCES, ACC_CARD_TYPE } from '~/const'; | |||||
export default { | export default { | ||||
name: "QueueDialog", | name: "QueueDialog", | ||||
@@ -90,9 +99,12 @@ export default { | |||||
data() { | data() { | ||||
return { | return { | ||||
dialogShow: false, | dialogShow: false, | ||||
dataInfo: { | |||||
clusterList: [...CLUSTERS], | |||||
computingCenterList: [...AI_CENTER], | |||||
computingTypeList: [...COMPUTER_RESOURCES], | |||||
cardTypeList: [...ACC_CARD_TYPE], | |||||
}, | |||||
dataInfo: {}, | |||||
}; | }; | ||||
}, | }, | ||||
watch: { | watch: { | ||||
@@ -134,7 +146,7 @@ export default { | |||||
this.$emit("update:visible", false); | this.$emit("update:visible", false); | ||||
}, | }, | ||||
confirm() { | confirm() { | ||||
console.log('confirm', this.dataInfo); | |||||
}, | }, | ||||
cancel() { | cancel() { | ||||
this.dialogShow = false; | this.dialogShow = false; | ||||
@@ -77,7 +77,7 @@ import BaseDialog from '~/components/BaseDialog.vue'; | |||||
import { getQueueList } from '~/apis/modules/resources'; | import { getQueueList } from '~/apis/modules/resources'; | ||||
export default { | export default { | ||||
name: "QueueDialog", | |||||
name: "SceneDialog", | |||||
props: { | props: { | ||||
visible: { type: Boolean, default: false }, | visible: { type: Boolean, default: false }, | ||||
title: { type: String, default: '' }, | title: { type: String, default: '' }, | ||||
@@ -77,7 +77,7 @@ import BaseDialog from '~/components/BaseDialog.vue'; | |||||
import { getQueueList } from '~/apis/modules/resources'; | import { getQueueList } from '~/apis/modules/resources'; | ||||
export default { | export default { | ||||
name: "QueueDialog", | |||||
name: "SpecificationDialog", | |||||
props: { | props: { | ||||
visible: { type: Boolean, default: false }, | visible: { type: Boolean, default: false }, | ||||
title: { type: String, default: '' }, | title: { type: String, default: '' }, | ||||
@@ -74,18 +74,19 @@ | |||||
<script> | <script> | ||||
import QueueDialog from '../components/QueueDialog.vue'; | import QueueDialog from '../components/QueueDialog.vue'; | ||||
import { getQueueList } from '~/apis/modules/resources'; | import { getQueueList } from '~/apis/modules/resources'; | ||||
import { CLUSTERS, AI_CENTER, COMPUTER_RESOURCES, ACC_CARD_TYPE } from '~/const'; | |||||
export default { | export default { | ||||
data() { | data() { | ||||
return { | return { | ||||
selCluster: '', | selCluster: '', | ||||
clusterList: [{ k: '', v: '全部集群' }, { k: '1', v: '启智集群' }, { k: '2', v: '智算联盟集群' }], | |||||
clusterList: [{ k: '', v: '全部集群' }, ...CLUSTERS], | |||||
selComputingCenter: '', | selComputingCenter: '', | ||||
computingCenterList: [{ k: '', v: '全部智算中心' }, { k: '1', v: '云脑I' }, { k: '2', v: '云脑II' }], | |||||
computingCenterList: [{ k: '', v: '全部智算中心' }, ...AI_CENTER], | |||||
selComputingType: '', | selComputingType: '', | ||||
computingTypeList: [{ k: '', v: '全部计算资源' }, { k: 'cpu/gpu', v: 'CPU/GPU' }, { k: 'npu', v: 'NPU' }], | |||||
computingTypeList: [{ k: '', v: '全部计算资源' }, ...COMPUTER_RESOURCES], | |||||
selCardType: '', | selCardType: '', | ||||
cardTypeList: [{ k: '', v: '全部卡类型' }, { k: 't4', v: 'T4' }, { k: 'a100', v: 'A100' }, { k: 'v100', v: 'V100' }, { k: 'ascend910', v: 'Ascend910' }], | |||||
cardTypeList: [{ k: '', v: '全部卡类型' }, ...ACC_CARD_TYPE], | |||||
syncLoading: false, | syncLoading: false, | ||||
loading: false, | loading: false, | ||||
tableData: [], | tableData: [], | ||||