AMD服务器(EYPC CPU)如何调优以获得最佳性能

查看系统配置 在进行CPU调优之前,我们必须检查NUMA节点配置,并查看我们的服务器是否实际运行在AMD CPU:对于性能调整过程,我们将使用与网卡离最近的CPU内核2,6,10,14,18,22,26,30。 性能调优如下: 为了最大化NIC的带宽,中断事件处理必须仅由本地CPU处理。 其内存也使用本地的内存,这样可以减少QPI开销。

应用介绍

查看系统配置

在进行CPU调优之前,我们必须检查NUMA节点配置,并查看我们的服务器是否实际运行在AMD CPU:




    # lscpu

    Architecture: x86_64

    CPU op-mode(s): 32-bit, 64-bit

    Byte Order: Little Endian

    ...

    Thread(s) per core: 1

    Core(s) per socket: 32

    Socket(s): 1

    NUMA node(s): 4

    Vendor ID: AuthenticAMD

    ...

    Model name: AMD EPYC 7551 32-Core Processor

    ...

    CPU MHz: 1996.203

    ...

    NUMA node0 CPU(s): 0,4,8,12,16,20,24,28

    NUMA node1 CPU(s): 1,5,9,13,17,21,25,29

    NUMA node2 CPU(s): 2,6,10,14,18,22,26,30

    NUMA node3 CPU(s): 3,7,11,15,19,23,27,31

    ...

在上面的输出中,我们可以观察到测试的服务器正在运行带有4个八核NUMA节点的AMD CPU模型“ EPYC 7551 32核处理器”。
由于禁用了超线程,因此总共只有32个CPU(物理和逻辑)可用。
在此示例中,我们的Mellanox NIC的调优在NUMA节点2上。 可以运行如下指令确定网卡在那个numa:





    # cat /sys/class/net/eth20/device/numa_node

    2
对于性能调整过程,我们将使用与网卡离最近的CPU内核2,6,10,14,18,22,26,30。
性能调优如下:
为了最大化NIC的带宽,中断事件处理必须仅由本地CPU处理。 其内存也使用本地的内存,这样可以减少QPI开销。
要将NIC的中断事件绑定到本地核心,请运行:

     # service irqbalance stop
     #set_irq_affinity_cpulist.sh 2,6,10,14,18,22,26,30 eth20

或者,可以使用mlnx_tune工具(将在所有Mellanox NIC上自动运行)将NIC的中断事件绑定到本地内核,运行:

     #mlnx_tune -p HIGH_THROUGHPUT
这些脚本和工具,请见附件下载。
 调优结果
以下是针对以下设置进行上述调整后的预期OOB结果:  
  • iperf
  • 8 threads
  • TCP window 512KB
  • 8KB message size

服务端:

iperf -s

 

客户端:

iperf -c 120.7.84.141 -P 8 -t 10 -w 512k

 

测试结果:

MTUTuningBandwith
1500BOOB~50Gb/s
1500BTuned~90Gb/s
9000BOOB~85Gb/s
9000BTuned~97.5Gb/s


文件列表(部分)

名称 大小 修改日期
mlnx_affinity8.23 KB2018-08-48
mlnx_tune123.14 KB2018-08-52
set_irq_affinity.sh2.93 KB2018-08-12
set_irq_affinity_bynode.sh2.94 KB2018-08-10
set_irq_affinity_cpulist.sh2.44 KB2018-08-10
show_irq_affinity.sh1.31 KB2018-08-12
show_irq_affinity_hints.sh1.32 KB2018-08-12

立即下载

相关下载

[AMD服务器(EYPC CPU)如何调优以获得最佳性能] 查看系统配置 在进行CPU调优之前,我们必须检查NUMA节点配置,并查看我们的服务器是否实际运行在AMD CPU:对于性能调整过程,我们将使用与网卡离最近的CPU内核2,6,10,14,18,22,26,30。 性能调优如下: 为了最大化NIC的带宽,中断事件处理必须仅由本地CPU处理。 其内存也使用本地的内存,这样可以减少QPI开销。
[AMD EPYC CPU 调优手册对于InfiniBand 网络] 1.对于具有EPYC系列AMD 处理器的InfiniBand HDR(或200Gb / s)gen4 PCI上的进行了基准测试,由于内存通道数量的原因,建议使用NPS = 1或NPS = 2 2.对于在EPYC使用的是InfiniBand HDR100或EDR进行基准测试,发现NPS值任何配置都可以达到最大性能。
[Rivermax Linux性能调优指南] 本编文章版权归阿波罗代码网所有,任何转载请注明出处! 这篇文章提供了使用Rivermax for Linux提高性能的指南。 它适用于Rivermax用户,应与Rivermax用户手册和Rivermax发行说明一起使用。 您可以通过调整服务器来最大化吞吐量,并通过一个Mellanox NIC实现更多的吞吐量。 这些建议大多数都经过我们的性能团队测试,但我们鼓励您测试设置参数对性能的影响。
[网卡性能调优] 调整网络接口卡(NIC)以获得最佳吞吐量和延迟是一个复杂的过程,需要考虑许多因素。 这些因素包括网络接口的功能,驱动程序功能和选项,安装了Red Hat Enterprise Linux的系统硬件,CPU到内存的体系结构,
[Dell PowerEdge R730 BIOS性能调优] Dell PowerEdge R730 BIOS性能调优

评论列表 共有 0 条评论

暂无评论

微信捐赠

微信扫一扫体验

立即
上传
发表
评论
返回
顶部