Sun Solaris - Descubra o número de processadores e núcleos

8

Nosso servidor SPARC está executando o Sun Solaris 10; Gostaria de descobrir o número real de processadores e o número de núcleos para cada processador.

A saída do psrinfo e do prtdiag é ambígua:

$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)

Que outros métodos posso usar?

EDITADO:

Parece que temos um sistema de 4 processadores com um núcleo cada:

$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)
Adrian
fonte

Respostas:

17

O comando psrinfo -pvé o comando que você está procurando. Ele fornece o número de cpus físicas mais a contagem de processador virtual por processador físico.

Por exemplo, em um V880, fica assim:

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)

Espero que ajude. :-)

EDITAR

Uma máquina multicore possui, por exemplo, esta saída

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)
chrw
fonte
E uma aparência como T1000: O processador físico tem 16 processadores virtuais (0-15) UltraSPARC-T1 (cpuid 0 relógio 1000 MHz)
slovon
E um X4170 parece: O processador físico possui 8 processadores virtuais (0-7) x86 (família chipid 0x0 da família GenuineIntel 6 modelo 26 passo 5 com clock de 2267 MHz) CPU Intel (r) Xeon (r) E5520 a 2,27GHz
slovon
3

Você pode verificar o número de processadores físicos usando o comando psrinfo -p.

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

Verificando o número de processadores físicos

root @ sunt2000: / # psrinfo

-p 1

Saída detalhada do mesmo comando acima.

root @ sunt2000: / # psrinfo -vp

O processador físico possui 32 processadores virtuais (0 a 31)

UltraSPARC-T1 (chip 0, clock de 1200 MHz)

Abaixo está um Sun Fire V445 que possui o UltraSPARC IIIi e é de núcleo único.

root @ sunv445: / # uname -a

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

root @ sunv445: / # psrinfo

0 on-line desde 11/05/2008 04:27:24

1 on-line desde 11/05/2008 04:27:24

2 on-line desde 11/05/2008 04:27:16

Possui 3 processadores físicos.

root @ sunv445: / # psrinfo -p

3

Acredito que apenas o UltraSPARCs IV seja dual core. Sem problemas com IIIi

root @ sunv445: / # psrinfo -vp

O processador físico possui 1 processador virtual (0)

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

O processador físico possui 1 processador virtual (1)

UltraSPARC-IIIi (port 1 impl 0x16 ver 0x34 clock 1592 MHz)

O processador físico possui 1 processador virtual (2)

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

setatakahashi
fonte
2

O número total de núcleos em um sistema é "kstat cpu_info | grep core_id | uniq | wc -l" Divida o número total de núcleos pela saída de "psrinfo -p" para obter os núcleos por processador físico

Rama Kodali
fonte
1

As informações relatadas por "kstat cpu_info" podem ser usadas para determinar quantos processadores (soquetes) você possui, quantos núcleos por processador e quantos encadeamentos CMP por núcleo.

Se você não se importa com a distinção entre núcleos e threads CMP, "psrinfo -pv" será suficiente.


fonte
0

Sempre tem

dmesg

Eu suspeito que o seu prtdiag -v, embora liste os núcleos bastante bem no campo Localização. Parece que você tem uma única CPU, quad core?

Michael Graff
fonte
Hmmm, é assim que parece, mas não acredito que haja um UltraSPARC-IIIi quad core disponível!
27430 Brian Knoblauch
A página inicial da Sun não diz nada sobre núcleos para esse tipo de servidor (e CPU). Eu acho que a contagem física é de 4 com um núcleo cada. Mas vamos ver o que psrinfo -pv diz :-)
CHRW
0

Não tenho certeza se isso ajuda, mas uma caixa UltraSPARC-IIIi com processador duplo aparece assim:

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
Brian Knoblauch
fonte
-2

Tudo errado ... Você não pode obter o número de núcleos apenas usando uma linha de comando (até a presente data). Nada lá lhe dirá diretamente, pensei que você pudesse fazer algumas contas para lhe dar uma idéia e com base na idade da sua caixa.

Você precisa conhecer os núcleos da CPU que comprou e ver suas especificações de hardware e, a partir daí, poderá calcular os threads por núcleo. Agora, a sun agora envia um núcleo de 8 núcleos, você pode até obter o mesmo número de CPUS virtual se tiver mais CPU física no quad core vs menos CPU física no sistema de 8 núcleos.

Jeff
fonte
11
Você pode obter o número de núcleos hoje. Consulte Solaris 11 Express. % psrinfo -pv O processador físico possui 2 núcleos e 4 processadores virtuais (0-3) O núcleo possui 2 processadores virtuais (0 1) O núcleo possui 2 processadores virtuais (2 3) SPARC64-VI (portid 1024 impl 0x6 ver 0x90 clock) 2150 MHz) O processador físico possui 2 núcleos e 4 processadores virtuais (40-43) O núcleo possui 2 processadores virtuais (40 41) O núcleo possui 2 processadores virtuais (42 43) SPARC64-VI (portid 1064 impl 0x6 ver 0x90 clock 2150 MHz)
Jodie C