本帖最后由 larryexchange 于 2016-7-14 16:39 编辑
测试一:用微软官方的网络测试工具NTTTCP.EXE来测试网络的吞吐和对CPU的开销
------------------------------
- 在服务器端运行 ntttcp.exe -r -m 8,*,192.168.25x.4 -rb 2M -a 16 -t 15
- 在客户端运行 ntttcp.exe -s -m 8,*,192.168.25x.4 -l 128k -a 2 -t 15
两个网络接口的测试结果如下:
从上面的结果可以看出两个接口的吞吐分别为1129.72MB/s和1129.88MB/s。CPU占用率分别是3.78%和4.05%。
测试二:验证SMB Direct是否正常工作
-----------------------------
首先从系统中将工作站上的两个Chelsio网络接口都禁用。并用PowerShell命令Get-SMBMultichannelConnection来验证RDMA是否起作用了。由于Windows Server本身支持SMB MultiChannel,所以虽然后面测试目标用了一个IP地址,但从下图也可以看出两个网络接口的两个通道同时都在起作用。
测试三:Crystal Disk Mark测试
------------------------------
上面的测试结果是有点出乎我意料之外。开始怀疑是线缆的问题,不过同Chelsio的网卡兑换了线缆以后依然表现不好,而且从性能监视器还观察到两个RDMA网卡虽然都有活动,但并不太正常,似乎在频繁切换。当我禁用掉其中一个网口,仅留一个RoCE网口时,读写的吞吐反而都可以达到接口的上限。
测试四:4KB随机读测试
----------------------------
运行微软官方的磁盘测试工具DiskSpd对100GB大小的文件进行100%随机4KB读操作,关注IOPS和延迟并用系统自带性能监视器捕捉IOPS和RDMA活动
从测试结果可以看到,此时在SMB Direct下,我们最多可以获得238,004 IOPS,平均延迟0.47ms,延迟的标准差为2.896ms。
从下面的性能曲线我们也可以更加直观的看出波动很明显。
|