Serverless Kubernetes和ACK虚拟节点都已基于ECI提供GPU容器实例功能,让用户在云上低成本快速搭建serverless AI实验室,用户无需维护服务器和GPU基础运行环境,极大降低AI平台运维的负担,显著提升整体计算效率。
如何使用GPU容器实例
在pod的annotation中指定所需GPU的类型(P4/P100/V100等),同时在resource.limits中指定GPU的个数即可创建GPU容器实例。每个pod独占GPU,暂不支持vGPU,GPU实例的收费与ECS GPU类型收费一致,不产生额外费用,目前ECI提供多种规格的GPU类型。(请参考https://help.aliyun.com/document_detail/114581.html)
示例
1. 创建Serverless Kubernetes集群
选择深圳区域,可用区D。
2. 创建GPU容器实例
我们使用tensorflow模型对如下图片进行识别:
使用模版创建pod,其中选择P100 GPU规格。在pod中的脚本会下载上述图片文件,并根据模型进行识别计算。
apiVersion: v1
kind: Pod
metadata:
name: tensorflow
annotations:
k8s.aliyun.com/eci-gpu-type : "P100"
spec:
containers:
- image: registry-vpc.cn-shenzhen.aliyuncs.com/ack-serverless/tensorflow
name: tensorflow
command:
- "sh"
- "-c"
- "python models/tutorials/image/imagenet/classify_image.py"
resources:
limits:
nvidia.com/gpu: "1"
restartPolicy: OnFailure
部署后pod会处于pending状态:
等待几十秒后pod状态变成Running,待计算完成后会变成Terminated状态。
从pod的日志我们可以看到pod能够识别P100 GPU硬件,而且可以正确识别图片为Panda。
总结
通过以上示例可以看出,从环境搭建到计算结束,整个过程用户无需购买和管理服务器,无需安装GPU运行环境,serverless的方式可以让用户更加关注在AI模型构建,而不是底层基础设施的管理和维护。