datop 是一款轻量级实时性内存冷热扫描工具,能够扫描内存冷热以及跨 muma 访存的情况,其运行时开销和存储空间非常小(单 CPU 使用率不到 4% 和 5MB),此外不受硬件平台的限制,在物理机和虚拟机上均能支持。目前已经在龙蜥社区开源了,内核态的部分代码是基于 OpenAnolis 5.10。
开源地址: https://gitee.com/anolis/data-profile-tools.git
以下是 Cloud Kernel SIG 核心成员分享《datop 轻量级靶向内存热点扫描工具介绍与入门》部分内容(视频回顾和技术PPT获取方式见文末)。
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:
https://openanolis.cn/sig/Cloud-Kernel
邮件列表:cloud-kernel@lists.openanolis.cn
关于回放和课件获取
【视频回放】:视频回访已上传至龙蜥官网(官网-动态-视频)。
【PPT课件获取】:关注微信公众号(OpenAnolis),回复“龙蜥课件” 即可获取。
有任何疑问请随时咨询龙蜥助手—小龙(微信:openanolis_assis)。
—— 完 ——
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。