第十章 GPU 虚拟地址空间管理:10.6 页表更新与 TLB 失效
前两篇处理的是框架视图与 BO 集合,页表本身不在 drm_gpuvm 的范围之内。框架不规定页表格式,不分配页表内存,也不发起 TLB 失效,这些工作全部由驱动完成。驱动的实现差别很大,但都要解决四个问题:
- 页表内存在何时分配;
- 在 GPU 可能并发访问的情况下如何写入;
- 映射变更后如何按正确的顺序失效 TLB;
- 以及页表本身何时可以释放。
本篇以 Xe、panthor、nouveau 等驱动为例说明这四个问题的处理方式。
1. 页表的实现方式
1.1 驱动的选择
GPU 页表的格式由硬件决定。
- 集成在 SoC 中的 GPU 往往复用 CPU 侧 IOMMU 的页表格式,驱动可以直接使用内核的 io-pgtable 库;
- 独立 GPU 的页表格式通常是专有的,驱动需要自行实现页表的遍历与写入。写入方同样有两种:由 CPU 直接写页表内存,或由 GPU 的复制引擎以作业的形式写入。各驱动的选择如表 10.6.1 所示。
| 驱动 | 页表存储 | 写入方 | TLB 失效方式 |
|---|---|---|---|
| Xe | 页表 BO,与 VM 共用 resv | m |
相关新闻
甲方IT的成长之路--Windows 中NTP服务器实验
这几天重启nas服务器发现,时间总是对不齐,找了一个windows系统,作为时间源,在这里简单记录一下,前面原理已经明了,现在来实践,后面还会有linux作为时间源。下面我有一个表格来表示整个实验序号N…
知识点3---软件虚拟化管理软件Docker
/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …
(最新)基于Springboot植物推荐管理系统【附源码+文档】
/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …
最新新闻
从零开发AI英语教育智能体:架构设计、语法诊断与难度调控实战
1. 为什么我决定自己动手做一个英语学习智能体去年年底,一个做教培的朋友找我聊,说他们机构想搞个“AI 英语陪练”,找外包报价从八万到三十万不等,功能清单写得天花乱坠,但核心诉求其实就三条:能陪学生练口…
老网站改造实战:性能体检、问题分级与灰度监控
上一篇把这个网站的问题从头到尾摊开讲了一遍,评论区不少人说自己也遇到过同款。这篇不抱怨了,直接讲动手。一个能打开、能点、但就是让人用得浑身难受的网站,改造它和从零写一个完全是两码事——前者更像给一栋住着人的老楼换水管࿰…
AI辅助设计:Paper与Claude Code提升UI效率
1. 项目概述:当设计工具遇上AI协作 最近在设计圈发现一个有趣现象:越来越多的UI设计师开始用PaperClaude Code组合替代传统的Figma手动操作。上周帮朋友公司做移动端改版时,原本需要2天完成的10套备选方案,用这套方法5分钟就自动生…
反直觉代码设计:提升可维护性的3个实用原则
1. 为什么我们需要反直觉的代码设计原则 在软件工程领域有个著名的"破窗理论":当一栋建筑出现第一扇破窗而不被修复时,很快就会有更多窗户被打破。代码库也是如此 - 当第一个糟糕的设计决策被接受后,整个代码质量就会以惊人的速度恶…
国外问卷调查兼职实战指南与收益分析
1. 国外问卷调查的现状与挑战国外问卷调查作为一种网络兼职方式,近年来在国内逐渐流行。许多平台如橙河网络等都在推广这类项目,宣称参与者可以通过填写问卷获得可观收入。但实际情况如何?根据我过去两年参与和观察的经验,国外问卷…
ASP.NET Core中SSE技术实现与优化实践
1. 项目概述:SSE技术在现代Web应用中的价值 SSE(Server-Sent Events)是一种允许服务器向客户端主动推送数据的HTML5技术规范。与WebSocket相比,SSE采用标准的HTTP协议实现单向通信,特别适合需要服务器向浏览器持续发送…
日新闻
猫狗目标检测数据集:VOC/COCO/YOLO三格式一体化实战包
简介:本资源是一套面向计算机视觉初学者与YOLO目标检测实践者的猫狗图像数据集及配套开发工具包,专为快速上手目标检测模型训练而设计。资源包含1000张真实场景高清猫狗图片,标注质量高,同时提供VOC(XML)、…
HDU2017多校标程复现:算法竞赛工程化真题沙盒
简介:本资源为2017年HDU多校联合训练第一场官方配套资料,面向ACM程序设计竞赛备赛学生、算法爱好者及高校编程集训队成员,旨在提供权威解题参考与完整测试验证环境。压缩包共40个文件,含15份C标程(覆盖全部赛题&#x…
Codex Sandbox 隔离环境拆解:AI Agent 的临时实验室如何运作
/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …
周新闻
全国计算机二级C语言真题PDF高效刷题指南
简介:这份PDF是全国计算机二级C语言考试的试题与答案解析,专为备考二级C语言的考生准备。内容涵盖C语言特点与设计理念、程序基本组成单位、main函数执行流程、函数嵌套调用规则、标识符命名规范、整型实型字符型数据类型、八进制十六进制数合法形式、运…
requests+BeautifulSoup:爬虫抓取h1标题的入门实战指南
简介:一份以实战为导向的Python爬虫入门资源,面向具备基本编程基础、希望快速掌握网络数据抓取的初学者,可解决从零编写简单爬虫的常见困惑。实例以requests库发送HTTP请求、BeautifulSoup解析HTML文档,完整演示从网页中提取 标题…
递推最小二乘参数辨识MATLAB编程:二阶系统与渐消记忆实现
简介:这是一篇面向控制系统、信号处理与机器学习等领域学习者的最小二乘参数辨识程序说明文档。资源共包含一个docx格式文档,压缩包大小七十八KB,内容围绕递推最小二乘算法和渐消记忆最小二乘算法展开:先构造一个极点位于单位圆内…
月新闻
我发现了一个新思路:用 Remotion + Claude Code 像写代码一样自动化生成短视频
/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …
Windows下 Codex 中 Chrome 和 Computer Use 插件不可用问题排查及解决参考方式:TaoToken 统一 Key 配置与验证
/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …
2026 大模型集体涨价:用 Python 做企业 Token 成本测算与选型避坑(附配置)
/* MD / 富文本中的 .toc(含博客园搬家等嵌套结构);.toc-box 在侧栏,不受影响 */#content_views .toc,/* 编辑器常在目录前后插入空 p(:empty 仍占 20px),一并去掉避免顶空隙 */#content_views.markdown_views > p:empty:has(+ .toc),#content_views.markdown_views …