暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

海量智库第4期|Vastbase G100核心技术介绍之【NUMA架构性能优化技术】

海量数据 2021-10-28
1602


NUMA架构优化技术是针对程序在NUMA架构CPU上运行出现资源消耗不均,程序执行效率低等问题进行优化的技术。这种优化技术在现在主流的NUMA架构多核服务器中,可以有效降低访问时延,提升高并发场景下的业务处理能力。


NUMA架构优化前:

延迟高,性能低


NUMA架构,在未优化的情况下,NUMA的内存分配策略对于进程或线程并不公平,这会导致以下问题:


Ø 高并发时进程或线程频繁进行跨Node调度,上下文切换代价高,效率低

Ø 某个Node的资源耗尽,而其他Node的内存资源却很空闲

Ø Node之间调用资源的开销较大,跨Node之间访问资源延迟高

Ø Node之间的总线带宽有限,大量的跨Node访问会造成总线阻塞,严重影响性能


NUMA架构访问时延图


NUMA架构优化后:

延迟低,性能高


为了解决NUMA架构引起的资源消耗不均及跨Node之间访问资源延迟大的问题,面向NUMA架构进行优化,其基本原理是:


Ø 设置执行线程与Node/核心的亲和度,将线程绑定在指定CPU核心运行,避免跨Node调度,降低CPU上下文切换代价

Ø 工作线程均匀分布在所有的Node节点中执行,线程通过Node分配本地内存,避免某个Node节点内存耗尽而其他Node节点内存很空闲的情况,从而充分使用CPU、内存等资源,进而提升数据库处理效率

Ø 工作线程均匀分布在所有的Node节点中执行,并限制每个node的线程个数,可以减少CPU资源争用,降低线程调度次数,减少处理器做线程上下文切换无用功的次数

Ø 线程与核心绑定,并尽可能使用所在Node的内存,从而获得最低的时延、最小的内部互联开销,进而提升数据库处理能力


NUMA架构优化前后对比


硬件配置:

CPU:kunpeng 920  64核 x 2

内存:32GB x 24

硬盘:3.2TB SSD x 4

网卡:25GE光纤网卡


服务器NUMA架构信息


性能测试数据


通过测试结果,可以看到:

Ø 优化前随着客户端并发数增加,线程调度频繁带来的sys占用CPU迅速增加,user可用的CPU资源降低,性能不断下降。

Ø 优化后客户端并发数增加了,线程调度的sys占用CPU比较稳定,数据库系统的user使用CPU可以保持在较高水平,数据库保持高性能运行。


【海量智库】

海量数据最新成立的技术专栏

我们会定期为大家输送技术干货文章

欢迎更多技术人员

与我们探讨交流

稿件请投递:marketing@vastdata.com.cn



关于海量数据

北京海量数据技术股份有限公司,成立于2007年,是国内首家主板上市的数据库技术领航企业。十几年来,秉承“专注做好数据库”的初心,致力于数据库领域的自主研发、销售和服务。其发布的核心产品Vastbase,是一款广泛应用于各行业的纯国产商业数据库,拥有完全自主知识产权,成为国产数据库软件的首选之一。


往期精彩

海量智库第1期|Vastbase G100核心技术介绍之【增量检查点】

海量智库第2期|Vastbase G100核心技术介绍之【AI原生】

海量智库第3期|Vastbase G100核心技术介绍之【CSN事务快照】




文章转载自海量数据,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论