项目名称:
异构通用内存管理框架GMEM(Generalized Memory Management)
代码仓位置:
https://gitee.com/openeuler/kernel/tree/openEuler-23.09/
主要代码文件:
include/linux/gmem.h
include/linux/gmem_as.h
include/linux/vm_object.h
mm/gmem.c
mm/vm_object.c
mm/huge_memory.c
mm/memory.c
mm/mmap.c
drivers/remote_pager/
推荐获奖的方向:
openEuler 年度技术创新项目
推荐人:
gitee id: xiexiuqi
email: xiexiuqi@huawei.com
gitee id: weixizhu94
email: weixi.zhu@huawei.com
gitee id: fangchuang
email: fangchuangchuang@huawei.com
gitee id: SuperSix173
email: liuchao173@huawei.com
推荐理由:
2023年9月,异构通用内存管理框架 GMEM(Generalized Memory Management)在openEuler-23.09上正式发布。GMEM提供了异构内存互联的中心化管理机制,且GMEM API与Linux原生内存管理API保持统一,易用性强,性能与可移植性好。
GMEM的问世是为了解决异构加速器设备HBM(High-Bandwidth Memory)内存不足,数据搬移效率低、易用性和性能难以平衡的问题。开发者使用一套统一申请、释放的API,即可完成异构内存编程,无需处理内存搬移等细节。在加速器HBM(High-Bandwidth Memory)内存不足时,GMEM可将CPU内存作为加速器缓存,透明地超分HBM,无需应用手动SWAP。GMEM提供高效免搬移的内存池化方案,当内存池以共享方式接入后,可解决数据反复搬移的痛点。
在9月19日的OSS大会上,由朱维希(gitee id: weixizhu94)介绍的GMEM特性获得了suse等其他厂商的好评,后续我们也会尽快将GMEM推入linux社区,让更多的开发者认识和了解GMEM。
GMEM使用指导:
https://gitee.com/openeuler/docs/blob/master/docs/zh/docs/GMEM