CVL网卡的ADQ特性在SPDK的NVMF测试中的应用实例 - 下篇

系统配置(包括target端和host端)

提示:这里很多配置在系统重启之后需要重新配置,你可以参照你的操作系统进行持久配置或者启动之后运行脚本。

系统优化

注意:这里的系统优化也会依赖于硬件和软件环境和不同的负载。这里的优化在重载系统和快速IO系统中比较明显,但是也只是在有限的硬件和软件系统中测试过。在我们的环境(Fedora29)里的配置步骤如下:

1.禁用防火墙

#service firewalld stop; systemctl mask firewalld

2.禁用SELinux

#vim /etc/selinux/config

修改SELINUX=enforcing为SELINUX=disabled

3.启用latency-performance低延迟的性能模式

#yum install -y tuned

#tuned-adm profile latency-performance

使用以下命令查看配置的结果

#cat /etc/tuned/active_profile

结果为latency-performance

#cat /etc/tuned/profile_mode

结果为manual

4.设置CPU调整频率模式为performance

#cpupower frequency-set -g performance

5.禁用irqbalance服务

#systemctl stop irqbalance

6.配置操作系统参数来处理增加的数据包速率

a.增加socket侦听队列的连接请求的最大数目,该配置再重启后会失效,参数值重新恢复成默认的128

#sysctl -w net.core.somaxconn=4096

b.当特定接口接收数据包的速度快于内核处理数据包的速度时,增加允许排队的最大数据包数目

#sysctl -w net.core.netdev_max_backlog=8192

c.指定所能接受SYN同步包的最大客户端数量

#sysctl -w net.ipv4.tcp_max_syn_backlog=16384

d.增加发送和接受套接字缓冲区大小的最大值

#sysctl -w net.core.rmem_max=16777216

#sysctl -w net.core.wmem_max=16777216

e.确定TCP栈应该如何反映内存使用,每个值的单位都是内存页(通常是4KB)。第一个值是内存使用的下限;第二个值是内存压力模式开始对缓冲区使用应用压力的上限;第三个值是内存使用的上限。在这个层次上可以将报文丢弃,从而减少对内存的使用。示例中第一个值为786432*4/1024/1024=3G,第二个值为1019584*4/1024/1024=3.9G,第三个值为16777216*4/1024/1024=64G

#sysctl -w net.ipv4.tcp_mem=”764688 1019584 16777216”

f.自动调优定义socket使用的内存,第一个值是为socket接收/发送缓冲区分配的最少字节数;第二个值是默认值(该值会被rmem_default/wmem_default覆盖),缓冲区在系统负载不重的情况下可以增长到这个值;第三个值是接收/发送缓冲区空间的最大字节数(该值会被rmem_max/wmem_max覆盖)

#sysctl -w net.ipv4.tcp_rmem=”8192 87380 16777216”

#sysctl -w net.ipv4.tcp_wmem=”8192 65536 16777216”

g.允许分配所有的物理内存

#sysctl -w vm.overcommit_memory=1

h.禁用透明大页

#echo never > /sys/kernel/mm/transparent_hugepage/enabled

以上所有系统优化的步骤总结在以下脚本里(除了禁用SELinux的命令)

service firewalld stop

systemctl mask firewalld

tuned-adm profile latency-performance

cat /etc/tuned/active_profile

cat /etc/tuned/profile_mode

cpupower frequency-set -g performance

systemctl stop irqbalance

sysctl -w net.core.somaxconn=4096

sysctl -w net.core.netdev_max_backlog=8192

sysctl -w net.ipv4.tcp_max_syn_backlog=16384

sysctl -w net.core.rmem_max=16777216

sysctl -w net.core.wmem_max=16777216

sysctl -w net.ipv4.tcp_mem="764688 1019584 16777216"

sysctl -w net.ipv4.tcp_rmem="8192 87380 16777216"

sysctl -w net.ipv4.tcp_wmem="8192 65536 16777216"

sysctl -w vm.overcommit_memory=1

echo never > /sys/kernel/mm/transparent_hugepage/enabled

网卡优化

1.卸载并重新加载ice驱动以清除之前所有TC配置

<
  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值