下载
中文
注册
我要评分
文档获取效率
文档正确性
内容完整性
文档易理解
在线提单
论坛求助
昇腾小AI

静态虚拟化

使用限制

  • 当前vNPU仅支持单个vNPU单容器任务,不支持创建多副本任务。
  • 任务运行过程中,不支持卸载Volcano
  • 目前任务的每个pod请求的NPU设备数量规则如下:

    使用切分后的vNPU,则仅支持1个。

  • 静态虚拟化场景,如果创建或者销毁vNPU,需要重启Ascend Device Plugin
表1 虚拟化实例模板与虚拟设备类型关系表

NPU类型

虚拟化实例模板

vNPU类型

具体虚拟设备名称(以vNPU ID100、物理卡ID0为例)

Atlas 训练系列产品(30或32个AI Core)

vir02

Ascend910-2c

Ascend910-2c-100-0

vir04

Ascend910-4c

Ascend910-4c-100-0

vir08

Ascend910-8c

Ascend910-8c-100-0

vir16

Ascend910-16c

Ascend910-16c-100-0

Atlas 推理系列产品(配置Ascend 310P AI处理器)

vir01

Ascend310P-1c

Ascend310P-1c-100-0

vir02

Ascend310P-2c

Ascend310P-2c-100-0

vir04

Ascend310P-4c

Ascend310P-4c-100-0

vir02_1c

Ascend310P-2c.1cpu

Ascend310P-2c.1cpu-100-0

vir04_3c

Ascend310P-4c.3cpu

Ascend310P-4c.3cpu-100-0

vir04_3c_ndvpp

Ascend310P-4c.3cpu.ndvpp

Ascend310P-4c.3cpu.ndvpp-100-0

vir04_4c_dvpp

Ascend310P-4c.4cpu.dvpp

Ascend310P-4c.4cpu.dvpp-100-0

使用前提

  1. 需要先获取“Ascend-docker-runtime_{version}_linux-{arch}.run”,安装容器引擎插件。
  2. 参见MindX DL 集群调度安装指南中“安装部署”章节,完成各组件的安装。

    虚拟化实例涉及到需要修改相关参数的集群调度组件VolcanoAscend Device Plugin,请按如下要求修改并使用对应的yaml安装部署。

    • 亲和性场景:需要安装Volcano
    • 非亲和性场景:不需要安装Volcano,只会上报设备数量给节点的K8s。
    1. Ascend Device Plugin参数修改及启动说明:

      虚拟化实例启动参数说明如下:

      表2 Ascend Device Plugin启动参数

      参数

      类型

      默认值

      说明

      -volcanoType

      bool

      false

      是否使用Volcano进行调度,如使用动态虚拟化,需要设置为true。

      -presetVirtualDevice

      bool

      true

      静态虚拟化功能开关,目前支持Atlas 训练系列产品Atlas 推理系列产品(配置Ascend 310P AI处理器),且值只能为true。

      如使用动态虚拟化,需要设置为false。目前支持Atlas 推理系列产品(配置Ascend 310P AI处理器)的动态虚拟化,且需要同步开启Volcano使用。

      yaml启动说明如下:
      • K8s集群中存在使用Atlas 推理系列产品(配置Ascend 310P AI处理器)节点(Ascend Device Plugin独立工作,不协同Volcano使用)。
        kubectl apply -f device-plugin-310P-v{version}.yaml
      • K8s集群中存在使用Atlas 训练系列产品节点(Ascend Device Plugin独立工作,不协同VolcanoHCCL-Controller使用)。
        kubectl apply -f device-plugin-910-v{version}.yaml
      • K8s集群中存在使用Atlas 推理系列产品(配置Ascend 310P AI处理器)节点(协同Volcano使用,支持NPU虚拟化,yaml默认关闭动态虚拟化)。
        kubectl apply -f device-plugin-310P-volcano-v{version}.yaml
      • K8s集群中存在使用Atlas 训练系列产品节点(协同VolcanoHCCL-Controller使用,支持NPU虚拟化,yaml默认关闭动态虚拟化)。
        kubectl apply -f device-plugin-volcano-v{version}.yaml

      如果K8s集群使用了多种类型的昇腾处理器,请分别执行对应命令。

    2. Volcano参数修改及启动说明:

      Volcano部署文件“volcano-v{version}.yaml”中,需要配置“presetVirtualDevice”且值只能为“true”。

      ...
      data:
        volcano-scheduler.conf: |
          actions: "enqueue, allocate, backfill"
          tiers:
          - plugins:
            - name: priority
            - name: gang
            - name: conformance
            - name: volcano-npu-v5.0.0.2_linux-aarch64    # 其中5.0.0.2为MindX DL的版本号,根据不同版本,该处编码不同
          - plugins:
            - name: drf
            - name: predicates
            - name: proportion
            - name: nodeorder
            - name: binpack
          configurations:
           ...
            - name: init-params
              arguments: {"grace-over-time":"900","presetVirtualDevice":"true"}  
      ...

使用方法

  • 创建训练任务时,需要在创建yaml文件时,修改如下配置。以Atlas 训练系列产品使用为例。
    resources中设定的requests和limits资源类型,应修改为huawei.com/Ascend910-Y,其中Y值和vNPU类型相关,具体取值参考表 虚拟化实例模板与虚拟设备类型关系表中的虚拟类型。
    ...
              resources:  
                requests:
                  huawei.com/Ascend910-Y: 1          # 请求的vNPU数量,最大值为1。
                limits:
                  huawei.com/Ascend910-Y: 1          # 数值与请求数量一致。
    ...
  • 创建推理任务时,需要在创建yaml文件时,修改如下配置。以Atlas 推理系列产品(配置Ascend 310P AI处理器)使用为例。
    resources中设定的requests和limits资源类型,应修改为huawei.com/Ascend310P-Y,其中Y值和vNPU类型相关,具体取值参考表 虚拟化实例模板与虚拟设备类型关系表中的虚拟类型。
    ...
              resources:  
                requests:
                  huawei.com/Ascend310P-Y: 1          # 请求的vNPU数量,最大值为1。
                limits:
                  huawei.com/Ascend310P-Y: 1          # 数值与请求数量一致。
    ...
搜索结果
找到“0”个结果

当前产品无相关内容

未找到相关内容,请尝试其他搜索词