2015-07-20 56 views
4

如果我啓動top或查看/proc/cpuinfo,我只看到兩個CPU。如果我用virt-manager查看我的系統顯示的值,那麼該工具會顯示32個vcpus(這是我認爲正確的值)。如何找出我的XEN系統有多少個CPU(vcpus)?

我在管理程序的腳本級找到了正確的值(32),但仍然失敗(尚未找到)。我一直在調查/proc/cpuinfo/sys/devices/system/cpu/以及其他我能想到的事情,但發現價值無處。此外,我仔細檢查了諸如xen或​​之類的shell命令,但發現無法顯示我正在查找的值。

有沒有人知道我可以找出我的XEN系統提供多少個vcpus?

編輯:lscpu給我:

Architecture:   x86_64 
CPU op-mode(s):  32-bit, 64-bit 
Byte Order:   Little Endian 
CPU(s):    2 
On-line CPU(s) list: 0,1 
Thread(s) per core: 2 
Core(s) per socket: 1 
Socket(s):    1 
NUMA node(s):   1 
Vendor ID:    GenuineIntel 
CPU family:   6 
Model:     45 
Stepping:    7 
CPU MHz:    2900.086 
BogoMIPS:    5800.17 
Hypervisor vendor:  Xen 
Virtualization type: none 
L1d cache:    32K 
L1i cache:    32K 
L2 cache:    256K 
L3 cache:    20480K 
NUMA node0 CPU(s):  0,1 

所以,這也並不顯示 「32」 的任何地方。 ,系統

core id  : 0 
core id  : 1 
core id  : 0 
core id  : 1 

在我的情況:

/proc/cpuinfo內容:

processor : 0 
vendor_id : GenuineIntel 
cpu family : 6 
model  : 45 
model name : Intel(R) Xeon(R) CPU E5-2690 0 @ 2.90GHz 
stepping : 7 
microcode : 0x70d 
cpu MHz  : 2900.086 
cache size : 20480 KB 
physical id : 0 
siblings : 2 
core id  : 0 
cpu cores : 1 
apicid  : 0 
initial apicid : 0 
fpu  : yes 
fpu_exception : yes 
cpuid level : 13 
wp  : yes 
flags  : fpu de tsc msr pae cx8 apic sep cmov pat clflush acpi mmx fxsr sse sse2 ss ht syscall nx lm constant_tsc rep_good nopl nonstop_tsc pni pclmulqdq est ssse3 cx16 sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes hypervisor lahf_lm ida arat pln pts dtherm 
bogomips : 5800.17 
clflush size : 64 
cache_alignment : 64 
address sizes : 46 bits physical, 48 bits virtual 
power management: 

processor : 1 
vendor_id : GenuineIntel 
cpu family : 6 
model  : 45 
model name : Intel(R) Xeon(R) CPU E5-2690 0 @ 2.90GHz 
stepping : 7 
microcode : 0x70d 
cpu MHz  : 2900.086 
cache size : 20480 KB 
physical id : 0 
siblings : 2 
core id  : 0 
cpu cores : 1 
apicid  : 1 
initial apicid : 1 
fpu  : yes 
fpu_exception : yes 
cpuid level : 13 
wp  : yes 
flags  : fpu de tsc msr pae cx8 apic sep cmov pat clflush acpi mmx fxsr sse sse2 ss ht syscall nx lm constant_tsc rep_good nopl nonstop_tsc pni pclmulqdq est ssse3 cx16 sse4_1 sse4_2 x2apic popcnt tsc_deadline_timer aes hypervisor lahf_lm ida arat pln pts dtherm 
bogomips : 5800.17 
clflush size : 64 
cache_alignment : 64 
address sizes : 46 bits physical, 48 bits virtual 
power management: 
+1

你是在看host'(「Domain-0」)中的'top'和'/ proc/cpuinfo'嗎? 'xm'肯定有你想要的選項(更新的'xl'也如'libvirt''' virsh'所做的那樣) - 'xm info'顯示客人的總物理CPU數量,'xm vcpu-list'。 .. – twalberg

回答

3

我現在找到了一種方法:

IFS=: read _ nr_cpus < <(xm info | grep ^nr_cpus) 
echo "$nr_cpus" 

這將(最終)我的系統上打印

32 

1

這是一個很好的方式:

cat /proc/cpuinfo | grep "core id" 

這是輸出的一個例子是雙核,我只有核心ID 0和核心ID 1.

+0

是的,正確的,正如我已經寫在我的問題,我已經看過/ proc/cpuinfo'沒有成功。它向我顯示了兩行(兩個'core id:0'),但我的系統爲創建的VM提供了多達32個vcpus。我想弄清楚這個數字在32位可以看到。 – Alfe

+0

lscpu給你什麼?你能發佈cat/proc/cpuinfo的整個輸出嗎? – Federovsky

+0

我加了你問的問題。不幸的是,沒有顯示所需的32. – Alfe

相關問題