如何测量每个 CPU 的带宽利用率

如何测量每个 CPU 的带宽利用率

我正在尝试测量网络系统的效率,并寻找一种可以限制每次测试的最大带宽或理想情况下限制 CPU 利用率的工具。最后我需要得到一个答案,例如“10% 的 CPU 带宽是 10Gbit/s”。

单独测试带宽的自然选择是 iperf 工具,但是它似乎总是利用 100% 的 CPU,这使得它对此毫无用处。

答案1

我猜你有多个 CPU。然后查看 cpuset 和 cpushares。使用 cpuset,你可以将特定进程固定到特定 CPU。然后使用 cpushares,你可以限制 CPU 利用率。

答案2

  1. 您可以考虑Apache JMeter该工具可以将其连接限制到定义的吞吐量值,您可以通过操作以下属性来设置该值:

    httpclient.socket.http.cps=0
    httpclient.socket.https.cps=0
    

    其中cps代表characters per second

    参考:

  2. 为了限制每个进程的 CPU 使用率,你可以使用任务集CPU限制命令组合,查看使用 nice、cpulimit 和 cgroups 限制进程 CPU 使用率文章了解更多详细信息。

相关内容