datop 是一款轻量级实时性内存冷热扫描工具,能够扫描内存冷热以及跨 muma 访存的情况,其运行时开销和存储空间非常小(单 CPU 使用率不到 4% 和 5MB),此外不受硬件平台的限制,在物理机和虚拟机上均能支持。目前已经在龙蜥社区开源了,内核态的部分代码是基于 OpenAnolis 5.10。

开源地址:

https://gitee.com/anolis/data-profile-tools.git 

以下是 Cloud Kernel SIG 核心成员分享《datop 轻量级靶向内存热点扫描工具介绍与入门》部分内容。

DRAM 内存低容量对系统造成性能影响日益突出,云计算场景中为缓解日益增长的内存需求,业界提出异构内存的使用,采用两种或更多类型的内存:小型高性能内存以及大容量的低性能内存。此外,现代高端存储设备如固态驱动器和相位改变内存,为提高内存性能提供了可能, 这些替代方案给人一种错误的幻觉,以为轻易能通过筛选数据的热度来选择存放的设备,确实这些信息在现有的内存管理中,可以通过全盘扫描内存冷热的方式得到, 但是长时间扫描过程中很容易产生极大的开销,造成系统性能损耗。

当前现有内存冷热扫描机制缺陷:

  • 热点跟踪开销成比例增长:监控的内存越多,开销越大

  • 跟踪质量降低:监控内存范围越大,监控质量下降越明显

  • 缺少 numa 访存统计:跨 numa 访存性能影响不可忽略  

针对上述问题,我们开发了跟踪实时内存热点数据的工具 datop(Data Access Top), 采用划分内存区域采样的方式,并自适应区域构建技术来获取极低的开销损耗,在此基础上,还增加了 numa 仿真功能,用于收集任务跨 numa 访存情况,为了评估其准确性和低开销能力,我们选取和测试了多个 benchmark,并与基线进行比较,结果表明:datop 工具在识别冷热内存以及跨 numa 访存方面具备优秀的表现能力。

具体分享提纲有以下 6 部分:

1、datop 的概述

2、背景:云计算大规模复杂场景下内存面临的挑战

3、datop 开发设计和目标

4、热点扫描原理及策略

5、datop 工具测试情况说明

6、datop 演示与试用及后续规划和思考

标准 datop 演示与使用,利用 datop 工具去监控测试用例 numactl -m 0 -C 30 memhog -r1000000000 100m 热点内存分布以及跨 numa 情况。

最后,介绍 datop 工具的规划和思考:

1、热点工具region粒度准确性进一步优化  

2、Tiered Memory (Pro|De)motion优化  

3 、THP Coalesce/Split

4、Proactive-reclaim    

5、Proactive page migration 和 Duplicate backup  

 

关于链接、回放和课件获取 

【Cloud Kernel SIG及邮件列表链接】:可移步龙蜥公众号(OpenAnolis龙蜥)2022年4月29日相同推送查看。

【视频回放】:视频回访已上传至龙蜥官网(官网-动态-视频)。

【PPT课件获取】:关注微信公众号(OpenAnolis),回复“龙蜥课件” 即可获取。

有任何疑问请随时咨询龙蜥助手—小龙(微信:openanolis_assis)。

—— 完 ——

Logo

欢迎加入龙蜥社区,参与开源活动即刻有好礼相送!

更多推荐