应用型专用集成电路ASIC(Application-Specific Integrated Circuit)芯片的计算能力和计算效率是直接根据特定算法的需要进行定制的,所以具备体积小、功耗低、高可靠性、保密性强、计算性能高、计算效率高等优势。本文介绍如何为集群添加ASIC节点以及ASIC芯片的使用示例。
前提条件
创建ASIC节点池
查看节点挂载的ASIC设备
节点创建成功后,可查看节点挂载的ASIC设备。
登录容器服务管理控制台,在左侧导航栏选择集群列表。
在集群列表页面,单击目标集群名称,然后在左侧导航栏,选择 。
在目标节点所在行,单击操作列的详情,查看该节点挂载的ASIC设备。
使用ASIC设备
执行以下命令,查看集群某个节点中的NETINT ASIC设备数。
kubectl get nodes <NODE_NAME> -o yaml | grep netint.ca/ASIC
预期输出:
netint.ca/ASIC: "12"
预期输出表明,该节点中包含12张NETINT ASIC卡。
提交一个申请NETINT ASIC设备的任务。
使用以下YAML示例创建test-asic.yaml文件。
apiVersion: batch/v1 kind: Job metadata: name: test-asic spec: parallelism: 1 template: metadata: labels: app: test-asic spec: containers: - name: test-asic image: registry.cn-beijing.aliyuncs.com/ai-samples/asic_258:asic command: - sleep - "500" resources: limits: netint.ca/ASIC: 2 #申请两张NETINT ASIC设备。 restartPolicy: Never
执行以下命令,提交任务。
kubectl create -f test-asic.yaml
执行以下命令,查看Pod的运行状态是否处于Running。
kubectl get po -l app=test-asic
执行以下命令,登录到Pod中。
kubectl exec -ti test-asic-xxxxx -- bash
在Pod中执行以下命令,初始化NETINT ASIC设备。
ni_rsrc_mon
执行以下命令,验证NETINT ASIC设备是否可用。
bash run_ffmpeg.sh
该文章对您有帮助吗?