PVE开启核显直通
启用内核 IOMMU 支持
- 修改
/etc/default/grub
配置文件以启用 IOMMU 支持,将GRUB_CMDLINE_LINUX_DEFAULT
修改为:
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt"
iommu=pt
的参数建议添加,以提高未直通设备 PCIe 的性能,PT 模式只在必要的时候开启设备的 IOMMU 转换。
- 保存并更新 GRUB 配置:
update-grub
添加模块(驱动)黑名单
接着添加模块(驱动)黑名单,即让GPU设备在下次系统启动之后不使用这些驱动,把设备腾出来给vfio驱动用;
编辑 /etc/modprobe.d/pve-blacklist.conf
,禁用GPU驱动,以便vfio使用。
blacklist nvidiafb
blacklist i915
blacklist snd_hda_intel
options vfio_iommu_type1 allow_unsafe_interrupts=1
参数 | 释义 |
---|---|
blacklist i915 | 屏蔽显卡驱动 |
blacklist snd_hda_intel | 屏蔽hdmi声音驱动 |
options vfio_iommu_type1 allow_unsafe_interrupts=1 | 允许不安全的设备中断 |
加载内核模块
编辑内核模块加载文件/etc/modules
,追加以下内容
vfio
vfio_iommu_type1
vfio_pci
vfio_virqfd
将设备加入进vfio
- 找出VGA的设备ID,ID就是末尾的中括号内的例如[8086:4692],这个根据你实际情况。
lspci -D -nnk | grep VGA
- 打开
/etc/modprobe.d/vfio.conf
配置文件然后将对应的设备ID增加上去,如果多个设备ID则用,分隔开例如ids=8086:4692,xxxx:xxxx
options vfio-pci ids=8086:4692
更新重启
- 更新内核
update-initramfs -u -k all
- 更新设备id
update-pciids
- 重启
reboot
- pve中虚拟机添加PCI设备
硬件直通的一些基本参数
# 对于 Intel CPU
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt initcall_blacklist=sysfb_init pcie_acs_override=downstream,multifunction pci=nommconf"# 其他写法
GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt i915.enable_gvt=1 video=efifb:off"
# GVT 模式,即共享GPU模式,少数 CPU 支持GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt video=efifb:off"
# 独占模式,只能直通给一个虚拟机,无 PVE 控制台显示,大多CPU都支持GRUB_CMDLINE_LINUX_DEFAULT="quiet intel_iommu=on iommu=pt pcie_acs_override=downstream,multifunction"
# 用于拆分iommu ,以便灵活直通板载设备,并确保每个设备单独分组,防止直通导致物理机卡死。
参数 | 释义 |
---|---|
quiet | 默认参数,表示在启动过程中只显示重要信息 |
intel_iommu=on | 在虚拟化环境中,启用 IOMMU 后,可以将物理设备直通到虚拟机中,以便虚拟机可以直接访问硬件设备 |
amd_iommu=on | 用 amd_iommu 驱动来驱动 IOMMU 硬件单元 |
iommu=pt | 用于管理设备对系统内存的访问。建议添加,以提高未直通设备 PCIe 的性能 |
pci=assign-busses | 部分网卡开启 SR-IOV 需要这个参数,否则可能报错 |
nofb | 该选项允许你不用一个frame缓冲来使用图形安装程序 |
video=vesafb:off | 禁用 vesa 启动显示设备 |
video=efifb:off | 禁用 efi 启动显示设备 |
video=simplefb:off | 5.15 内核开始直通可能需要这个参数 |
initcall_blacklist=sysfb_init | 禁用 sysfb_init 内核初始化函数,以避免其在 GPU 直通时造成干扰。 |
i915.enable_gvt=1 | 启用 Intel GVT-g 以共享 GPU 给多台虚拟机;适用于支持平台,直通显卡时不添加。 |
相关文章:
PVE开启核显直通
启用内核 IOMMU 支持 修改/etc/default/grub配置文件以启用 IOMMU 支持,将GRUB_CMDLINE_LINUX_DEFAULT修改为: GRUB_CMDLINE_LINUX_DEFAULT"quiet intel_iommuon iommupt"iommupt的参数建议添加,以提高未直通设备 PCIe 的性能&am…...

使用 Bert 做文本分类,利用 Trainer 框架实现 二分类,事半功倍
简介 使用 AutoModelForSequenceClassification 导入Bert 模型。 很多教程都会自定义 损失函数,然后手动实现参数更新。 但本文不想手动微调,故使用 transformers 的 Trainer 自动微调。 人生苦短,我用框架,不仅可保证微调出的模…...

Obsidian git sync error / Obsidian git 同步失敗
Issue: commit due to empty commit message Solution 添加commit資訊,確保不留空白 我的設置:auto-backup: {{hostname}}/{{date}}/...

谷歌英文SEO外链如何做?
做英文SEO外链涉及多种策略和技巧,目标是提升目标网站的排名和流量,Google的搜索算法在不断演变,但外链一直是搜索引擎优化中重要的一环。有效的外链建设能够显著提升网站的SEO数据效果。关键在于创建一个多元化且自然的外链结构。不能仅仅依…...
vue使用Export2Excel导出表格
安装插件 npm install xlsx xlsx-style file-saver npm install node-polyfill-webpack-plugin (如果不安装的话后面使用会报错) 添加相关配置 在vue.config.js文件 const NodePolyfillPlugin require("node-polyfill-webpack-plugin") module.exports defineCon…...

Linux环境变量 本地变量 命令行参数
并行和并发 并行 多个进程在多个 CPU 下分别,同时进行运行。 并发 多个进程在一个 CPU 采用进程切换的方式,在一段时间内,让多个进程都得以推进,称之为并发。 CPU 中的寄存器扮演什么角色? 寄存器:cpu 内的寄存器里面保存的是进程…...
向量数据库Faiss的搭建与使用
1. 什么是Faiss? Faiss是由Facebook AI Research团队开发的一个库,旨在高效地进行大规模向量相似性搜索。它不仅支持CPU,还能利用GPU进行加速,非常适合处理大量高维数据。Faiss提供了多种索引类型,以适应不同的需求&a…...

微信小程序接入客服功能
前言 用户可使用小程序客服消息功能,与小程序的客服人员进行沟通。客服功能主要用于在小程序内 用户与客服直接沟通用,本篇介绍客服功能的基础开发以及进阶功能的使用,另外介绍多种客服的对接方式。 更多介绍请查看客服消息使用指南 客服视…...

mysql开启远程访问
个人建议mysql可以用宝塔自动下载安装。 远程访问, 1.关闭防火墙,确保ip能ping通 2.ping端口确定数据库能ping通 3.本地先连上去命令行修改远程访问权限。 mysql -u root -p use mysql; select user,host from user; select host from user where u…...

【NLP自然语言处理】文本处理的基本方法
目录 🍔什么是分词 🍔中文分词工具jieba 2.1 jieba的基本特点 2.2 jieba的功能 2.3 jieba的安装及使用 🍔什么是命名实体识别 🍔什么是词性标注 🍔小结 学习目标 🍀 了解什么是分词, 词性标注, 命名…...
uniapp使用defineExpose暴露和onMounted访问
defineExpose作用 暴露方法和数据 允许从模板或其他组件访问当前组件内部的方法和数据。明确指定哪些方法和数据可以被外部访问,从而避免不必要的暴露。 增强安全性 通过显式声明哪些方法和数据可以被外部访问,防止意外修改内部状态。提高组件的安全性&a…...

怎么使用matplotlib绘制一个从-2π到2π的sin(x)的折线图-学习篇
首先:如果你的环境中没有安装matplotlib,使用以下命令可以直接安装 pip install matplotlib如何画一个这样的折线图呢?往下看 想要画一个简单的sin(x)在-2π到2π的折线图,我们要拆分成以下步骤: 先导入相关的库文…...

【Java毕业设计】基于SpringBoot+Vue+uniapp的农产品商城系统
文章目录 一、系统架构1、后端:SpringBoot、Mybatis2、前端:Vue、ElementUI4、小程序:uniapp3、数据库:MySQL 二、系统功能三、系统展示1、小程序2、后台管理系统 一、系统架构 1、后端:SpringBoot、Mybatis 2、前端…...

C++ | Leetcode C++题解之第390题消除游戏
题目: 题解: class Solution { public:int lastRemaining(int n) {int a1 1;int k 0, cnt n, step 1;while (cnt > 1) {if (k % 2 0) { // 正向a1 a1 step;} else { // 反向a1 (cnt % 2 0) ? a1 : a1 step;}k;cnt cnt >> 1;step …...

echarts进度
echarts图表集 const data[{ value: 10.09,name:制梁进度, color: #86C58C,state: }, { value: 66.00,name:架梁进, color: #C6A381 ,state:正常}, { value: 33.07,name:下部进度, color: #669BDA,state:正常 }, ];// const textStyle { "color": "#CED6C8&…...
PostgreSQL16.4搭建一主一从集群
PostgreSQL搭建一主一从集群的过程主要涉及到基础环境准备、PostgreSQL安装、主从节点配置以及同步验证等步骤。以下是一个详细的搭建过程: 一、基础环境准备 创建虚拟机: 准备两台虚拟机,分别作为主节点和从节点。为每台虚拟机分配独立的IP…...

Spring01——Spring简介、Spring Framework架构、Spring核心概念、IOC入门案例、DI入门案例
为什么要学 spring技术是JavaEE开发必备技能,企业开发技术选型命中率>90%专业角度 简化开发:降低企业开发的复杂度框架整合:高效整合其他技术,提高开发与运行效率 学什么 简化开发 IOCAOP 事务处理 框架整合 MyBatis 怎…...

深度学习|模型推理:端到端任务处理
引言 深度学习的崛起推动了人工智能领域的诸多技术突破,尤其是在处理复杂数据与任务的能力方面。模型推理作为深度学习的核心环节,决定了模型在真实应用场景中的表现。而端到端任务处理(End-to-End Task Processing)作为深度学习的一种重要范式,通过从输入到输出的直接映…...
【深度学习 Pytorch】2024年最新版本PyTorch学习指南
引言 2024年,深度学习技术在各个领域取得了显著的进展,而PyTorch作为深度学习领域的主流框架之一,凭借其易用性、灵活性和强大的社区支持,受到了广大研究者和开发者的喜爱。本文将为您带来一份2024年最新版本的PyTorch学习指南&a…...

第 1 章:原生 AJAX
原生AJAX 1. AJAX 简介 AJAX 全称为 Asynchronous JavaScript And XML,就是异步的 JS 和 XML。通过 AJAX 可以在浏览器中向服务器发送异步请求,最大的优势:无刷新获取数据。AJAX 不是新的编程语言,而是一种将现有的标准组合在一…...

React第五十七节 Router中RouterProvider使用详解及注意事项
前言 在 React Router v6.4 中,RouterProvider 是一个核心组件,用于提供基于数据路由(data routers)的新型路由方案。 它替代了传统的 <BrowserRouter>,支持更强大的数据加载和操作功能(如 loader 和…...

Debian系统简介
目录 Debian系统介绍 Debian版本介绍 Debian软件源介绍 软件包管理工具dpkg dpkg核心指令详解 安装软件包 卸载软件包 查询软件包状态 验证软件包完整性 手动处理依赖关系 dpkg vs apt Debian系统介绍 Debian 和 Ubuntu 都是基于 Debian内核 的 Linux 发行版ÿ…...
高防服务器能够抵御哪些网络攻击呢?
高防服务器作为一种有着高度防御能力的服务器,可以帮助网站应对分布式拒绝服务攻击,有效识别和清理一些恶意的网络流量,为用户提供安全且稳定的网络环境,那么,高防服务器一般都可以抵御哪些网络攻击呢?下面…...
基于matlab策略迭代和值迭代法的动态规划
经典的基于策略迭代和值迭代法的动态规划matlab代码,实现机器人的最优运输 Dynamic-Programming-master/Environment.pdf , 104724 Dynamic-Programming-master/README.md , 506 Dynamic-Programming-master/generalizedPolicyIteration.m , 1970 Dynamic-Programm…...

毫米波雷达基础理论(3D+4D)
3D、4D毫米波雷达基础知识及厂商选型 PreView : https://mp.weixin.qq.com/s/bQkju4r6med7I3TBGJI_bQ 1. FMCW毫米波雷达基础知识 主要参考博文: 一文入门汽车毫米波雷达基本原理 :https://mp.weixin.qq.com/s/_EN7A5lKcz2Eh8dLnjE19w 毫米波雷达基础…...
Python 训练营打卡 Day 47
注意力热力图可视化 在day 46代码的基础上,对比不同卷积层热力图可视化的结果 import torch import torch.nn as nn import torch.optim as optim from torchvision import datasets, transforms from torch.utils.data import DataLoader import matplotlib.pypl…...
如何配置一个sql server使得其它用户可以通过excel odbc获取数据
要让其他用户通过 Excel 使用 ODBC 连接到 SQL Server 获取数据,你需要完成以下配置步骤: ✅ 一、在 SQL Server 端配置(服务器设置) 1. 启用 TCP/IP 协议 打开 “SQL Server 配置管理器”。导航到:SQL Server 网络配…...
第八部分:阶段项目 6:构建 React 前端应用
现在,是时候将你学到的 React 基础知识付诸实践,构建一个简单的前端应用来模拟与后端 API 的交互了。在这个阶段,你可以先使用模拟数据,或者如果你的后端 API(阶段项目 5)已经搭建好,可以直接连…...
《Offer来了:Java面试核心知识点精讲》大纲
文章目录 一、《Offer来了:Java面试核心知识点精讲》的典型大纲框架Java基础并发编程JVM原理数据库与缓存分布式架构系统设计二、《Offer来了:Java面试核心知识点精讲(原理篇)》技术文章大纲核心主题:Java基础原理与面试高频考点Java虚拟机(JVM)原理Java并发编程原理Jav…...

DAY 45 超大力王爱学Python
来自超大力王的友情提示:在用tensordoard的时候一定一定要用绝对位置,例如:tensorboard --logdir"D:\代码\archive (1)\runs\cifar10_mlp_experiment_2" 不然读取不了数据 知识点回顾: tensorboard的发展历史和原理tens…...