当前位置: 首页 > article >正文

Intel vGPU技术GVT-g与kvmgt实现分析和实践

Intel GVT-g KVMGTIntel GVT-g是Intel图形虚拟化技术(IntelGraphicsVirtualizationTechnology-graphics)的缩写它是一种硬件辅助的GPU虚拟化解决方案允许将一个Intel集成显卡(Integrated Graphics Processor, IGP)虚拟化为多个虚拟GPU(vGPU),供多个虚拟机同时使用。而KVMGT则是 GVT-g技术在KVM虚拟化平台上的具体实现它是GVT-g框架与KVM/VFIO/MDEV子系统的集成模块通俗点儿说就是这个模块共同作用生的孩子使KVM虚拟机能够使用GVT-g创建的虚拟GPU。本文将在支持GVT‑G集成显卡技术的Intel CPU上搭建演示环境以实现虚拟机和物理机共享核显的目标。Linux GVT-gKVMGT架构图软件分层架构Intel vGPU测试环境搭建英特爾持續推動Intel®圖形處理器上的圖形虛擬化技術。最新的技術是單根 IO 虛擬化SR-IOV取代了先前的 Intel® 圖形虛擬化技術 –gGVT-g。环境信息测试环境使用的Graphics 620是支持GVT-g的,Intel i7-8665U属于第INTEL 第八代处理器家族根据INTEL官方资料第八代处理器是明确支持GVT-G技术的不支持SR-IOV。https://www.intel.com.tw/content/www/tw/zh/support/articles/000093216/graphics/processor-graphics.html另外需要确保LINUX OS打开了这些配置项确保GVT-G的驱动存在CONFIG_DRM_I915_GVT_KVMGTy CONFIG_DRM_I915_GVTyDisable IOMMU情况下MPT(Mediated Pass-Through)核显共享MPT和设备PT模式还是有显著区别的设备直通PT是全硬件访问路径而MPT模式需要通过软件曾MDEV作中介所以本质上vGPU对存储的访问可以被MDEV钩住可以在不启用IOMMU的情况下实现设备MPT。下面关闭IOMMU尝试虚拟机和物理机共享核显。关闭INTEL IOMMU并启用GVT-Gi915.enable_gvt1GRUB_CMDLINE_LINUX_DEFAULTquiet splash intel_iommuoff i915.enable_gvt1安装kvmgt.kosriovpc:~$ sudo modprobe kvmgt sriovpc:~$ lsmod|grep kvmgt kvmgt 421888 0 mdev 24576 1 kvmgt vfio 73728 2 kvmgt,vfio_iommu_type1 kvm 1445888 2 kvmgt,kvm_intel i915 4837376 24 kvmgt之后查看mdev_supported_types目录已经存在创建vGPUecho 0212b594-20d9-11f1-98e0-6bbe8ef005ee /sys/devices/pci0000:00/0000:00:02.0/mdev_supported_types/i915-GVTg_V5_8/create此时MDEV VGPU设备会出现MPT透传到虚拟机sudo /home/czl/Workspace/svm-qemu/install/new/qemu-system-x86_64 -enable-kvm -m 4096 -drive file./test-vm-2.qcow2,formatqcow2 -device vfio-pci,sysfsdev/sys/bus/mdev/devices/0212b594-20d9-11f1-98e0-6bbe8ef005ee可以看到物理机和虚拟机同时在使用核显vGPU配置空间模拟数据来源于真实的核显所以在虚拟机中的型号和物理机完全一样:因为没有IOMMU所以MDEV创建 VGPU时只生成了一个DUMMY的 IOMMU GROUP和MDEV设备绑定并且由于没有ENABLE IOMMU不需要进行IOVAGPA到HPA的映射所以启动时不会调用iommu_map路径原因是在这里将其切断的,因为VM对应的vfio_iommu的的domain_list为空说明此VM没有任何IOMMU DOMAIN为其服务所以只是将上层发送过来的DMAP MAP请求记录一下之后退出。这个记录在后面VGPU工作过程中会在VGPU访问存储时陷出到HYPERVISOR执行GPA到HPA的翻译时用VGPU访问存储时陷出到HYPERVISOR执行GPA到HPA的翻译的调用堆栈ENABLE IOMMU即便ENABLE IOMMU默认MDEV设备由于没有关联一个所在总线BUS能够访问IOMMU比如PCIE BUS的设备所以仍然没有IOMMU DOMAIN关联MDEV设备仍然不需要IOMMU的服务除非调用mdev_set_iommu_device/mdev_get_iommu_device设置这个支持IOMMU的关联设备否则MDEV不需要 translation IOMMU DOMAIN.总结Enable IOMMU场景下就不在详细展开了过程完全是一样的本文的目的除了记录环境搭建的过程之外重点想引出一个结论硬件直通(PT, Pass-Through)必须依赖IOMMU但是MPT通过Mediated mdev模块实现的 Pass-Through)技术对IOMMU没有依赖当然开启IOMMU更好别的不说IOMMU隔离保证VM之间更安全不是么。参考文档https://www.intel.com.tw/content/www/tw/zh/support/articles/000093216/graphics/processor-graphics.htmlhttps://blog.csdn.net/weixin_29201859/article/details/158442355https://baijiahao.baidu.com/s?id1849564234142398996wfrspiderforpc结束

相关文章:

Intel vGPU技术GVT-g与kvmgt实现分析和实践

Intel GVT-g & KVMGT Intel GVT-g是Intel图形虚拟化技术(Intel Graphics Virtualization Technology-graphics)的缩写,它是一种硬件辅助的GPU虚拟化解决方案,允许将一个Intel集成显卡(Integrated Graphics Processor, IGP)虚拟化为多个虚拟GPU(vGPU…...

HeBA Heterogeneous Bottleneck Adapters for Robust Vision-Language Models

HeBA: Heterogeneous Bottleneck Adapters for Robust Vision-Language Models Authors: Md Jahidul Islam Deep-Dive Summary: HeBA: 用于鲁棒视觉语言模型的异构瓶颈适配器 (Heterogeneous Bottleneck Adapters) 摘要 将 CLIP 等大规模视觉语言模型(VLMs&…...

协程学习笔记1

一、CPU密集型任务Test fun test Cpu Task()runBlocking{val startTime System.currentTimeMillis()val joblaunch(Dispatchers.Default){var nextTimestartTimevar i0while (i<5){if(System.currentTimeMillis()>nextTime){println("job:Im sleeping ${i}")ne…...

团队协作效率遭遇瓶颈?这 1 个开放式网盘生态,救活了 10 万+ 企业的文档流(含竞品实测)

在 2026 年的企业级 SaaS 市场&#xff0c;很多团队管理者陷入了一个怪圈&#xff1a;买了一堆功能大而全的“全家桶”网盘&#xff0c;结果员工依然习惯用微信传文件&#xff0c;文档躺在云端变成死数据。 为什么&#xff1f;因为真正的“生态”不是强迫用户在网盘里用简陋的…...

结构建模与数字孪生破解偏远桥梁监测难题

STAAD与iTwin提供结构建模与数字孪生解决方案&#xff0c;助力实现智能、经济高效的桥梁维护策略优化桥梁检测与维护I-15州际公路纵贯美国南加州与加拿大阿尔伯塔省&#xff0c;全长1400英里&#xff0c;仅有29英里穿过亚利桑那州最西端的莫哈维县&#xff0c;其中有15英里的路…...

Android jetpack LiveData (二) 原理篇

Android jetpack LiveData&#xff08;二&#xff09;原理篇引言源码前置分析核心类源码第一步&#xff0c;定义LiveData对象第二步&#xff0c;观察LiveData数据第三步&#xff1a; 设置LiveData数据到这里我们先总结下黏性数据的步骤&#xff1a;小结引言 上一篇我们学习了L…...

【PCIe 验证每日学习・Day13】DLLP 与 ACK/NAK 重传机制基础验证

大家好&#xff0c;继续我们「PCIe 验证每日学习・30 分钟打卡」系列。今天进入数据链路层核心&#xff1a;DLLP 帧结构、ACK/NAK 应答机制与重传验证。内容严格遵循 PCIe 规范、100% 无错误&#xff0c;讲解通俗、结构清晰、代码可直接复用&#xff0c;风格与前几日完全统一&a…...

Linux 的 cat 命令

Linux 的 cat 命令详解 命令概述 cat&#xff08;concatenate 的缩写&#xff09;是 Linux 系统中最基础且常用的命令之一&#xff0c;主要用于查看文件内容、合并文件以及创建简单文件。该命令属于 GNU coreutils 包的一部分&#xff0c;几乎在所有 Linux 发行版中都默认安装…...

burpsuite详细安装教程及功能讲解

好久不见&#xff0c;各位道友 目录 好久不见&#xff0c;各位道友 Brp Suite 介绍 正常情况下&#xff08;不使用Burp Suite&#xff09;&#xff0c;客户端与服务器的交互过程如下&#xff1a; 当加入Burp Suite时&#xff0c;客户端与服务器的交互过程如下&#xff1a;…...

春日桌搭新首选!ROG魔霸9 Mini:3L 迷你机身,塞下锐龙 9+RTX5070

三月春意渐浓&#xff0c;很多人都开始给自己的桌面焕新升级&#xff0c;而一款体积小巧、性能够强的主机&#xff0c;绝对是桌搭升级的核心。最近 ROG 推出的魔霸 9 Mini 电竞迷你主机&#xff0c;就精准命中了玩家与办公人群的核心需求 —— 仅 3L 的超小体积&#xff0c;却塞…...

Qt导航栏组件A03:VS Code 风格的图标侧栏

目录 一、引言 二、最终效果预览 三、核心实现原理 3.1 布局结构设计 3.2 核心技术点 四、代码实现详解 4.1 项目结构 4.2 导航组件的核心代码 4.3 样式表设计 五、总结 5.1 核心要点回顾 5.2 学习建议 源码下载 系列编号:A-03 导航风格:只有图标的侧栏 适用场景:IDE、编辑器…...

计算机毕业设计源码:Python贝壳租房数据可视化与智能推荐系统 Scrapy爬虫 可视化 推荐系统 大数据 数据分析 大模型 房源 房子(建议收藏)✅

博主介绍&#xff1a;✌全网粉丝10W,前互联网大厂软件研发、集结硕博英豪成立工作室。专注于计算机相关专业项目实战6年之久&#xff0c;选择我们就是选择放心、选择安心毕业✌ > &#x1f345;想要获取完整文章或者源码&#xff0c;或者代做&#xff0c;拉到文章底部即可与…...

深度探索Fluent中的电弧、激光与熔滴一体化模拟

Fluent电弧&#xff0c;激光&#xff0c;熔滴一体模拟。 UDF包括高斯旋转体热源、双椭球热源&#xff08;未使用&#xff09;、VOF梯度计算、反冲压力、磁场力、表面张力&#xff0c;以及熔滴过渡所需的熔滴速度场、熔滴温度场和熔滴VOF。初识激光熔化沉积&#xff1a;一场材料…...

电-气-热综合能源系统节点能价计算方法研究

基本文献复现-计及碳排放成本的电_气_热综合能源系统节点能价计算方法研究 真正做到了电热气潮流耦合&#xff0c;很适合综合能源系统建模的初学者&#xff0c;配合复现论文。 运行程序HeatGasPowerCombination即可。 每个系统模型都有专门的文档讲解&#xff0c;程序注释齐全。…...

香草纪元开服教程:使用云鸢联机平台快速搭建“食旅纪行”服务器(高配推荐版)

你是否喜欢原版风格&#xff0c;热爱收集&#xff0c;渴望在minecraft中休闲养老&#xff1f;你是否喜欢眼前一亮的各种新奇模组&#xff0c;热爱探索&#xff0c;打造神器征战各种boss&#xff1f;你是否在找一个农夫乐事大型养老包&#xff0c;想在mc里做个美食家&#xff1f…...

增程式电动汽车自适应ECMS能量管理策略:基于工况的Matlab实现方案

增程式电动汽车基于工况的自适应ECMS能量管理策略&#xff08;matlab的m程序&#xff09; 最近试驾某品牌增程式电动车时&#xff0c;发现一个有趣现象&#xff1a;堵车时增程器几乎不启动&#xff0c;而上了高速却像开了狂暴模式。这背后的能量管理策略有点东西&#xff0c;今…...

Comsol锂枝晶模型:锂枝晶生长与锂离子浓度、电势分布的模拟

comsol锂枝晶模型 Comsol 锂枝晶生长模型&#xff0c;锂枝晶生长&#xff0c;锂离子浓度分布&#xff0c;电势分布 此链接是随机形核生长锂电池实验室里最让人头疼的玩意就是锂枝晶。这货像金属胡须一样野蛮生长&#xff0c;动不动就刺穿隔膜搞短路。去年用COMSOL建锂枝晶模型时…...

基于改进蛇优化算法(GOSO/ISO)优化极限梯度提升树的时间序列预测

基于改进蛇优化算法(GOSO/ISO)优化极限梯度提升树的时间序列预测(GOSO/ISO-XGBoost) 蛇优化算法SO是2022年提出的新算法&#xff0c;性能优异&#xff0c;目前应用较少&#xff0c;改进蛇优化算法GOSO/ISO应用更少&#xff0c;适合PAPER 改进点1为在初始化种群引入混沌映射&…...

大厂ZigBee射频芯片CC2430反向电路探索

大厂ZigBee射频芯片CC2430反向电路 学习方法是&#xff1a;可以直接查看里面的电路结构&#xff0c;还有管子的宽长比参数等。 拿到原理图之后需要自己换成自己所持有的PDK就可以跑仿真了&#xff0c;国内大部分公司都是这样设计芯片产品的&#xff0c;参考价值非常大&#xff…...

Matlab实现频率切片小波变换(FSWT)绘制时频图

Matlab进行频率切片小波变换(FSWT)源代码&#xff0c;将一维信号生成时频图。 输入信号可以是任何一维信号&#xff0c;心电信号、脑电信号、地震波形、电流电压数据等。 相比连续小波变换(CWT)&#xff0c;频率切片小波变换(Frequency Slice Wavelet Transform,FSWT)是一种更具…...

Prompt工程深度揭秘

&#x1f3af; Prompt工程深度揭秘&#xff1a;AI的"说明书"是如何进化的 从简单指令到复杂工程&#xff1a;理解Prompt如何让AI变得"听话" 你是不是好奇&#xff0c;这些这么多的新东西&#xff0c;他们在使用的时候不都是一堆提示词嘛&#xff0c;那分裂…...

飞轮储能系统建模详解与MATLAB仿真实践(含永磁同步电机驱动模型)含多种模型与建模仿真指南

飞轮储能系统的建模与MATLAB仿真 飞轮储能系统的建模与MATLAB仿真&#xff08;永磁同步电机作为飞轮驱动电机&#xff09;含详细建模文件 内含两个飞轮储能模型&#xff1a;模型一的机侧网侧分开运行&#xff0c;附54页建模仿真说明&#xff1b;模型二的机侧网侧同步运行——内…...

基于全阶磁链观测器的异步电机矢量控制

基于全阶磁链观测器的异步电机矢量控制全阶磁链观测器的主要思想是将异步电机模型作为参考&#xff0c;把状态估计的方程作为可调节部分。 这两部分具有相同物理意义的输出量&#xff0c;利用两个部分的输出量误差再经过反馈校正通道对状态观测值进行修正&#xff0c;使观测值快…...

高级特性之dubbo超时机制及集群容错机制

当服务消费者要进行消费的时候&#xff0c;这个时候它可能就开启一个线程去调用服务提供者的具体实现&#xff0c;等他返回相应的结果&#xff0c;这个时候由于网络的问题或者服务端并不可靠&#xff0c;它会在这阻塞很长的一段时间。如果这个服务一直有人在调用那么就会开一堆…...

西门子S7-1200 PLC工业污水处理系统:基于博途V13sp1的WinCC画面组态与仿真报告

西门子工业污水处理系统&#xff0c;plc污水处理系统&#xff0c;基于plc的污水处理系统&#xff0c;系统采用s7-1200PLC设计&#xff0c;博途wincc画面组态。 包括plc触摸屏组态画面及仿真&#xff0c;报告等 博途V13sp1编程&#xff0c;V13sp1以上版本可以打开工业污水处理系…...

事件触发控制代码及其对应参考文献

事件触发控制代码对应参考文献 1.2023IEEE TRANS 顶刊基于事件触发的深度强化学习自动驾驶决策&#xff08;CCF-A&#xff09; 2.多智能体分布式系统的事件触发控制 3.基于观测器的非理想线性多智能体事件触发的跟踪一致性 4.非线性不确定扰动多智能体系统固定时间事件触发一致…...

实测对比后!千笔AI,开源免费降重首选

在AI技术迅速发展的今天&#xff0c;越来越多的学生和研究人员开始依赖AI工具辅助论文写作。然而&#xff0c;随着知网、维普、万方等查重系统不断升级算法&#xff0c;以及Turnitin对AIGC&#xff08;人工智能生成内容&#xff09;的识别愈发严格&#xff0c;AI率超标问题已成…...

直驱风机Simulink仿真模型与永磁直驱式风力发电系统整体仿真:380V与690V双电压仿真...

直驱风机simulink仿真模型&#xff0c;永磁直驱式风力发电系统 matlab/simulink整体仿真&#xff0c;有380V和690V两个仿真&#xff0c;波形如图&#xff0c;现货有2018 和 2021 两个版本&#xff0c;可导出2015b-2022版本&#xff0c;有模型说明和文献直驱风机在风电场的应用这…...

Canoe-Autosar网络管理自动化测试脚本及Capl源码:全套、可直接使用修改项目配置

Canoe-Autosar网络管理自动化测试脚本 Capl源码&#xff0c;全套&#xff0c;修改项目配置可以直接使用。 1.启动程序 2.加载配置文件 3.选择帧类型(标准帧或扩展帧) 4.修改配置文件&#xff0c;自动弹出配置文件窗口 5.选择测试用例 6.点击运行 7.测试完成打印报告并记录对应…...

基于LADRC自抗扰控制的VSG三相逆变器预同步并网策略

基于LADRC自抗扰控制的VSG三相逆变器预同步并网控制策略 基于LADRC自抗扰控制的VSG三相逆变器预同步并网控制策略是一种用于实现逆变器在微电网中的协调运行的先进控制策略。 逆变器控制方式采用虚拟同步发电机控制&#xff08;VSG&#xff09;&#xff0c;通过引入虚拟同步发电…...