首页 > 其他分享 >CPU host-passthrough技术与应用

CPU host-passthrough技术与应用

时间:2022-10-19 10:58:01浏览次数:45  
标签:0x00000001 passthrough 虚拟机 host 型号 CPU

为了保证虚拟机在不同宿主机之间迁移的时候的兼容性,Libvirt对CPU提炼出标准的几种类型,在/usr/share/libvirt/cpu_map.xml中可以查到。cpu_map.xml不仅是CPU型号,还有生产商信息、每种型号的CPU特性定义等信息,如下所示:

1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 <cpus>   <arch name='x86'>     <!-- vendor definitions -->     <vendor name='Intel' string='GenuineIntel'/>     <vendor name='AMD' string='AuthenticAMD'/>       <!-- standard features, EDX -->     <feature name='fpu'> <!-- CPUID_FP87 -->       <cpuid function='0x00000001' edx='0x00000001'/>     </feature>     <feature name='vme'> <!-- CPUID_VME -->       <cpuid function='0x00000001' edx='0x00000002'/>     </feature>     <feature name='de'> <!-- CPUID_DE -->       <cpuid function='0x00000001' edx='0x00000004'/>     </feature>     <feature name='pse'> <!-- CPUID_PSE -->       <cpuid function='0x00000001' edx='0x00000008'/>     </feature>     <feature name='tsc'> <!-- CPUID_TSC -->       <cpuid function='0x00000001' edx='0x00000010'/>     </feature>     <feature name='msr'> <!-- CPUID_MSR -->       <cpuid function='0x00000001' edx='0x00000020'/>     </feature>  ... <!-- models -->     <model name='486'>       <feature name='fpu'/>       <feature name='vme'/>       <feature name='pse'/>     </model> ...   <!-- Intel CPU models -->     <model name='Conroe'>       <model name='pentiumpro'/>       <vendor name='Intel'/>       <feature name='mtrr'/>       <feature name='mca'/>       <feature name='pse36'/>       <feature name='clflush'/>       <feature name='pni'/>       <feature name='ssse3'/>       <feature name='syscall'/>       <feature name='nx'/>       <feature name='lm'/>       <feature name='lahf_lm'/>     </model>

Centos6.6所带的Libvirt主要规定了以下几种CPU型号:'486','pentium','pentium2','pentium3','pentiumpro','coreduo'

CPU模式配置

1)custom模式

xml配置文件如下:

1 2 3 <cpu mode='custom' match='exact'>     <model fallback='allow'>kvm64</model> </cpu>

2)host-model模式

根据物理CPU的特性,选择一个最靠近的标准CPU型号。如果没有指定CPU模式,默认也是使用这种模式,xml配置文件如下:

1 <cpu mode='host-model' />

3)host-passthrough模式

直接将物理CPU暴露给虚拟机使用,在虚拟机上完全可以看到的就是物理CPU的型号,xml配置文件如下:

1 <cpu mode='host-passthrough' />

注意:使用host-model模式,Libvirt会根据物理CPU的型号,从规定的CPU中选择一种最接近的CPU型号,而使用host-passthrough模式直接看到的就是物理CPU的型号

CPU host-passthrough技术的应用场景

HOST技术使用于以下场景

1)需要将物理CPU的一些特性传给虚拟机使用,比如使用虚拟机嵌套的nested技术的时候

2)需要在虚拟机里面看到和物理CPU一模一样的CPU品牌型号,这个在公有云很有意义,用户体验比较好

注意:使用CPU host-passthrough技术需要注意,不同型号的CPU宿主机之间虚拟机不能迁移

标签:0x00000001,passthrough,虚拟机,host,型号,CPU
From: https://www.cnblogs.com/SunShine110/p/16805448.html

相关文章

  • 解决 SQL Server 中 CPU 使用率过高的问题
    本文提供了诊断和修复运行MicrosoftSQLServer的计算机上CPU使用率过高导致的问题的过程。尽管在SQLServer中出现CPU使用率过高有许多可能原因,但以下原因最为常......
  • YOLOv5】LabVIEW+OpenVINO让你的YOLOv5在CPU上飞起来
     前言上一篇博客给大家介绍了使用opencv加载YOLOv5的onnx模型,但我们发现使用CPU进行推理检测确实有些慢,那难道在CPU上就不能愉快地进行物体识别了吗?当然可以啦,这不LabVI......
  • Nexus3 docker hosted私有仓库搭建指南
     1、登录至nexus3控制中心;选择 BlobStores创建一个dockerblod   2、创建docker(hosted)类型仓库  指定私有仓库名指定端口允许拉取方式指定docker......
  • C#操作CPU内存时 winIO32位,64位的使用(运行时要用管理员身份)注意事项
    一、WinIo说明WinIO程序库允许在32位的Windows应用程序中直接对I/O端口和物理内存进行存取操作。通过使用一种内核模式的设备驱动器和其它几种底层编程技巧,它绕过了Wi......
  • 生产系统CPU飙高问题排查
    现状生产系统CPU占用过高,并且进行了报警排查方法执行top命令,查看是那个进程导致的,可以确定是pid为22168的java应用导致的执行top-Hp命令,查看这个进程的那个线程导致......
  • Linux 下配置 hosts 并设置免密登录
    Linux下配置hosts并设置免密登录作者:Grey原文地址:博客园:Linux下配置hosts并设置免密登录CSDN:Linux下配置hosts并设置免密登录说明实现Linux下(基于CentOS......
  • CPU飙高问题排查,从linux到java代码
    第一步:top监测进程资源占用情况,获取异常进程编号。这一步可以获得异常占用进程号。第二步:psH-eopid,tid,%cpu|grepxxxx  H打印线程以及进程信息,-eo打印指定的字......
  • k8s限制cpu和内存的策略
    1.概要最近发现一个服务cpu占用了100%,导致整个服务器崩溃的悲剧,我就想k8s如何能够限制cpu/内存等的时候了。研究了一下发现还真的可以,这篇做个记录2.POD级别2.1.配置d......
  • IDEA运行大型项目,项目启动卡顿,CPU使用率占用过高
    近期,在启动一个大型项目时,启动到一半,一直卡起不动,经过研究发现,是由于启动时内存不够导致。 1、点击文件(File)->设置(settings  ) ->构建、执行部署(Build,Execution.......
  • 人为提升服务器CPU、内存、硬盘使用率
    一、CPU使用率vikyd/go-cpu-load:GenerateCPUloadonWindows/Linux/Mac(github.com)所有CPU核心负载30%运行10秒钟./cpu-p30-t10所有CPU核心负载30%持续运......