baidu / dperf

dperf is a 100Gbps network load tester.
https://dperf.org
Apache License 2.0
5.05k stars 519 forks source link

1G的巨页与2M巨页 #220

Closed CHRIS123540 closed 1 year ago

CHRIS123540 commented 1 year ago

作者您好,dperf是否是一定要运行在1G的巨页下才能达到100G的数据量级呢

pengjianzhang commented 1 year ago

用什么大页是不影响的,性能应该差别不大 不过,我平时一直用1G大页。

CHRIS123540 commented 1 year ago

好的,因为需要避免重启系统,我直接用的是2048*2048KB的巨页,两台主机之间跑了连接了一下,bitsRx/TX差不多3000000,差点有点多,我想会不会是由于我使用2M巨页的原因。

CHRIS123540 commented 1 year ago

服务器和客户端都是参考client/serve-template-bw.conf这两个文件的

pengjianzhang commented 1 year ago

用了几个CPU,把配置贴一下吧

CHRIS123540 commented 1 year ago

客户端配置 mode client tx_burst 1024 launch_num 3 cpu 0 payload_size 1400 duration 60s cps 500 cc 3 keepalive 1ms port 0000:01:00.1 192.168.201.1 219.216.64.165 74:86:e2:02:dd:76 client 192.168.201.1 254 server 192.168.201.27 1 listen 80 1

服务器配置 mode server tx_burst 1024 cpu 0 duration 10m payload_size 1400 keepalive 1s port 0000:01:00.1 192.168.201.27 219.216.86.254 74:86:e2:02:ae:84 client 192.168.201.1 254 server 192.168.201.2 1 listen 80 1

我用的是dpdk21.11,网卡是bluefield-2,都只用了1个CPU,2M巨页。对dperf的使用也只是有个大概了解,还麻烦您看一下。

pengjianzhang commented 1 year ago

你想测什么指标,带宽吗?

  1. 增加cpu 个数
  2. 增加并发数 cc
  3. tx burst调整为4
CHRIS123540 commented 1 year ago

是的,我想测一下TCP速率。我将按照您的提示重新改一下配置,之后再开一台1G巨页虚拟机对比一下。

pengjianzhang commented 1 year ago

物理网卡 还是 虚拟网卡, 虚拟网卡上用多CPU要开rss 配置

CHRIS123540 commented 1 year ago

现在还在宿主机使用物理网卡,多cpu我不配rss他会报错。

pengjianzhang commented 1 year ago

使用物理网卡时 不需要配rss,多配一些server IP就可以了

pengjianzhang commented 1 year ago

这个问题解决了吗?

CHRIS123540 commented 1 year ago

目前还没有解决。我认为2M巨页可能确实存在影响,我虚拟机上用1G巨页做了个服务器端,效果能提升很多,我的配置参照这篇文章https://metonymical.hatenablog.com/entry/2022/02/11/234927。 我今天再配另外一台虚拟机再测试一下,之后再贴出来一下。

CHRIS123540 commented 1 year ago

1G巨页确实对性能有一定影响,尽量用1G巨页并且多配一点内存效果能有很大的提升。

pengjianzhang commented 1 year ago

thanks

CHRIS123540 commented 1 year ago

我现在仍然是在测试带宽,我想达到接近100G的效果,我现在是用了18G的巨页。配置和效果如下,cpu使用看起来有点太低了,不过我不知道是什么原因造成了这个效果。 20230116215508 20230116215529

20230116215254

pengjianzhang commented 1 year ago

带宽并不消耗cpu,可以多配cpu, 就多用一些网卡队列,对带宽有好处,逐步提高并发,另外client的keepalive间隔可以调更小,如100us。 client的测试时间加长,cps可以增加一点,爬坡更快。

CHRIS123540 commented 1 year ago

这些配置我都尝试过了,最后结果影响不大。我并不清楚影响带宽的瓶颈在哪。

pengjianzhang commented 1 year ago

瓶颈是不是在交换机? 你用iperf能打多少带宽?

一篇测带宽文章,请参考下 https://github.com/baidu/dperf/blob/main/test/performance/bandwidth/README.md

CHRIS123540 commented 1 year ago

服务器环境是直连的,6个进程的iperf我能达到98Gps。单个fstack服务器用socket连接能到15G。是不是还需要申请更多的hugepaper呢。

pengjianzhang commented 1 year ago

带宽并不消耗很多大页,测并发、新建消耗很多大页 你是什么网卡 你把配置贴一下

CHRIS123540 commented 1 year ago

两台机器网卡都是bluefield-2,直连的 ubuntu 20.04 dpdk 20.11

pengjianzhang commented 1 year ago

hi, CHRIS123540

问题已经解决,请抽空写篇文章总结一下如何测试带宽,谢谢

pengjianzhang commented 1 year ago

dperf已经增加了配置文件中地址冲突检查,请用最新代码

CHRIS123540 commented 1 year ago

好的,感谢您的解答。我会在做完测试后写一篇帖子。

CHRIS123540 commented 1 year ago

https://zhuanlan.zhihu.com/p/601137162

pengjianzhang commented 1 year ago

谢谢 你为dperf贡献了一篇优秀的文章 文章已经放在README了