Kwok Kong describe un sistema multipar que utiliza conmutadores multipuerto PCI Express (PCIe) basados en estándares como interconexión del sistema en un documento técnico de IDT. Desde la publicación de ese documento técnico, IDT ha utilizado los puertos de puente no transparente (NTB) PES16NT8 de IDT y el dispositivo PES64H16 de IDT como conmutador PCIe multipuerto para la interconexión del sistema. Puede encontrar una descripción detallada de la arquitectura del software en la nota de aplicación AN-571. Este informe técnico presenta el rendimiento de transferencia de datos del sistema medido de dicho sistema.
Descripción del sistema
En la Figura 1 se muestra una topología de sistema de pares múltiples. Se utiliza una interfaz PCIe x4 para conectar cada procesador de ruta y procesador de punto final al conmutador PCIe de interconexión del sistema PES64H16. Esta es la topología utilizada para medir el rendimiento de transferencia de datos del sistema.
PES16NT2 se utiliza para proporcionar funcionalidad NTB para conectar procesadores de punto final basados en x86 a puertos descendentes de conmutadores PCIe PES64H16. El software de interconexión del sistema presenta una interfaz Ethernet virtual sobre PCIe. El sistema operativo (SO) Linux detecta las interfaces de red y “ve” las interfaces Ethernet. El sistema operativo Linux envía paquetes Ethernet a la interfaz PCIe como si fuera una interfaz Ethernet. En lo que respecta a la transferencia de datos, la interfaz PCIe está oculta para LinuxOS. Todas las pilas de protocolos de red actuales, como la pila de protocolos TCP/IP, y las aplicaciones de usuario que pueden ejecutarse encima de la pila TCP/IP funcionarán sin modificaciones.
Esta nota de aplicación analiza el rendimiento de la transferencia de datos del sistema para PCIe SystemInterconnect. El software de evaluación comparativa del rendimiento de la red netperf se utiliza para medir el rendimiento. El rendimiento se compara con las pruebas de loopback y el rendimiento de 10 GE.
Para los sistemas AMD, la velocidad de transferencia de datos efectiva es de 3 a 3,5 Gbps cuando el tamaño de los datos es de 1K a 16K bytes. Para un tamaño de datos de 512 bytes, la velocidad de datos es de aproximadamente 2,5 Gbps.
Para los sistemas Bensley, la velocidad de transferencia de datos efectiva es de aproximadamente 5 Gbps cuando el tamaño de los datos está entre 16 000 y 2 000 bytes. La tasa efectiva de transferencia de datos es de unos 4 Gbps cuando el tamaño de los datos es de 1K y de unos 3 Gbps cuando el tamaño de los datos es de 512 bytes. La tasa de transferencia de datos es similar a la interfaz 10GE. El rendimiento de Bensley es mucho mejor que el de AMD porque Bensley admite el motor DMA para la transferencia de datos. El motor DMA transfiere datos de manera más eficiente, liberando los ciclos de CPU de la copia de datos para manejar más trabajo de transferencia de datos.
Para grandes transferencias de datos, es probable que el tamaño de los datos sea de 4K a 8K bytes. En la práctica, se espera que la tasa de transferencia de datos efectiva para las interconexiones del sistema PCIe sea de alrededor de 5 Gbps para Bensley y 3,5 Gbps para AMD.
En general, la sobrecarga de la encapsulación del protocolo reduce el ancho de banda efectivo. Sin embargo, para tamaños de datos grandes, la reducción del ancho de banda se muestra en torno al 1-2 %. El aumento del ancho de banda por la reducción de la sobrecarga de encapsulación del protocolo es insignificante. Sin embargo, eliminar la pila de protocolos TCP/IP en las transferencias de datos ahorra muchos ciclos de CPU, liberando a la CPU para realizar más trabajo de transferencia de datos.