找回密码
 加入我们
搜索
      
查看: 4821|回复: 7

[网络] RSS不使用超线程的CPU

[复制链接]
发表于 2024-3-30 10:29 | 显示全部楼层 |阅读模式
……早上在网上闲逛,突然看到这样一段话。这样说来,如果有网卡有带RSS功能,是不是要把CPU的超线程给关掉才能享受到这个功能呢?
发表于 2024-4-1 00:33 来自手机 | 显示全部楼层
开超线程对rss有正面贡献。本质上,对于IO密集型应用,超线程都是有益的。
然而,要特别注意两点。首先,对于每一个网络设备,要分配同一cpu物理以及逻辑核心。其次,要保证所有核心都在同一numa节点之下(仅针对多cpu系统)
 楼主| 发表于 2024-4-2 09:09 | 显示全部楼层
summerq 发表于 2024-4-1 00:33
开超线程对rss有正面贡献。本质上,对于IO密集型应用,超线程都是有益的。
然而,要特别注意两点。首先,对 ...

不是的!原话是这样:”RSS是一种网卡驱动技术,能让多核系统中跨多个处理器的网络收包处理能力高效能分配。

注意:由于同一个核的处理器超线程共享同一个执行引擎,这个效果跟有多个物理核的处理器不一样。因此,RSS不能使用超线程处理器。”

这样说来,RSS功能应该是完全不使用打开超线程功能的CPU
发表于 2024-4-2 09:27 来自手机 | 显示全部楼层
hekmbahh 发表于 2024-4-2 09:09
不是的!原话是这样:”RSS是一种网卡驱动技术,能让多核系统中跨多个处理器的网络收包处理能力高效能分 ...

你应该读一些有实际测试的案例,譬如这个
https://fast.dpdk.org/doc/perf/DPDK_23_03_Intel_NIC_performance_report.pdf

IMG_6137.jpeg
 楼主| 发表于 2024-4-2 14:38 | 显示全部楼层
summerq 发表于 2024-4-2 09:27
你应该读一些有实际测试的案例,譬如这个
https://fast.dpdk.org/doc/perf/DPDK_23_03_Intel_NIC_perform ...

这样说来,就是放心大胆的用咯。
发表于 2024-4-2 15:00 来自手机 | 显示全部楼层
hekmbahh 发表于 2024-4-2 14:38
这样说来,就是放心大胆的用咯。

我有些经验。就是网卡再分配cpu到rss queue的时候,每一个端口要成对配置一个物理核心和一个超线程核心,而不能够一个网口全部物理核心,另一个网口全部超线程。我曾经看过dpdk的一些文章,说由于同一个物理核心和超线程共享cache,因此对于IO密集型应用有正向贡献,性能提高大约20%。既然如此,那么为何很多文章都说要关闭超线程呢?因为大部分应用都不是跑在裸金属上,而是虚拟机中。此时cpu内核绑定之后,vm里无法区分是物理还是超线程核心,这样就会造成每一个网口的rss绑定混乱。总之简单的说,裸金属开超线程,vm就关闭
 楼主| 发表于 2024-4-2 17:31 | 显示全部楼层
summerq 发表于 2024-4-2 15:00
我有些经验。就是网卡再分配cpu到rss queue的时候,每一个端口要成对配置一个物理核心和一个超线程核心, ...

懂了,谢谢
发表于 2024-5-6 18:15 | 显示全部楼层
最近了解了一下这部分内容,RSS的核心是MSI-X的中断能够均衡的打到local apic中去响应并且多个cpu core均衡的执行中断handler,而超线程也有物理上的local apic,那MSI-X打中断这部分当然是没问题的(参考:https://juejin.cn/post/7317928251855224847)。
所以在host下是完全没问题的。
vm场景#6楼分析的很好了。
您需要登录后才可以回帖 登录 | 加入我们

本版积分规则

Archiver|手机版|小黑屋|Chiphell ( 沪ICP备12027953号-5 )沪公网备310112100042806 上海市互联网违法与不良信息举报中心

GMT+8, 2025-4-28 08:36 , Processed in 0.009211 second(s), 6 queries , Gzip On, Redis On.

Powered by Discuz! X3.5 Licensed

© 2007-2024 Chiphell.com All rights reserved.

快速回复 返回顶部 返回列表