性能优化的思路如下:
根据CPU的能力配置合适的内存条,建议内存满通道配置,发挥内存最大带宽:一颗鲲鹏920处理器的内存通道数为8,两颗鲲鹏920处理器的内存通道数为16;建议选择高频率的内存条,提升内存带宽:鲲鹏920在1DPC配置时,支持的内存最高频率为3200MHz。
优化项 |
优化项简介 |
默认值 |
生效范围 |
鲲鹏916处理器 |
鲲鹏920处理器 |
---|---|---|---|---|---|
优化应用程序的NUMA配置 |
在NUMA架构下,CPU core访问临近的内存时访问延迟更低。将应用程序绑在一个NUMA节点,可减少因访问远端内存带来的性能下降。 |
默认不绑定核 |
立即生效 |
yes |
yes |
修改CPU预取开关 |
内存预取在数据集中场景下可以提前将要访问的数据读到CPU cache中,提升性能;若数据不集中,导致预取命中率低,则浪费内存带宽。 |
on |
重启生效 |
no |
yes |
调整定时器机制 |
nohz机制可减少不必要的时钟中断,减少CPU调度开销。 |
不同 Euler:nohz=off |
重启生效 |
yes |
yes |
调整内存的页大小为64K |
内存的页大小越大,TLB中每行管理的内存越多,TLB命中率就越高,从而减少内存访问次数。 |
不同OS默认配置不同: 4KB或64K |
重新编译内核、更新内核后生效 |
yes |
yes |
优化应用程序的线程并发数 |
适当调整应用的线程并发数,使得充分利用多核能力和资源争抢之间达到平衡。 |
由应用本身决定 |
立即生效或重启生效(由应用决定) |
yes |
yes |