2.3. Infiniband技术特色
图示: 传输小数据包的性能测试
许多应用对信息传输的延迟是很敏感的,传输的延迟随着所传输信息的大小而有所不同,所以,同时了解互连网络在传输小信息和大信息时的延迟非常重要。通过对集群中两节点间进行的延迟基准测量,可以看到Infiniband设备在各种处理器平台上延迟都是最低。
需要指出的是,延迟的基准测试中一般都是采用了最小的数据包及0字节的数据包进行传输,得到结果,并没有反映出实际工作时的情况;而实际应用中,数据包一般比较大,这时就对带宽提出了要求。
图示4K数据包时各种网络的延迟
在传输4K大小的数据包时,Infiniband 10Gbps的带宽优势很明显,传输速度远远优于Myrinet和千兆以太网。
需要注意的是,所有公开的网络延迟都是在非常好的情况下测得的。非常好的情况是指参与测试的两台服务器只通过了一个交换芯片连接;但是,随着集群规模的扩大,底层的交换结构也将扩大,传输数据包所需经过的交换设备也在不断的增加,每一个交换设备都会在数据包传输到目的地的过程中增加额外的延迟;单独看待一台交换机硬件上的延迟是很小的,相比其他部分产生的延迟,可以忽略;但是站在整套集群架构来看,考虑这个延迟的重要性就显现出来。考虑了设备的延迟,还需要考虑物理层(设备)以上的各种网络协议在传输数据时产生的延迟。Infiniband的设计采用了传输协议卸载和绕过OS技术,也称为RDMA(远程直接存储访问),从而减少了通信对CPU的开销,将CPU的计算资源留给了应用。对于应用,越多的CPU资源意味着计算工作能够更快的完成或更多复杂的模拟可以在同一时间内完成。所有的这些降低延迟的特性集合起来证明了Infiniband的能力。
由于协议、通信和CPU的负载将会随着节点的增加而占用越来越多的CPU计算资源,所以,保证可用的CPU资源总数能够随着集群规模而线性增加是非常重要的。这一性能可以通过HPL(High-Performance Linpack)测试结果来体现。HPL的测试结果用百分数表示:实际应用所占的计算资源与整体计算资源相除得出百分比。需要指明的是,即使是一台双CPU的服务器,没有任何互联设备,在做HPL测试时,也不可能达到100%的效率。这就要求互连设备能够随着集群增大而尽量保持较高的HPL效率,下图表显示了使用同种处理器而处理器数量从4到288个时的HPL效率,Infiniband再次取得了最好的性能。
Top500 上相同CPU各种网络的HPL效率
与同类其它产品(如10Gbit以太网卡)相比较,Infiniband产品也具有明显的优势,其价格是目前10Gbit以太网卡的十分之一,但是Infiniband HCA卡的功耗却是10Gbit以太网卡的七分之一,同时具有带宽更大,延时更低,面积更小,对于CPU的占用率更低,基于Infiniband平台的软件更加成熟等优势。
随着双核处理器的出现、PCI-Express总线的发展、超级计算机的规模越来越大,对于高带宽、低延时的需求变得越来越苛刻;数据库机群的发展,华尔街/金融分析的精确度的增加,制造业、石油、气象、生物等仿真技术的发展; 等等。高性能、低价格的网络互连方案变得日益重要,所有的一切都在推动Infiniband在快速的成为市场的主流,在科学计算、高速存储和嵌入式应用等市场变得越来越普及。
2.3.1. Infiniband常用术语
HCA – Host Channel Adapter (主信道适配器)
TCA – Target Channel Adapter (目标信道适配器)
QP – Queue Pair 每一个HCA可以同时支持几千个QP(s)。QP(s)由需要通信的节点产生。
SM – Subnet Manager 子网管理器(配置IB结构的软件)
ULP – Upper Layer Protocol (软件包,采用Infiniband提供所定义的功能和服务)
CM – Communication Manager (ULP所使用的软件,用来调节节点机间所产生的QP)
LID – 16bit Local Identifier 由子网管理器分配的标识