[英]How do I find out how many CPUs (vcpus) my XEN system has?
If I start top
or look into /proc/cpuinfo
, I see only two CPUs. 如果我从
top
开始或查看/proc/cpuinfo
,我只看到两个CPU。 If I view the values displayed for my system with virt-manager
, that tool shows me 32 vcpus (which is the value I think is correct). 如果我使用
virt-manager
查看为我的系统显示的值,该工具会显示32个vcpus(这是我认为正确的值)。
I failed (yet) to find out on a script-level on the hypervisor that correct value (32). 我(在)管理程序的脚本级别上找不到正确的值(32)。 I have been looking into
/proc/cpuinfo
and /sys/devices/system/cpu/
and other things I could think of, but found that value nowhere. 我一直在研究
/proc/cpuinfo
和/sys/devices/system/cpu/
以及我能想到的其他事情,但发现价值无处可去。 Also the shell commands like xen
or xm
I examined closely, but found no way to display the value I'm looking for. 另外shell命令如
xen
或xm
我仔细检查过,但发现无法显示我正在寻找的值。
Does anybody know how I can find out how many vcpus my XEN system provides? 有谁知道我怎么知道我的XEN系统提供了多少vcpus?
EDIT: lscpu
gives me: 编辑:
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
So, this also does not show the "32" anywhere. 所以,这也不会在任何地方显示“32”。
The contents of /proc/cpuinfo
: /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:
I found a way now: 我现在找到了办法:
IFS=: read _ nr_cpus < <(xm info | grep ^nr_cpus)
echo "$nr_cpus"
This will (finally) print 这将(最终)打印
32
on my system. 在我的系统上。
This is a nice way: 这是一个很好的方式:
cat /proc/cpuinfo | grep "core id"
This is an example of the output: 这是输出的一个例子:
core id : 0
core id : 1
core id : 0
core id : 1
In my case, the system is dual-core, I have only core-id 0 and core-id 1. 在我的例子中,系统是双核的,我只有core-id 0和core-id 1。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.