AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / server / 问题 / 101434
Accepted
jkp
jkp
Asked: 2010-01-11 23:59:33 +0800 CST2010-01-11 23:59:33 +0800 CST 2010-01-11 23:59:33 +0800 CST

为什么我在 Linux 的 KVM 下运行的 Windows 7 VM 没有使用所有的虚拟处理器?

  • 772

全部

自从我将我的一个 VM 从 Windows 2008 Server 迁移到 Windows 7(最终)后,我的服务器出现了问题:虽然我已经为 VM 分配了四个内核,它甚至似乎看到了它们,但它似乎认为它有两个核心!

它识别我的处理器但不使用它们!

谁能告诉我这里发生了什么?我认为这可能是 KVM 和 Windows 7 之间的一些不兼容,但由于它看到了虚拟处理器,我开始不认为......任何线索?

这是进程管理器的屏幕截图,在同一个盒子上只显示了两个核心:

任务管理器

kvm-virtualization windows-7 multi-core
  • 5 5 个回答
  • 29241 Views

5 个回答

  • Voted
  1. Mark Dayel
    2011-04-04T09:30:42+08:002011-04-04T09:30:42+08:00

    在 libvirt 0.8.3 上,如果您键入:

    virsh capabilities | grep topology
    

    它将列出主机的拓扑:

    <topology sockets='1' cores='4' threads='1'/>
    

    这些数字指的是插槽数、每个插槽的内核数和每个内核的线程数。将此行添加到 xml 文件中的 cpu 条目以允许 windows 使用所有 4 个内核,例如:

     <vcpu>4</vcpu>
     <cpu>
         <topology sockets='1' cores='4' threads='1'/>
     </cpu>
    
    • 26
  2. Best Answer
    xenny
    2010-01-12T04:37:02+08:002010-01-12T04:37:02+08:00

    我怀疑这些处理器在单独的插槽中被呈现为单核处理器。Windows 7 Ultimate 最多支持 2 个插槽系统,因此它将使用 2 个处理器。

    我不知道您是否可以将 KVM 配置为将处理器呈现为单个四核 CPU 或 2 个双核 CPU,这应该可以解决问题。

    • 19
  3. rickfoosusa
    2015-07-03T13:24:21+08:002015-07-03T13:24:21+08:00

    自 Ubuntu 15.04 起,virt-manager 完全支持拓扑设置。

    从 virt-manager > CPUs > 拓扑:

    • 检查:手动设置 CPU 拓扑
    • 插座:2
    • 核心:2
    • 主题:2

    以下是根据 virt-manager 中的上述设置创建的。您无需使用 virsh edit 输入这些内容。

    <vcpu placement='static'>8</vcpu>
    <cpu mode='host-model'>
      <model fallback='allow'/>
      <topology sockets='2' cores='2' threads='2'/>
    </cpu>
    

    更新后拓扑停止被 Windows 识别,并再次将虚拟 CPU 限制为 2 个插槽。

    要解决此问题,请使用“virsh edit”隐藏 kvm 功能,并添加 hyperv 功能。完全关闭并重新启动后,Windows VM 将再次识别多个 CPU。

    为什么我在 Linux 的 KVM 下运行的 Windows 7 VM 没有使用所有的虚拟处理器?

    <features>
      <acpi/>
      <apic/>
      <hyperv>
        <relaxed state='on'/>
        <vapic state='on'/>
        <spinlocks state='on' retries='8191'/>
      </hyperv>
      <kvm>
        <hidden state='on'/>
      </kvm>
    </features>
    
    • 5
  4. Sergey Vlasov
    2010-12-10T13:28:48+08:002010-12-10T13:28:48+08:00

    在 RHEL/CentOS 5.5 (kvm >= 83-164.el5) 中,kvm 二进制文件也支持“-smp N,cores=N”选项(软件包中有反向移植补丁);但是,libvirt 版本不支持域 XML 中的 <topology> 元素。一种解决方法是为 /usr/libexec/kvm 创建一个包装脚本,该脚本添加适当的选项并在 <emulator> 元素中指定该脚本而不是默认路径。

    • 2
  5. user67327
    2011-01-19T14:34:52+08:002011-01-19T14:34:52+08:00

    值得注意的是,Ubuntu 10.4 (Lucid) 有 0.7.5 版的 libvirt,而对拓扑的支持是在 0.7.6 版的 libvirt 中添加的。Ubuntu 10.10 (Maverick) 有 0.8.3 libvirt,因此应该能够直接支持 XML 中的拓扑规范,而无需包装器。

    • 1

相关问题

  • Xen 与 KVM 的性能对比

  • 什么是bridge_fd?

  • 如何在 kvm-linux 中登录除 ssh、vnc 之外的控制台

  • Linux 内核虚拟机

  • Vista 上的 VNC

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    新安装后 postgres 的默认超级用户用户名/密码是什么?

    • 5 个回答
  • Marko Smith

    SFTP 使用什么端口?

    • 6 个回答
  • Marko Smith

    从 IP 地址解析主机名

    • 8 个回答
  • Marko Smith

    如何按大小对 du -h 输出进行排序

    • 30 个回答
  • Marko Smith

    命令行列出 Windows Active Directory 组中的用户?

    • 9 个回答
  • Marko Smith

    什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同?

    • 3 个回答
  • Marko Smith

    如何确定bash变量是否为空?

    • 15 个回答
  • Martin Hope
    MikeN 在 Nginx 中,如何在维护子域的同时将所有 http 请求重写为 https? 2009-09-22 06:04:43 +0800 CST
  • Martin Hope
    Tom Feiner 如何按大小对 du -h 输出进行排序 2009-02-26 05:42:42 +0800 CST
  • Martin Hope
    0x89 bash中的双方括号和单方括号有什么区别? 2009-08-10 13:11:51 +0800 CST
  • Martin Hope
    Kyle Brandt IPv4 子网如何工作? 2009-08-05 06:05:31 +0800 CST
  • Martin Hope
    Noah Goodrich 什么是 Pem 文件,它与其他 OpenSSL 生成的密钥文件格式有何不同? 2009-05-19 18:24:42 +0800 CST
  • Martin Hope
    Brent 如何确定bash变量是否为空? 2009-05-13 09:54:48 +0800 CST
  • Martin Hope
    cletus 您如何找到在 Windows 中打开文件的进程? 2009-05-01 16:47:16 +0800 CST

热门标签

linux nginx windows networking ubuntu domain-name-system amazon-web-services active-directory apache-2.4 ssh

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve