NVLink
NVLink es un protocolo de comunicaciones basado en un enlace de comunicación serial multi-línea de corto alcance desarrollado por Nvidia. A diferencia del PCI Express, un dispositivo tiene múltiples NVLinks y los dispositivos no utilizan un hub central para comunicarse, sino una malla.
Principio
[editar]NVLink es un protocolo para las comunicaciones, de corto alcance, basadas en cable, entre semiconductores desarrollado por Nvidia que puede utilizarse para la transferencia de datos y códigos de control en sistemas de procesador entre el CPU y el GPU o únicamente entre GPUs. NVLink especifica conexiones punto a punto con velocidades de datos entre 20 y 25 Gbit/s (v1.0/v2.0) por línea de datos con cada dirección. Las velocidades de datos totales en los sistemas actuales son de 160 y 300 GByte/s (v1.0/v2.0) para la suma total de los flujos de datos de entrada y salida del sistema. Los productos NVLink introducidos hasta la fecha se centran en el espacio de aplicaciones de alto rendimiento. El NVLINK, anunciado por primera vez en marzo de 2014, utiliza una interconexión propietaria de señalización de alta velocidad (NVHS) desarrollada por Nvidia.
Rendimiento
[editar]La siguiente tabla muestra una comparación de los parámetros de bus relevantes para semiconductores reales que ofrecen NVLink como una de sus opciones:
Semiconductor | Interconexión | Velocidad de la tecnología de transmisión (Por línea) | Líneas perSub-Link (Out+ In) | Velocidad de datos delSub-Link (por dirección de datos) | Número de Sub-Links | Velocidad total de datos (Out + In) | Número total de líneas | Velocidad total de datos |
---|---|---|---|---|---|---|---|---|
Nvidia P100 | PCIe 3.0 | 08 GT/s | 16 + 16 Ⓑ | 128 Gbit/s = 16 GByte/s | 1 | 016 + 016 GByte/s | 32 Ⓒ | 032 GByte/s |
IBM Power9 | PCIe 4.0 | 16 GT/s | 16 + 16 Ⓑ | 256 Gbit/s = 32 GByte/s | 3 | 096 + 096 GByte/s | 48 | 192 GByte/s |
Nvidia P100 | NVLink 1.0 | 20 GT/s | 08 + 08 Ⓐ | 160 Gbit/s = 20 GByte/s | 4 | 080 + 080 GByte/s | 64 | 160 GByte/s |
IBM Power8+ | NVLink 1.0 | 20 GT/s | 08 + 08 Ⓐ | 160 Gbit/s = 20 GByte/s | 4 | 080 + 080 GByte/s | 64 | 160 GByte/s |
Nvidia V100 | NVLink 2.0 | 25 GT/s | 08 + 08 Ⓐ | 200 Gbit/s = 25 GByte/s | 6 | 150 + 150 GByte/s | 96 | 300 GByte/s |
IBM Power9 | NVLink 2.0(Puertos BlueLink) | 25 GT/s | 08 + 08 Ⓐ | 200 Gbit/s = 25 GByte/s | 6 | 150 + 150 GByte/s | 96 | 300 GByte/s |
Nota: Las columnas de velocidad de datos se redondearon aproximándose a la velocidad de transmisión, véase el párrafo sobre los rendimientos reales.
- Ⓐ: valor de muestra; debería ser posible la agrupación de sublinks NVLink
- Ⓑ: valor de muestra; deben ser posibles otras fracciones para el uso de la línea PCIe.
- Ⓒ: una única línea PCIe (no! 16) transfiere datos a través de un par diferencial