NVIDIA A100能够安全地划分为多达七个独立的GPU实例,能够为多个用户提供单独的GPU资源,进而提升GPU利用率。本文介绍如何通过节点池开启NVIDIA A100的多实例MIG(Multi-Instance GPU)能力。
前提条件
- 已创建异构计算集群,且集群版本不低于1.20.4。具体操作,请参见创建异构计算集群。
注意 目前只有弹性裸金属服务器A100机型(即名称首部为ecs.ebmgn7.的机型)支持MIG功能,直通ECS A100机型(即名称首部为ecs.gn7.的机型)并不支持开启MIG能力。关于弹性裸金属服务器的更多信息,请参见弹性裸金属服务器概述。
- 已通过Kubectl工具连接异构计算集群。具体操作,请参见通过kubectl工具连接集群。
背景信息
GTC 2020,NVIDIA正式发布了搭载全新一代Amepere架构的Tesla A100,Ampere架构继承了前两代Volta和Turing架构的诸多优点,并增加了更多新的设计亮点,其中的一个重要特性是支持MIG。
NVIDIA A100由7个计算单元和8个内存单元组成,可以划分为多个大小相同(或不同)的 GPU 实例,每个GPU实例包含一定的计算单元和内存单元。
关于NVIDIA A100多实例GPU特性的更多信息,请参见
NVIDIA A100多实例GPU用户指南。
说明 内存指显存,每个内存单元为5 GB。
GPU实例规格的使用语法为:
[compute]g.[memory]gb
。例如,一个拥有1个计算单元和一个内存单元的GPU实例规格为:1g.5gb。在一张NVIDIA A100上可划分的MIG实例规格和数量如下所示:
实例规格 | 实例规格ID | 单张A100最多划分实例数 | 每个实例的计算单元个数 | 每个实例内存单元个数 |
---|---|---|---|---|
1g.5gb | 19 | 7 | 1 | 1(5 GB) |
2g.10gb | 14 | 3 | 2 | 2(10 GB) |
3g.20gb | 9 | 2 | 3 | 4(20 GB) |
4g.20gb | 5 | 1 | 4 | 4(20 GB) |
7g.40gb | 0 | 1 | 7 | 8(40 GB) |
使用节点池标签划分MIG
在创建节点池时,通过给节点池添加特定的标签,达到开启节点池内的节点的MIG能力。可通过以下两种方式指定划分MIG实例:
- 指定单个MIG实例名称或ID
该方式可在一张NVIDIA A100上划分多个相同的MIG实例规格,设置简单、便于理解。
- 指定MIG实例规格序列
该方式可在一张NVIDIA A100上自定义划分多种MIG实例规格,设置灵活。
方式一:指定单个MIG实例名称或ID
- 节点池标签:
ack.aliyun.com/gpu-partition-size
。 - 标签值:单个MIG实例名称或ID(例如:1g.5gb或19)。
- 示例:
ack.aliyun.com/gpu-partition-size=1g.5gb
或ack.aliyun.com/gpu-partition-size=19
。 - 含义:对每个NVIDIA A100按照指定的规格尽可能多的划分MIG。从上表中可以看到一张NVIDIA A100上最多可以划分7个规格为1g.5gb的MIG。

方式二:指定MIG实例规格序列
- 节点池标签:
ack.aliyun.com/gpu-partition-sequence
- 标签值:规格或ID序列(例如,1g.5gb-2g.10gb-3g.20gb或19-14-9),不过只有一些特定序列可用。
A100目前支持18种序列,更多信息,请参见NVIDIA A100多实例GPU用户指南中的“A100 Supported Profiles”。
ACK目前仅开放如下4种序列:索引号序列 规格序列 19-19-19-19-19-19-19 1g.5gb-1g.5gb-1g.5gb-1g.5gb-1g.5gb-1g.5gb-1g.5gb 14-14-14-19 2g.10gb-2g.10gb-2g.10gb-1g.5gb 9-9 3g.20gb-3g.20gb 5-19-19-19 4g.20gb-1g.5gb-1g.5gb-1g.5gb - 示例:
ack.aliyun.com/gpu-partition-sequence=3g.20gb-3g.20gb
或ack.aliyun.com/gpu-partition-sequence=9-9
- 含义:对每个NVIDIA A100按照指定规格序列创建MIG实例。例如,对于序列3g.20gb-3g.20gb,NVIDIA A100会被划分为两个规格为3g.20gb的MIG。
注意 控制台标签的值不支持半角逗号(,),所以MIG序列需要使用短划线(-)连接。例如,在控制台填写标签
ack.aliyun.com/gpu-partition-sequence=1g.5gb,2g.10gb,3g.20gb
是不合法的,需要使用ack.aliyun.com/gpu-partition-sequence=1g.5gb-2g.10gb-3g.20gb
。

创建节点池
验证节点池中的节点是否开启MIG功能
当节点池创建完成后,根据以下操作验证节点池中的节点是否开启MIG功能。