首页 > 解决方案 > 为什么跨 NUMA 节点的 NVIDIA GPU 可以启用 P2P?

问题描述

根据这个答案:

P2P 无法在跨 NUMA 节点的 gpus 之间工作。

但就我而言,GPU 拓扑是:

$ nvidia-smi topo -m
        GPU0    GPU1    GPU2    GPU3    GPU4    GPU5    GPU6    GPU7    CPU Affinity    NUMA Affinity
GPU0     X      PIX     PIX     PIX     SYS     SYS     SYS     SYS     0-17,36-53      0
GPU1    PIX      X      PIX     PIX     SYS     SYS     SYS     SYS     0-17,36-53      0
GPU2    PIX     PIX      X      PIX     SYS     SYS     SYS     SYS     0-17,36-53      0
GPU3    PIX     PIX     PIX      X      SYS     SYS     SYS     SYS     0-17,36-53      0
GPU4    SYS     SYS     SYS     SYS      X      PIX     PIX     PIX     18-35,54-71     1
GPU5    SYS     SYS     SYS     SYS     PIX      X      PIX     PIX     18-35,54-71     1
GPU6    SYS     SYS     SYS     SYS     PIX     PIX      X      PIX     18-35,54-71     1
GPU7    SYS     SYS     SYS     SYS     PIX     PIX     PIX      X      18-35,54-71     1

很明显,GPU0-3 和 GPU4-8 位于不同的 NUMA 节点上。

但是在这些 GPU 之间,p2p 仍然启用,根据输出p2pBandwidthLatencyTest

P2P Connectivity Matrix
     D\D     0     1     2     3     4     5     6     7
     0       1     1     1     1     1     1     1     1
     1       1     1     1     1     1     1     1     1
     2       1     1     1     1     1     1     1     1
     3       1     1     1     1     1     1     1     1
     4       1     1     1     1     1     1     1     1
     5       1     1     1     1     1     1     1     1
     6       1     1     1     1     1     1     1     1
     7       1     1     1     1     1     1     1     1

标签: nvidiap2pmulti-gpu

解决方案


推荐阅读