windows-server-2008-r2 – 如何在没有Jumbo数据包的情况下提高I
这是我到目前为止所做的:
使用更多Rx / Tx缓冲区可以提升默认性能.我在每个适配器上将RSS队列设置为4,并将第二个端口上的RSS CPU指定为0以外的值(在我使用的PC上是16,有16个核心,32个HT). 从观看ProcessExplorer,我受到CPU处理大量传入中断的能力的限制,即使启用了RSS也是如此.我在2.x模式下使用PCIe x8(电气)插槽.两个适配器中的每一个都连接5GT /秒x8总线. 操作系统响应无关紧要,I / O吞吐量确实如此.我受限于客户无法处理Jumbo数据包. 我接下来应该尝试哪些设置? 详细信息:双Xeon-E5 2665,32 GB RAM,RAID0中的8个SSD(用于NIC性能验证的RAMDrive),1TB数据将通过IIS / FTP从400个客户端移动,尽快. 回应评论: 实际读取吞吐量为650 MB /秒,通过一对组合的10Gb /秒链路进入RAM驱动器 防病毒和防火墙已关闭,AFAICT. (在这种情况下,我对PC上安装的内容有相当好的控制.我怎么能确定没有过滤器会降低性能?我必须跟进,好点.) 在Process Explorer中,我看到CPU继续运行的时间段(红色,内核时间),但网络和磁盘I / O已停止 Max RSS处理器的默认值为16 X520-DA2设备的两个实例都支持消息信号中断,MessageNumberLimit设置为18.这是我在低端桌面卡上看到的内容
高性能NIC的一个问题是现代PC架构在跟上时会遇到一些麻烦.但是,在你的情况下,这不是问题所在.让我解释.
CPU必须做很多处理TCP数据包的工作.这会影响吞吐量.在您的情况下,限制的不是网络硬件,而是服务器使网络链接饱和的能力. 在最近的时间里,我们已经看到处理从CPU移动到NIC,就像校验和卸载一样.英特尔还增加了一些功能,有助于进一步降低负载.这很酷,我确信所有优化功能都已打开. 正如你所提到的,巨型帧 – 实际上有助于提高吞吐量.但没有RDMA那么多. 大多数10GBit以太网硬件都有一个非常好的未充分利用的功能,称为RDMA或远程直接内存访问.它允许NIC通过网络执行内存到内存副本,而无需CPU的干预.好吧,好的,CPU告诉NIC要做什么,然后NIC完成剩下的工作.问题是,它还没有被使用.但它已经到了那里.显然,在最新版本的Microsoft Windows Server 2012中,它们有一个名为SMB Direct的东西.它使用RDMA.因此,如果您想增加吞吐量,则需要使用它. 您是否可以将一些测试硬件组装在一起并将其安装到那里以查看其性能如何? 顺便说一句,我不确定你是否会在10Gbit上看到这么多,但是快速RAM有助于RDMA特别是56Gbit Infiniband.通常,最好使用服务器支持的最快RAM. 另请注意我在上面提到的SMB Direct链接上的评论:
更新:由于某种原因,看起来并非所有10GBit NIC都支持RDMA. 我的另一个想法是用于进行测试的协议类型可能会影响结果.即TCP开销之上的协议开销.我建议你研究一下可以测试的东西,而不用触摸硬盘,如iperf.某处有一个Windows端口. (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |
- windows安装mysql8详解
- 在MS Windows上重用GTK中不同父级的模态对话框 – 破碎的焦
- windows – Delphi:如何设置(写入)扩展文件属性?
- 3dmax2012卸载/安装失败/如何彻底卸载清除干净3dmax2012注册
- 获取当前线程ID在Windows 8与C#
- 如何注册Win8定期磁贴通知?
- windows-10 – 使用VS2015和Windows 10的uap app左上角的两
- windows-xp – Windows XP:远程监控CPU负载
- Windows Phone 8 – Phonegap条码扫描器不识别Windows手机上
- windows-7 – 如何让Windows 7壁纸正确显示公司徽标?