作者:牛涛,华为计算专家
基于灵衢互联构建的鲲鹏超节点,操作系统提供服务器之间内存热插拔能力,并通过灵衢系统高阶服务提供内存借用和内存共享接口,实现超节点内内存削峰填谷、低时延共享等能力,助力虚拟化、数据库、大数据等业务创新。
特性介绍
当前不同服务器内存使用随业务负载变化,存在一些服务器内存不足,而另外一些服务器内存空闲,造成内存利用率不足。不同服务器部署同一种业务时需共享数据,但服务器间不支持同步内存语义访问,只能以通信的方式实现数据交换,难以做到百纳秒级低时延访问。
在鲲鹏超节点上,操作系统通过内存池化技术,实现内存借用和内存共享以解决上述痛点问题。
关键特性:
支持远端内存热拔出。
支持插入远端内存,并上线到NUMA。用户可透明使用远端内存,例如使用glibc的malloc/free接口申请远端内存,使用numactl -m绑定应用使用远端内存。
支持插入远端内存,并上线到字符设备。用户可通过open+mmap方式映射远端内存到应用进程内使用。
典型使用模式:
内存临时借用,削峰填谷
一借多,N倍扩展,超大内存
内存共享:同一内存多节点共享,实现基于内存语义的数据共享
关键特性:
支持创建共享内存区。
支持将共享内存映射给多个使用者。
典型使用模式:
LD/ST直通,基于内存语义的数据快速交换
一写多读,全局缓存池
优势分析
在鲲鹏超节点上,基于内存借用特性,可以实现业务场景性能优化。
数据库场景,利用内存池化技术减少算子落盘,OLAP性能提升20%;虚拟化场景,通过内存借用,将多个节点的碎片化内存整合利用,实现虚机超分,提升内存利用率。
证券极速交易场景,利用内存共享实现低时延通信,替代传统网卡、交换机,通信时延从微秒级降低到百纳秒级。数据库场景,利用内存共享实现行列转换列存数据共享,减少节点间数据重分布,提升20%OLAP多机并行查询性能。
上手教程
1、安装
ub-pkg-mem 提供 UB OS 的内存池化功能,安装方法:
2、内核启动参数配置,需要重启生效,在/etc/grub2-efi.cfg文件中menuentry的linux行中配置如下字段:
3、使用,以内存借用为例
结语
未来,操作系统将继续围绕内存池化技术,从池化性能、时延、易用性等维度进一步优化演进,联合业务场景探索更多应用模式,助力鲲鹏超节点应用创新。
◆往期推荐◆
匠心时刻 | 鲲鹏赋能算力卡集群组网,打造MOE大模型高效推理
股票
板块
用户
资讯
评论 (0)