ECI支持指定ECS GPU规格来创建GPU实例。GPU对应的Docker镜像可以直接运行在ECI GPU实例上,无需安装Tensorflow、CUDA Toolkit等软件。本文介绍如何在Knative中创建并使用ECI GPU实例。
前提条件
在Knative中使用GPU
您可以通过在Knative Service中添加spec.template.metadata.annotation
下的k8s.aliyun.com/eci-use-specs
字段指定GPU规格,然后通过spec.containers.resources.limits
下的nvidia.com/gpu
字段声明GPU资源。
示例如下:
apiVersion: serving.knative.dev/v1
kind: Service
metadata:
name: helloworld-go
spec:
template:
metadata:
labels:
app: helloworld-go
annotations:
k8s.aliyun.com/eci-use-specs: ecs.gn5i-c4g1.xlarge #指定支持的ECS GPU规格。
spec:
containers:
- image: registry.cn-hangzhou.aliyuncs.com/knative-sample/helloworld-go:73fbdd56
ports:
- containerPort: 8080
resources:
limits:
nvidia.com/gpu: '1' #容器所需的GPU个数,必须指定该值,否则Pod启动后将会报错。
支持指定的ECS GPU规格族如下:
- GPU计算型实例规格族gn7i(NVIDIA A10),例如:ecs.gn7i-c8g1.2xlarge。
- GPU计算型实例规格族gn7(NVIDIA A100),例如:ecs.gn7-c12g1.3xlarge。
- GPU计算型实例规格族gn6v(NVIDIA V100),例如:ecs.gn6v-c8g1.2xlarge。
- GPU计算型实例规格族gn6e(NVIDIA V100),例如:ecs.gn6e-c12g1.3xlarge。
- GPU计算型实例规格族gn6i(NVIDIA T4),例如:ecs.gn6i-c4g1.xlarge。
- GPU虚拟化型实例规格族vgn6i-vws(NVIDIA T4),例如:ecs.vgn6i-m4-vws.xlarge、ecs.vgn6i-m8-vws.2xlarge。
- GPU计算型实例规格族gn5i(NVIDIA P4),例如:ecs.gn5i-c2g1.large。
- GPU计算型实例规格族gn5(NVIDIA P100),例如:ecs.gn5-c4g1.xlarge。
说明
- gn5配备了本地盘,您可以挂载使用本地盘,更多信息,请参见创建本地盘实例。
- 当前ECI GPU支持的驱动版本为NVIDIA 460.73.01,可支持的CUDA Tookit版本为11.2。
- 关于ECS GPU规格族的更多信息,请参见ECS实例规格可购买地域总览和实例规格族。