使用 NVIDIA GPU

本页介绍如何将节点池与 NVIDIA 图形处理器 (GPU) 硬件加速器搭配使用,为您的 Knative serving 容器实例提供计算能力,从而推动图片识别、自然语言处理等深度学习任务以及其他计算密集型任务的顺利完成。

向 GKE 集群添加具有 GPU 的节点池

让管理员创建一个具有 GPU 的节点池:

  1. 将支持 GPU 的节点池添加到 GKE 集群

  2. 将 NVIDIA 的设备驱动程序安装到节点

设置服务以使用 GPU

您可以在部署新服务、更新现有服务或部署修订版本时,使用 Google Cloud 控制台或 Google Cloud CLI 为服务指定使用 GPU 的资源限制

控制台

  1. 前往 Knative serving
  2. 点击创建服务,以显示“创建服务”表单。

  3. 服务设置部分:

    1. 选择具有支持 GPU 的节点池的 GKE 集群。
    2. 为您的服务指定名称。
    3. 点击下一步以转到下一部分。
  4. 配置服务的第一个修订版本部分:

    图片

    1. 添加容器映像网址。
    2. 点击高级设置,然后在已分配的 GPU 菜单中选择要分配给服务的 GPU 数量图片
  5. 点击下一步以转到下一部分。

  6. 配置此服务的触发方式部分,选择您想使用哪个连接来调用服务。

  7. 点击创建以将映像部署到 Knative serving,然后等待部署完成。

命令行

您可以使用 gcloud run services describe 命令和 --format=export 标志将现有服务的配置下载到的 YAML 文件中。然后,您可以使用 gcloud run services replace 命令修改该 YAML 文件并部署这些更改。您必须确保仅修改指定的属性。

  1. 将服务配置下载到本地工作区上名为 service.yaml 的文件中:

    gcloud run services describe SERVICE --format export > service.yaml

    SERVICE 替换为您的 Knative serving 服务的名称。

  2. 在本地文件中,更新 nvidia.com/gpu 属性:

    apiVersion: serving.knative.dev/v1
    kind: Service
    metadata:
    name: SERVICE_NAME
    spec:
    template:
     spec:
       containers:
       – image: IMAGE_URL
         resources:
           limits:
            nvidia.com/gpu: "GPU_UNITS"
    

    GPU_UNITS 替换为 Kubernetes GPU 单元中所需的 GPU 值。例如,指定 1 表示 1 个 GPU。

  3. 通过运行以下命令来部署 YAML 文件并为您的服务换用新配置:

    gcloud run services replace service.yaml

如需详细了解 GPU 性能和费用,请参阅 GPU