海量智库第4期|Vastbase G100核心技术介绍之【NUMA架构性能优化技术】
导语
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可以保持在较高水平,数据库保持高性能运行。
海量智库第4期|Vastbase G100核心技术介绍之【NUMA架构性能优化技术】相关推荐
- 海量智库第5期|Vastbase G100核心技术介绍之「SQL by pass技术」
导语 SQL by pass的主要作用是针对某些简单的SQL生成的查询计划.如果查询计划是一个符合特定条件的查询计划,那么可以跳过原有迭代器模型的执行步骤,直接执行查询计划,将原有查询计划的初始化.执 ...
- 海量智库第3期|Vastbase G100核心技术介绍之【CSN事务快照】
导语: 为了保证数据库事务的一致性和隔离性,Vastbase G100数据库引入了快照隔离技术,即通过事务快照实现事务间的隔离性和一致性.事务快照是一个数据集,存储关于单个事务在某个时间点上事务的活跃 ...
- 跨境茶话会8月期丨性能优化的艺术
大师兄说 众所周知,对于现在国内的互联网环境,不管什么样的系统,一旦等用户的访问量上去之后,我们每增加一个功能实际上都是要考虑它的吞吐量和延迟,在加工上都是要做一个缜密的思考的.所以我相信在这方面许多 ...
- 大型系统架构设计-阿里淘宝天猫双十一数据库核心技术介绍
目录 零.双十一是什么? 一.2013 双十一数据库指导思想 1.知己知彼,百战不殆 (1)如何做到知己 (2)如何做到知彼 2.平时多流汗,战时少流血 (1)真实环境压测之缓存穿透 (2)MetaQ ...
- 海量数据处理_国家重点研发计划“面向异构体系结构的高性能分布式数据处理技术与系统”简介...
技术发展现状 近年来,数据规模快速增长,使得Hadoop.Spark等大数据批处理系统在现实中得到了广泛应用.同时,应用对数据处理时效性需求不断加强,促使诸如Flink的大数据流式处理系统应运而生.现 ...
- 海量数据库及分区4——《12年资深DBA教你Oracle开发与优化——性能优化部分》...
目录: Oracle数据完整性和锁机制 索引及优化之表分析 表分析.约束及表间关系 Oracle体系结构1 Oracle体系结构2 海量数据库及分区1 海量数据库及分区2 海量数据库及分区 ...
- 《大数据》2015年第3期“研究”——大数据流式计算:应用特征和技术挑战
大数据流式计算:应用特征和技术挑战 孙大为 (中国地质大学信息工程学院 北京 100083) 摘要:在大数据时代,数据的时效性日益突出,数据的流式特征更加明显,越来越多的应用场景需要部署在流式计算平台 ...
- php百度优化,百度技术沙龙第 24 期 PHP 性能优化实践
本文作者:HelloDeveloper 在 3 月 10 日由 @百度主办.@InfoQ 策划组织和实施的第 24 期百度技术沙龙活动上,来自百度 PHP 高级顾问,PHP 语言开发组成员惠新宸(@l ...
- 百度地图加载海量标注性能优化策略
在上一篇博客中关于Vue表单验证的话题里,我提到了这段时间在做的城市配载功能,这个功能主要着眼于,如何为客户提供一条路线最优.时效最短.装载率最高的路线.事实上,这是目前物流运输行业智能化.专业化的一 ...
最新文章
- 个人博客满血复活,求测试~~~
- PyTorch max()函数取最大值
- JQuery-学习笔记01【基础——JQuery基础】
- 只用一次+ 求三个整数之和
- Spring 2.0.1 与 BEA WebLogic Server 9.2 的集成
- UOJ#191. 【集训队互测2016】Unknown
- html5健康有机蔬菜果汁店网站模板
- Pandas知识点-比较操作
- 120 - 算法 - 枚举 周期性跳转 openjudge:4148生理周期
- PHP密码问题陈婷代码_登录中利用JS前端加密PHP后端解密保证数据非明文传输的安全方法...
- 威纶通HMI常见问题
- python3处理大文件
- 图文讲解 sqlserver 2000 评测版 数据库过期 的解决方法
- WEB应用程序--概述
- C#微信开发---用户关注微信号后公众号发送欢迎关注
- edge打开pdf不显示印章_教你PDF文档无法在edge中打开怎么解决
- 使用turtle绘制疫情加油图案
- 人脸识别常用数据集大全(12/20更新)
- 在不同的paste网站上搜索泄漏的凭据Scavenger
- Sql Server 的服务器类型
热门文章
- unfortunately activity has stopped
- JAVA 连接 Hbase1.2.3查询
- 经典的“外行管内行”案例
- .net通过S7.net读写西门子PLC中,字符串,bool,整数,小数及byte型
- 直观理解拉格朗日乘子法和Karush-Kuhn-Tucker(KKT)条件
- 信息学奥赛的“一二三四”
- C语言之素数判断及输出(1~100所有的素数)
- 使用无人机进行视频直播
- SwitchHosts:切换hosts的工具
- Android Studio Chipmunk 现已发布