[转帖]鲲鹏性能优化十板斧——鲲鹏处理器NUMA简介与性能调优五步法

鲲鹏,性能,优化,板斧,处理器,numa,简介,步法 · 浏览次数 : 0

小编点评

** numa 架构简介** NUMA 架构是一种非对称多处理器架构,它将多个核结成一个节点,每个节点相当于一个对称多处理机(SMP)。每个核访问内存的时间取决于内存相对于处理器的位置,访问本地内存(本节点内)会更快一些。 ** numa 架构的优势** * 避免 SMP 架构中的总线瓶颈,改善系统的扩展性和性能。 * 每个核都可以独立访问内存,提高系统的性能。 * 减少内存访问延迟。 ** numa 架构的挑战** * 由于多个核使用相同的总线访问内存,随着核数的增长,总线将成为瓶颈。 * 每个核只能访问内存中的一个片,因此需要使用片间通讯机制进行通信。 ** 性能优化步骤** 1. 建立基准数据和优化目标。 2. 使用峰值工作负载或专业的压力测试工具进行压力测试。 3. 确定瓶颈。 4. 对瓶颈进行优化。 5. 确认优化效果。 6. 回滚优化措施。

正文

https://www.cnblogs.com/huaweicloud/p/12166354.html

 

1.1 鲲鹏处理器NUMA简介

随着现代社会信息化、智能化的飞速发展,越来越多的设备接入互联网、物联网、车联网,从而催生了庞大的计算需求。但是功耗墙问题以功耗和冷却两大限制极大的影响了单核算力的发展。为了满足智能世界快速增长的算力需求,多核架构成为最重要的演进方向。

传统的多核方案采用的是SMP(Symmetric Multi-Processing)技术,即对称多处理器结构,如图1-1所示。在对称多处理器架构下,每个处理器的地位都是平等的,对内存的使用权限也相同。任何一个程序或进程、线程都可以分配到任何一个处理器上运行,在操作系统的支持下,可以达到非常好的负载均衡,让整个系统的性能、吞吐量有较大提升。但是,由于多个核使用相同的总线访问内存,随着核数的增长,总线将成为瓶颈,制约系统的扩展性和性能。

图1-1 对称多处理器SMP架构

111.png

 

鲲鹏处理器支持NUMA(Non-uniform memory access, 非统一内存访问)架构,能够很好的解决SMP技术对CPU核数的制约。NUMA架构将多个核结成一个节点(Node),每一个节点相当于是一个对称多处理机(SMP),一块CPU的节点之间通过On-chip Network通讯,不同的CPU之间采用Hydra Interface实现高带宽低时延的片间通讯,如图1-2所示。在NUMA架构下,整个内存空间在物理上是分布式的,所有这些内存的集合就是整个系统的全局内存。每个核访问内存的时间取决于内存相对于处理器的位置,访问本地内存(本节点内)会更快一些。Linux内核从2.5版本开始支持NUMA架构,现在的操作系统也提供了丰富的工具和接口,帮助我们完成就近访问内存的优化和配置。所以,使用鲲鹏处理器所实现的计算机系统,通过适当的性能调优,既能够达成很好的性能,又能够解决SMP架构下的总线瓶颈问题,提供更强的多核扩展能力,以及更好更灵活的计算能力。

图1-2 NUMA架构

2222.png

 

1.2 性能调优五步法

性能优化通常可以通过如表1-1五个步骤完成。

表1-1 性能优化的通用步骤

序号

步骤

说明

1

建立基准

在进行优化或者开始进行监视之前,首先要建立一个基准数据和优化目标。这个基准包括硬件配置、组网、测试模型、系统运行数据(CPU/内存/IO/网络吞吐/响应延时等)。我们需要对系统做全面的评估和监控,才能更好的分析系统性能瓶颈,以及实施优化措施后系统的性能变化。优化目标即是基于当前的软硬件架构所期望系统达成的性能目标。性能调优是一个长期的过程,在优化工作的初期,很容易识别瓶颈并实施有效的优化措施,优化成果往往也很显著,但是越到后期优化的难度就越大,优化措施更难寻找,效果也将越来越弱。因此我们建议有一个合理的平衡点。

2

压力测试与监视瓶颈

使用峰值工作负载或专业的压力测试工具,对系统进行压力测试。使用一些性能监视工具观察系统状态。在压力测试期间,建议详细记录系统和程序的运行状态,精确的历史记录将更有助于分析瓶颈和确认优化措施是否有效。

3

确定瓶颈

压力测试和监视系统的目的是为了确定瓶颈。系统的瓶颈通常会在CPU过于繁忙、IO等待、网络等待等方面出现。需要注意的是,识别瓶颈是分析整个测试系统,包括测试工具、测试工具与被测系统之间的组网、网络带宽等。有很多“性能危机”的项目其实是由于测试工具、测试组网等这些很容易被忽视的环节所导致的,在性能优化时应该首先花一点时间排查这些环节。

4

实施优化

确定了瓶颈之后,接着应该对其进行优化。本文总结了笔者所在团队在项目中所遇到的常见系统瓶颈和优化措施。我们需要注意的是,系统调优的过程是在曲折中前进,并不是所有的优化措施都会起到正面效果,负优化也是经常遇到的。所以我们在准备好优化措施的同时,也应该准备好将优化措施回滚的操作指导。避免因为实施了一些不可逆的优化措施导致重新恢复环境而浪费大量的时间和精力。

5

确认优化效果

实施优化措施后,重新启动压力测试,准备好相关的工具监视系统,确认优化效果。产生负优化效果的措施要及时回滚,调整优化方案。如果有正优化效果,但未达到优化目标,则重复步骤2“压力测试与监视瓶颈”,如达成优化目标,则需要将所有有效的优化措施和参数总结、归档,进入后续生产系统的版本发布准备等工作中。

 

在性能调优经验比较少或者对系统的软硬件并不是非常了解时,可以参考使用五步法的模式逐步展开性能调优的工作。对于有丰富调优经验的工程师,或者对系统的性能瓶颈已经有深入洞察的专家,也可以采用其他方法或过程展开优化工作。

与[转帖]鲲鹏性能优化十板斧——鲲鹏处理器NUMA简介与性能调优五步法相似的内容:

[转帖]鲲鹏性能优化十板斧——鲲鹏处理器NUMA简介与性能调优五步法

https://www.cnblogs.com/huaweicloud/p/12166354.html 1.1 鲲鹏处理器NUMA简介 随着现代社会信息化、智能化的飞速发展,越来越多的设备接入互联网、物联网、车联网,从而催生了庞大的计算需求。但是功耗墙问题以功耗和冷却两大限制极大的影响了单核算力的发

[转帖]Intel、海光、鲲鹏920、飞腾2500 CPU性能对比

https://plantegg.github.io/2021/06/18/%E5%87%A0%E6%AC%BECPU%E6%80%A7%E8%83%BD%E5%AF%B9%E6%AF%94/ Intel 海光 鲲鹏920 飞腾2500 CPU性能对比 为了让程序能快点,特意了解了CPU的各种原理,

[转帖]不同CPU性能大PK

https://plantegg.github.io/2022/01/13/%E4%B8%8D%E5%90%8CCPU%E6%80%A7%E8%83%BD%E5%A4%A7PK/ 前言 比较Hygon7280、Intel、AMD、鲲鹏920、飞腾2500的性能情况 CPU型号Hygon 7280AM

[转帖]不同CPU性能大PK

https://plantegg.github.io/2022/01/13/%E4%B8%8D%E5%90%8CCPU%E6%80%A7%E8%83%BD%E5%A4%A7PK/ 前言 比较Hygon7280、Intel、AMD、鲲鹏920、飞腾2500的性能情况 CPU型号Hygon 7280AM

[转帖]华为openGauss 鲲鹏NUMA架构优化

https://www.modb.pro/db/31086 图 1 鲲鹏NUMA架构优化图 openGauss根据鲲鹏处理器的多核NUMA架构特点,进行针对性一系列NUMA架构相关优化,一方面尽量减少跨核内存访问的时延问题,另一方面重分发挥鲲鹏多核算力优势,所提供的关键技术包括重做日志批插,热点数据

[转帖]华为欧拉操作系统装机量达 245 万套,跨越生态发展临界点

https://www.ithome.com/0/652/328.htm 好像加上OSV的很多套数了 IT之家 11 月 9 日消息,华为 2022 全联接大会将于 7-9 日举行,涉及华为鸿蒙、华为鲲鹏、昇腾 AI 和欧拉等。 在今日的华为全连接大会上,华为常务董事、ICT 基础设施业务管理委员会

[转帖]

Linux ubuntu20.04 网络配置(图文教程) 因为我是刚装好的最小系统,所以很多东西都没有,在开始配置之前需要做下准备 环境准备 系统:ubuntu20.04网卡:双网卡 网卡一:供连接互联网使用网卡二:供连接内网使用(看情况,如果一张网卡足够,没必要做第二张网卡) 工具: net-to

[转帖]

https://cloud.tencent.com/developer/article/2168105?areaSource=104001.13&traceId=zcVNsKTUApF9rNJSkcCbB 前言 Redis作为高性能的内存数据库,在大数据量的情况下也会遇到性能瓶颈,日常开发中只有时刻

[转帖]ISV 、OSV、 SIG 概念

ISV 、OSV、 SIG 概念 2022-10-14 12:29530原创大杂烩 本文链接:https://www.cndba.cn/dave/article/108699 1. ISV: Independent Software Vendors “独立软件开发商”,特指专门从事软件的开发、生产、

[转帖]Redis 7 参数 修改 说明

2022-06-16 14:491800原创Redis 本文链接:https://www.cndba.cn/dave/article/108066 在之前的博客我们介绍了Redis 7 的安装和配置,如下: Linux 7.8 平台 Redis 7 安装并配置开机自启动 操作手册https://ww