1. 设计背景与作用
在 AMD ROCm 平台的内核驱动体系中,kgd_mem 结构体是 KFD(Kernel Fusion Driver)与底层 GPU 驱动(AMDGPU)之间用于管理用户空间分配的 GPU 内存对象的桥梁。它抽象了用户进程在 GPU 上分配的显存、GTT、doorbell、userptr 等多种类型的内存资源,并负责这些资源的生命周期、映射、同步和多进程访问控制。
kgd_mem 的设计目标是为 KFD 进程提供统一的内存管理接口,支持多种内存类型、跨进程共享、DMA-BUF 导入导出、MMU 通知、同步机制等复杂功能,满足异构计算和高性能 GPU 任务的需求。
在理解kgd_mem前,我先把核心观点说一下:kgd_mem 是在 amdgpu_bo 基础上,针对 AI 计算场景进行业务扩展的内存对象,其在 KFD(Kernel Fusion Driver)中的功能和地位,正如 amdgpu_bo 在 KGD(Kernel Graphics Driver)中的作用和定位。
但不知道为什么这个结构体用了kgd_打头,感觉整个KFD代码中的其他用
订阅专栏 解锁全文

2050

被折叠的 条评论
为什么被折叠?



