
简介
该用户还未填写简介
擅长的技术栈
可提供的服务
暂无可提供的服务
This article compares the memory hierarchies of CPU and GPU. It points out that both face the same basic constraint: limited fast - memory capacity. To address this, both adopt a hierarchical storage

This article compares the memory hierarchies of CPU and GPU. It points out that both face the same basic constraint: limited fast - memory capacity. To address this, both adopt a hierarchical storage

Abstract: The Linux GPU memory management subsystem (TTM/GEM/GPUVM) is a domain-specific reimplementation of classical CPU virtual memory principles, adapted for accelerator hardware.

本文探讨了Linux内核在物理内存不足时的页面回收与交换机制。主要内容包括: 回收策略:内核通过LRU算法维护5条链表区分活跃/非活跃的匿名页和文件页,利用硬件Accessed位追踪页面冷热程度,通过反向映射找到所有页面映射关系。 回收过程:采用优先级控制扫描范围,优先回收文件页(根据swappiness参数调整倾向),处理脏页时文件页回写、匿名页写入swap分区,使用swap entry记录换出

本文深入解析Linux系统的/proc/meminfo文件,帮助理解内核内存管理机制。该文件提供实时内存使用快照,是监控、调优和故障诊断的重要工具。文章详细介绍了其主要用途,包括内存监控、性能优化和容量规划等,并列举了典型应用场景如服务器运维、数据库调优等。通过示例系统分析,展示了如何解读关键指标(如可用内存、文件缓存、Swap使用率等),评估系统健康状态,并识别潜在风险点(如Swap使用率过高)

本文深入解析Linux系统的/proc/meminfo文件,帮助理解内核内存管理机制。该文件提供实时内存使用快照,是监控、调优和故障诊断的重要工具。文章详细介绍了其主要用途,包括内存监控、性能优化和容量规划等,并列举了典型应用场景如服务器运维、数据库调优等。通过示例系统分析,展示了如何解读关键指标(如可用内存、文件缓存、Swap使用率等),评估系统健康状态,并识别潜在风险点(如Swap使用率过高)

本文介绍了Linux内存模型的演进历程,重点分析了SPARSEMEM_VMEMMAP模型的实现原理。文章首先对比了FLATMEM、SPARSEMEM和SPARSEMEM_VMEMMAP三种内存模型的特点,指出SPARSEMEM_VMEMMAP通过虚拟地址映射实现了O(1)时间复杂度的页帧查找。随后详细阐述了vmemmap的核心思想:在虚拟地址空间预留连续区域,仅对实际存在的物理内存建立页表映射,既

本文探讨了GPU计算框架中CPU与GPU内存管理的困境,介绍了Linux内核的HMM(Heterogeneous Memory Management)解决方案。传统显式拷贝模型存在编程复杂、指针失效等问题,而HMM通过共享虚拟地址空间、自动页面迁移等机制实现透明内存管理。文章分析了HMM依赖的Linux内存管理基础设施,包括页表遍历、MMU通知、ZONE_DEVICE等核心组件,并梳理了从经典MM

摘要: 本章对比分析DRM Buddy与内核常见内存分配器(Slab、Bitmap、CMA等)的设计特点与适用场景。DRM Buddy专为GPU显存优化,支持大块连续分配(GB级)、碎片控制和快速合并,相比Bitmap和TTM Range具有更好的性能与灵活性。Slab分配器则针对固定大小的小对象(如任务结构)优化,通过Per-CPU缓存实现O(1)分配。决策树模型指导开发者根据需求(物理连续性、

Linux内核dma_fence框架通过enable_signaling回调实现硬件同步的延迟启用机制。该设计采用"用时才开"的优化策略,仅在软件真正需要等待时(通过dma_fence_wait()或dma_fence_add_callback()触发)才启用硬件中断通知,避免不必要的性能开销。回调需在IRQ禁用状态下实现,通过获取引用计数防止竞争条件,并返回布尔值指示启用状态








