Sun Solaris – 找出处理器和内核的数量

我们的SPARC服务器正在运行Sun Solaris 10; 我想找出处理器的实际数量和每个处理器的内核数量。

psrinfo和prtdiag的输出是不明确的:

$psrinfo -v Status of virtual processor 0 as of: dd/mm/yyyy hh:mm:ss on-line since dd/mm/yyyy hh:mm:ss. The sparcv9 processor operates at 1592 MHz, and has a sparcv9 floating point processor. Status of virtual processor 1 as of: dd/mm/yyyy hh:mm:ss on-line since dd/mm/yyyy hh:mm:ss. The sparcv9 processor operates at 1592 MHz, and has a sparcv9 floating point processor. Status of virtual processor 2 as of: dd/mm/yyyy hh:mm:ss on-line since dd/mm/yyyy hh:mm:ss. The sparcv9 processor operates at 1592 MHz, and has a sparcv9 floating point processor. Status of virtual processor 3 as of: dd/mm/yyyy hh:mm:ss on-line since dd/mm/yyyy hh:mm:ss. The sparcv9 processor operates at 1592 MHz, and has a sparcv9 floating point processor. 

_

 $prtdiag -v System Configuration: Sun Microsystems sun4u Sun Fire V445 System clock frequency: 199 MHZ Memory size: 32GB ==================================== CPUs ==================================== E$ CPU CPU CPU Freq Size Implementation Mask Status Location --- -------- ---------- --------------------- ----- ------ -------- 0 1592 MHz 1MB SUNW,UltraSPARC-IIIi 3.4 on-line MB/C0/P0 1 1592 MHz 1MB SUNW,UltraSPARC-IIIi 3.4 on-line MB/C1/P0 2 1592 MHz 1MB SUNW,UltraSPARC-IIIi 3.4 on-line MB/C2/P0 3 1592 MHz 1MB SUNW,UltraSPARC-IIIi 3.4 on-line MB/C3/P0 

_

 $more /etc/release Solaris 10 8/07 s10s_u4wos_12b SPARC Copyright 2007 Sun Microsystems, Inc. All Rights Reserved. Use is subject to license terms. Assembled 16 August 2007 Patch Cluster - EIS 29/01/08(v3.1.5) 

我还可以使用其他什么方法?

编辑:

看起来我们有一个4个处理器系统,每个系统有一个核心:

 $psrinfo -p 4 

_

 $psrinfo -pv The physical processor has 1 virtual processor (0) UltraSPARC-IIIi (portid 0 impl 0x16 ver 0x34 clock 1592 MHz) The physical processor has 1 virtual processor (1) UltraSPARC-IIIi (portid 1 impl 0x16 ver 0x34 clock 1592 MHz) The physical processor has 1 virtual processor (2) UltraSPARC-IIIi (portid 2 impl 0x16 ver 0x34 clock 1592 MHz) The physical processor has 1 virtual processor (3) UltraSPARC-IIIi (portid 3 impl 0x16 ver 0x34 clock 1592 MHz) 

命令psrinfo -pv是您正在查找的命令。 它给你物理CPU数量加上每个物理处理器的虚拟处理器数量。

例如在V880上,它看起来像这样:

 The physical processor has 1 virtual processor (0) UltraSPARC-III+ (portid 0 impl 0x15 ver 0x23 clock 900 MHz) The physical processor has 1 virtual processor (1) UltraSPARC-III+ (portid 1 impl 0x15 ver 0x23 clock 900 MHz) The physical processor has 1 virtual processor (2) UltraSPARC-III+ (portid 2 impl 0x15 ver 0x23 clock 900 MHz) The physical processor has 1 virtual processor (3) UltraSPARC-III+ (portid 3 impl 0x15 ver 0x23 clock 900 MHz) The physical processor has 1 virtual processor (4) UltraSPARC-III+ (portid 4 impl 0x15 ver 0x23 clock 900 MHz) The physical processor has 1 virtual processor (5) UltraSPARC-III+ (portid 5 impl 0x15 ver 0x23 clock 900 MHz) The physical processor has 1 virtual processor (6) UltraSPARC-III+ (portid 6 impl 0x15 ver 0x23 clock 900 MHz) The physical processor has 1 virtual processor (7) UltraSPARC-III+ (portid 7 impl 0x15 ver 0x23 clock 900 MHz) 

希望有所帮助。 🙂

编辑

多核机器具有这种输出

 The physical processor has 4 virtual processors (0-3) SPARC64-VI (portid 1024 impl 0x6 ver 0x93 clock 2150 MHz) The physical processor has 4 virtual processors (8-11) SPARC64-VI (portid 1032 impl 0x6 ver 0x93 clock 2150 MHz) 

您可以使用psrinfo -p命令检查物理处理器的数量。

root @ sunt2000:/#uname -a SunOS sunt2000 5.10 Generic_139555-08 sun4v sparc SUNW,Sun-Fire-T200

检查物理处理器的数量

root @ sunt2000:/#psrinfo

-p 1

从上面的相同命令的详细输出。

root @ sunt2000:/#psrinfo -vp

物理处理器有32个虚拟处理器(0-31)

UltraSPARC-T1(chipid 0,时钟1200 MHz)

以下是带有UltraSPARC IIIi的Sun Fire V445,它是单核的。

root @ sunv445:/#uname -a

SunOS sunv445 5.10 Generic_120011-14 sun4u sparc SUNW,Sun-Fire-V445

root @ sunv445:/#psrinfo

自11/05/2008 04:27:24以来在线0

自11/05/2008 04:27:24以来1次在线

自11/05/2008 04:27:16以来在线2

它有3个物理处理器。

root @ sunv445:/#psrinfo -p

3

我相信只有UltraSPARCs IV是双核心的。 没有问题与IIIi

root @ sunv445:/#psrinfo -vp

物理处理器有1个虚拟处理器(0)

UltraSPARC-IIIi(portid 0 impl 0x16 ver 0x34时钟1592 MHz)

物理处理器有1个虚拟处理器(1)

UltraSPARC-IIIi(portid 1 impl 0x16 ver 0x34时钟1592 MHz)

物理处理器有1个虚拟处理器(2)

UltraSPARC-IIIi(portid 2 impl 0x16 ver 0x34时钟1592 MHz)

“kstat cpu_info”报告的信息可以用来确定您拥有多less个处理器(插槽),每个处理器有多less个核心,以及每个核心有多less个CMP线程。

如果你不关心核心和CMP线程之间的区别,那么“psrinfo -pv”就足够了。

系统中的内核总数为“kstat cpu_info | grep core_id | uniq | wc -l”将内核总数除以“psrinfo -p”的输出,以获得每个物理处理器的内核数

总有

 dmesg 

我怀疑你的prtdiag -v虽然在Location字段中很好地列出了核心。 看起来你有一个单一的CPU,四核?

不知道是否有帮助,但双处理器UltraSPARC-IIIi盒子显示如下:

 0 1280 MHz 1MB SUNW,UltraSPARC-IIIi 2.4 on-line MB/CPU0 1 1280 MHz 1MB SUNW,UltraSPARC-IIIi 2.4 on-line MB/CPU1 

所有错误…你只能使用一个命令行(到这个date)不能得到核心的数量。 没有什么会直接告诉你,认为你可以做一些math来给你一个想法,并根据你的盒子的年龄。

您必须知道您购买的CPU内核,并查看硬件规格,然后从那里计算每个内核的线程数。 现在,sun已经发布了一个8核,如果在四核上拥有更多的物理CPU,而在8核系统上拥有更less的物理CPU,则甚至可以获得相同数量的虚拟CPUS。