gpt4 book ai didi

c++ - 吞吐量从 4k 下降到 9 条消息,调整了 adm 更改

转载 作者:太空狗 更新时间:2023-10-29 12:34:23 25 4
gpt4 key购买 nike

我有一个网络客户端和服务器应用程序。数据流是这样的:客户端向服务器发送消息,服务器以确认响应。只有在收到确认后,客户端才会秒发下一条消息。

用C++编写的客户端应用程序有3个线程,即网络线程(负责通过套接字发送消息)、主线程(负责发出请求消息)和定时器线程(每秒触发一次)。

服务器应用程序有 2 个线程,主线程和网络线程。

我运行 RHEL 6.3、2.6.32-279 内核。

配置1

  1. tuned-adm 配置文件延迟性能
  2. 所有客户端线程都在同一个 CPU Core id 上
  3. 所有服务器线程都在相同的 CPU 核心 ID 上,但与客户端线程的核心 ID 不同
  4. 客户端和服务器在同一台机器上运行

吞吐量:每秒 4500 条消息

配置2

  1. tuned-adm 配置文件吞吐量性能
  2. 所有客户端线程都在同一个 CPU Core id 上
  3. 所有服务器线程都在相同的 CPU 核心 ID 上,但与客户端线程的核心 ID 不同
  4. 客户端和服务器在同一台机器上运行

吞吐量:每秒 9-15 条消息

配置3

  1. tuned-adm 配置文件吞吐量性能
  2. 不同 CPU Core id 上的所有客户端线程
  3. 所有服务器线程在不同的 CPU Core id 上,以及与客户端线程不同的 Core Id
  4. 客户端和服务器在同一台机器上运行

吞吐量:每秒 1100 条消息

机器的负载可以忽略不计。当配置文件从延迟性能切换到吞吐量性能时,有人可以解释从 4k 到每秒 9 条消息的下降吗?

最佳答案

这是 RHEL tuned-adm 配置文件之间的基本差异表:

延迟性能将 I/O 电梯转移到截止日期,并将 CPU 调控器更改为“性能”设置。

吞吐量性能针对网络和磁盘性能进行了优化。请参阅下面的详细信息...

您的工作负载似乎对延迟敏感。

enter image description here

这是带有注释的throughput-performance 设置。 latency-performance 不会修改任何这些。

# ktune sysctl settings for rhel6 servers, maximizing i/o throughput
#
# Minimal preemption granularity for CPU-bound tasks:
# (default: 1 msec# (1 + ilog(ncpus)), units: nanoseconds)
kernel.sched_min_granularity_ns = 10000000

# SCHED_OTHER wake-up granularity.
# (default: 1 msec# (1 + ilog(ncpus)), units: nanoseconds)
#
# This option delays the preemption effects of decoupled workloads
# and reduces their over-scheduling. Synchronous workloads will still
# have immediate wakeup/sleep latencies.
kernel.sched_wakeup_granularity_ns = 15000000

# If a workload mostly uses anonymous memory and it hits this limit, the entire
# working set is buffered for I/O, and any more write buffering would require
# swapping, so it's time to throttle writes until I/O can catch up. Workloads
# that mostly use file mappings may be able to use even higher values.
#
vm.dirty_ratio = 40

关于c++ - 吞吐量从 4k 下降到 9 条消息,调整了 adm 更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16042870/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com