¿Cómo calculo el ancho de banda de tiempo de ejecución del zócalo PCIe usando Process Control Monitor?

¿Cómo calculo el ancho de banda de tiempo de ejecución del zócalo PCIe usando Process Control Monitor?

Estoy trabajando en aprendizaje profundo y estoy tratando de identificar un cuello de botella en nuestra canalización de GPU.

Estamos ejecutando Ubuntu en una placa base Intel Xeon con 4 NVIDIA Titan RTX. La utilización de la GPU medida por nvidia-smi parece ser bastante baja a pesar de que el uso de la memoria de la GPU ronda el 97%.

Entonces estoy tratando de ver si el autobús es el cuello de botella.

he descargadoPCMy lo estoy ejecutando para monitorear el tráfico PCIe 3.0 x16.

Processor Counter Monitor: PCIe Bandwidth Monitoring Utility 
 This utility measures PCIe bandwidth in real-time

 PCIe event definitions (each event counts as a transfer): 
   PCIe read events (PCI devices reading from memory - application writes to disk/network/PCIe device):
     PCIeRdCur* - PCIe read current transfer (full cache line)
         On Haswell Server PCIeRdCur counts both full/partial cache lines
     RFO*      - Demand Data RFO
     CRd*      - Demand Code Read
     DRd       - Demand Data Read
   PCIe write events (PCI devices writing to memory - application reads from disk/network/PCIe device):
     ItoM      - PCIe write full cache line
     RFO       - PCIe partial Write
   CPU MMIO events (CPU reading/writing to PCIe devices):
     PRd       - MMIO Read [Haswell Server only] (Partial Cache Line)
     WiL       - MMIO Write (Full/Partial)
...
Socket 0: 2 memory controllers detected with total number of 6 channels. 3 QPI ports detected. 2 M2M (mesh to memory) blocks detected.
Socket 1: 2 memory controllers detected with total number of 6 channels. 3 QPI ports detected. 2 M2M (mesh to memory) blocks detected.
Trying to use Linux perf events...
Successfully programmed on-core PMU using Linux perf
Link 3 is disabled
Link 3 is disabled
Socket 0
Max QPI link 0 speed: 23.3 GBytes/second (10.4 GT/second)
Max QPI link 1 speed: 23.3 GBytes/second (10.4 GT/second)
Socket 1
Max QPI link 0 speed: 23.3 GBytes/second (10.4 GT/second)
Max QPI link 1 speed: 23.3 GBytes/second (10.4 GT/second)

Detected Intel(R) Xeon(R) Gold 5122 CPU @ 3.60GHz "Intel(r) microarchitecture codename Skylake-SP" stepping 4 microcode level 0x200004d
Update every 1.0 seconds
delay_ms: 54
Skt | PCIeRdCur |  RFO  |  CRd  |  DRd  |  ItoM  |  PRd  |  WiL
 0      13 K        19 K     0       0      220 K    84     588  
 1       0        3024       0       0        0       0     264  
-----------------------------------------------------------------------
 *      13 K        22 K     0       0      220 K    84     852  

Ignore los valores reales por un momento. Tengo valores mucho más grandes. :-)

¿Cómo calculo el ancho de banda de tiempo de ejecución del zócalo PCIe usando Process Control Monitor?

¿Por qué solo aparecen dos enchufes en la lista?

Respuesta1

Deopcm de github:

socket se refiere a zócalos de CPU, no a ranuras o dispositivos PCIe. Tienes un sistema con 2 zócalos de CPU, ¿verdad? La salida --help describe el cambio -B al ancho de banda de salida por zócalo de CPU (consulte también la advertencia aquí con operaciones parciales). pci-iio.x es una utilidad diferente que muestra el ancho de banda por dispositivo PCIe.

información relacionada