tensorflow - 使用Nvidia GPU节点在Kubernetes上运行示例Pod

标签 tensorflow kubernetes nvidia-docker

我正在尝试使用Nvidia GPU节点/从属服务器设置Kubernetes。
我遵循了https://docs.nvidia.com/datacenter/kubernetes-install-guide/index.html上的指南,并且能够使节点加入集群。我尝试了下面的kubeadm示例pod:

apiVersion: v1
kind: Pod
metadata:
  name: gpu-pod
spec:
  containers:
    - name: cuda-container
      image: nvidia/cuda:9.0-base
      command: ["sleep"]
      args: ["100000"]
      extendedResourceRequests: ["nvidia-gpu"]
  extendedResources:
    - name: "nvidia-gpu"
      resources:
        limits:
          nvidia.com/gpu: 1
      affinity:
        required:
          - key: "nvidia.com/gpu-memory"
            operator: "Gt"
            values: ["8000"]

广告连播未能安排,并且kubectl事件显示:
4s          2m           14        gpu-pod.15487ec0ea0a1882        Pod                                          Warning   FailedScheduling        default-scheduler            0/2 nodes are available: 1 Insufficient nvidia.com/gpu, 1 PodToleratesNodeTaints.

我正在使用AWS EC2实例。主节点为m5.large,从节点为g2.8xlarge。描述该节点还会给出“ nvidia.com/gpu:4 ”。
如果我缺少任何步骤/配置,有人可以帮我吗?

最佳答案

根据AWS G2 documentationg2.8xlarge服务器具有以下资源:

  • 四个NVIDIA GRID GPU,每个GPU具有1,536个CUDA内核和4 GB的视频
    内存和编码四个实时高清视频的能力
    1080p的视频流或720P的八个实时高清视频流。
  • 32个vCPU。
  • 60 GiB的内存。
  • 240 GB(2 x 120)的SSD存储。

  • 查看注释,60 GB是标准RAM,用于常规计算。 g2.8xlarge服务器具有4个GPU,每个GPU具有4 GB的GPU内存,该内存用于nvidia/cuda容器中的计算。

    在您的情况下,每个GPU需要8 GB的GPU内存,但是您的服务器只有4 GB。因此,群集缺少用于调度POD的资源。因此,请尝试减少Pod设置中的内存使用量,或尝试使用具有更大GPU内存的服务器。

    关于tensorflow - 使用Nvidia GPU节点在Kubernetes上运行示例Pod,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51718792/

    相关文章:

    neural-network - 端到端训练 CNN-LSTM?

    tensorflow - tflearn 和 tf.contrib.learn 之间有什么关系?

    kubernetes - 由于 Istio VirtualService,有没有办法代理对 ExternalName 服务的调用?

    docker - 多个 GPU 是否可以作为一个具有更多内存的 GPU 一起工作?

    tensorflow - tf.Keras 自定义层输出形状为无

    python - 将 JPG 和 XML 文件的数据集拆分为训练集和测试集

    kubernetes - 备份Kubernetes节点

    Kubernetes - 如果容器无法重新触发 init 容器,则强制重新启动 pod

    docker - 无法在docker上执行nvidia运行时

    docker - 是否可以在没有 GPU 的服务器上构建基于 `nvidia/cuda` 的图像?