日本熟妇hd丰满老熟妇,中文字幕一区二区三区在线不卡 ,亚洲成片在线观看,免费女同在线一区二区

通過ack-co-scheduler使用共享GPU調度

共享GPU調度作為一種資源管理策略,允許多個任務或進程共享同一GPU。您可以在注冊集群中使用共享GPU調度,幫您解決傳統GPU調度的資源浪費問題,從而提升GPU利用率。

前提條件

計費說明

共享GPU調度目前已實行收費。在使用共享GPU調度前,需開通云原生AI套件。具體收費信息,請參見云原生AI套件計費說明。關于云原生AI套件的更多信息,請參見云原生AI套件概述

使用限制

  • 請勿將共享GPU調度的節點的CpuPolicy設置為static

  • 共享GPU的Daemonset的Pod在節點上的優先級不是最高的,所以節點資源有可能被其他優先級高的Pod搶占而導致被驅逐。如果想避免這個問題,可以對您實際使用的Daemonset(如共享GPU顯存的gpushare-device-plugin-ds)進行修改,加上priorityClassName: system-node-critical來保證其優先級。

步驟一:安裝組件

  1. 在注冊集群中安裝ack-ai-installer組件。該組件可以提供共享GPU調度(包括共享隔離能力)、GPU拓撲感知調度等調度能力。

    1. 登錄容器服務管理控制臺,在左側導航欄選擇集群

    2. 集群列表頁面,單擊目標集群名稱,然后在左側導航欄,選擇應用 > Helm

    3. Helm頁面,單擊創建。搜索并安裝ack-ai-installer組件。

  2. 在注冊集群中安裝ack-co-scheduler組件。通過該組件,您可以自定義ResourcePolicy CR對象,使用多級彈性調度功能。

    1. 集群列表頁面,單擊目標集群名稱,然后在左側導航欄,選擇運維管理 > 組件管理

    2. 組件管理頁面,搜索ack-co-scheduler組件,在卡片右下方單擊安裝

步驟二:安裝和使用GPU資源查詢工具

  1. 下載kubectl-inspect-cgpu。

    • 如果您使用的是Linux系統,您可以通過以下命令下載kubectl-inspect-cgpu。

      wget http://aliacs-k8s-cn-beijing.oss-cn-beijing.aliyuncs.com/gpushare/kubectl-inspect-cgpu-linux -O /usr/local/bin/kubectl-inspect-cgpu
    • 如果您使用的是macOS系統,您可以通過以下命令下載kubectl-inspect-cgpu。

      wget http://aliacs-k8s-cn-beijing.oss-cn-beijing.aliyuncs.com/gpushare/kubectl-inspect-cgpu-darwin -O /usr/local/bin/kubectl-inspect-cgpu
  2. 執行以下命令,為kubectl-inspect-cgpu添加執行權限。

    chmod +x /usr/local/bin/kubectl-inspect-cgpu

步驟三:創建GPU節點

創建GPU云服務器,并安裝驅動和nvidia-container-runtime。具體操作,請參見創建節點池

說明
  • 如果您添加節點池時已經創建GPU節點并配置好環境,可以跳過此步驟。

  • 如果您沒有安裝驅動的腳本,請參見手動升級GPU節點驅動

  • 使用共享GPU調度的節點需要有標簽ack.node.gpu.schedule=share,您可以通過節點池的節點標簽功能或者手動為節點打上該標簽。具體操作,請參見GPU節點調度屬性標簽說明

步驟四:使用共享GPU調度

  1. 執行以下命令,查看集群GPU使用情況。

    kubectl inspect cgpu

    預期輸出:

    NAME                           IPADDRESS       GPU0(Allocated/Total)  GPU Memory(GiB)
    cn-zhangjiakou.192.168.66.139  192.168.66.139  0/15                   0/15
    ---------------------------------------------------------------------------
    Allocated/Total GPU Memory In Cluster:
    0/15 (0%)
  2. 使用以下內容,創建GPUtest.yaml。

    apiVersion: batch/v1
    kind: Job
    metadata:
      name: gpu-share-sample
    spec:
      parallelism: 1
      template:
        metadata:
          labels:
            app: gpu-share-sample
        spec:
          schedulerName: ack-co-scheduler
          containers:
          - name: gpu-share-sample
            image: registry.cn-hangzhou.aliyuncs.com/ai-samples/gpushare-sample:tensorflow-1.5
            command:
            - python
            - tensorflow-sample-code/tfjob/docker/mnist/main.py
            - --max_steps=100000
            - --data_dir=tensorflow-sample-code/data
            resources:
              limits:
                # 單位為GiB,該Pod總共申請了3 GiB顯存。
                aliyun.com/gpu-mem: 3 # 設置GPU顯存大小。
            workingDir: /root
          restartPolicy: Never
  3. 執行以下命令,部署一個GPU示例應用,該應用申請3GiB顯存。

    kubectl apply -f GPUtest.yaml
  4. 執行以下命令,查看集群GPU顯存使用情況。

    kubectl inspect cgpu

    預期輸出:

    NAME                           IPADDRESS       GPU0(Allocated/Total)  GPU Memory(GiB)
    cn-zhangjiakou.192.168.66.139  192.168.66.139  3/15                   3/15
    ---------------------------------------------------------------------------
    Allocated/Total GPU Memory In Cluster:
    3/15 (20%)             

    預期輸出表明,節點cn-zhangjiakou.192.168.66.139共有15 GiB顯存,已分配3 GiB顯存。

相關文檔

更多關于共享GPU調度的信息,請參見共享GPU調度概述