Prtdiag

From EggeWiki

Solaris offers the prtdiag util to get CPU information of the running platform. This command is runnable by non-root users.

/usr/platform/`uname -i`/sbin/prtdiag or /usr/sbin/prtdiag

Here's some examples

System Configuration: Sun Microsystems Sun Fire X4600 M2
BIOS Configuration: American Megatrends Inc. 080012  04/19/2007
BMC Configuration: IPMI 1.5 (KCS: Keyboard Controller Style)

==== Processor Sockets ====================================

Version                          Location Tag
-------------------------------- --------------------------
Dual-Core AMD Opteron(tm) Processor 8220 CPU 1
Dual-Core AMD Opteron(tm) Processor 8220 CPU 2
Dual-Core AMD Opteron(tm) Processor 8220 CPU 3
Dual-Core AMD Opteron(tm) Processor 8220 CPU 4
Dual-Core AMD Opteron(tm) Processor 8220 CPU 5
Dual-Core AMD Opteron(tm) Processor 8220 CPU 6
Dual-Core AMD Opteron(tm) Processor 8220 CPU 7
Dual-Core AMD Opteron(tm) Processor 8220 CPU 8

==== Memory Device Sockets ================================

Type    Status Set Device Locator      Bank Locator
------- ------ --- ------------------- --------------------
DDR2    in use 0   DIMM0               BANK0
DDR2    in use 0   DIMM1               BANK1

==== On-Board Devices =====================================
 LSI serial-ATA #1
 Gigabit Ethernet #1
 Gigabit Ethernet #2
 ATI Rage XL VGA

==== Upgradeable Slots ====================================

ID  Status    Type             Description
--- --------- ---------------- ----------------------------
0   in use    PCI-X            PCIX SLOT0
1   available PCI-X            PCIX SLOT1
2   available other            PCIExp SLOT2
3   available other            PCIExp SLOT3
4   available other            PCIExp SLOT4
5   available other            PCIExp SLOT5
6   available other            PCIExp SLOT6
7   available other            PCIExp SLOT7
System Configuration: VMware, Inc. VMware Virtual Platform
BIOS Configuration: Phoenix Technologies LTD 6.00 04/17/2006

==== Processor Sockets ====================================

Version                          Location Tag
-------------------------------- --------------------------
Pentium(R) Pro                   CPU socket #0
Pentium(R) Pro                   CPU socket #1

==== Memory Device Sockets ================================

Type    Status Set Device Locator      Bank Locator
------- ------ --- ------------------- --------------------
DRAM    in use 0   RAM slot #0         RAM slot #0
DRAM    in use 0   RAM slot #1         RAM slot #1
DRAM    in use 0   RAM slot #2         RAM slot #2
DRAM    in use 0   RAM slot #3         RAM slot #3

==== On-Board Devices =====================================
VMware SVGA II
ES1371

==== Upgradeable Slots ====================================

ID  Status    Type             Description
--- --------- ---------------- ----------------------------
0   unknown   ISA              ISA Slot J8
0   unknown   ISA              ISA Slot J9
0   unknown   ISA              ISA Slot J10
1   in use    PCI              PCI Slot J11
2   in use    PCI              PCI Slot J12
3   in use    PCI              PCI Slot J13
4   in use    PCI              PCI Slot J14
System Configuration: Sun Microsystems  sun4u Sun Fire E2900
System clock frequency: 150 MHZ
Memory size: 96GB       

======================================= CPUs =======================================
                    E$         CPU     CPU       Temperature         Fan
 CPU     Freq      Size        Impl.   Mask     Die    Ambient   Speed   Unit
 ------  --------  ----------  ------  ----  --------  --------  -----   ----
 SB0/P0  1350 MHz  16MB        US-IV    3.1     81 C      38 C   
 SB0/P1  1350 MHz  16MB        US-IV    3.1     75 C      35 C   
 SB0/P2  1350 MHz  16MB        US-IV    3.1     73 C      37 C   
 SB0/P3  1350 MHz  16MB        US-IV    3.1     76 C      38 C   
 SB2/P0  1350 MHz  16MB        US-IV    3.1     74 C      34 C   
 SB2/P1  1350 MHz  16MB        US-IV    3.1     71 C      35 C   
 SB2/P2  1350 MHz  16MB        US-IV    3.1     77 C      39 C   
 SB2/P3  1350 MHz  16MB        US-IV    3.1     81 C      38 C   
 SB4/P0  1350 MHz  16MB        US-IV    3.1     67 C      36 C   
 SB4/P1  1350 MHz  16MB        US-IV    3.1     69 C      37 C   
 SB4/P2  1350 MHz  16MB        US-IV    3.1     76 C      42 C   
 SB4/P3  1350 MHz  16MB        US-IV    3.1     69 C      40 C   

==================================== IO Devices ====================================
     Bus   Freq
Brd  Type  MHz   Slot        Name                          Model
---  ----  ----  ----------  ----------------------------  --------------------
 0   pci    33         PCI0  lpfc-pci10df,f980 (scsi)      LP9802             
 0   pci    33         PCI1  lpfc-pci10df,f980 (scsi)      LP9802             
 0   pci    33         PCI2  pci100b,35 (network)          SUNW,pci-ce        
 0   pci    66            1  pci108e,abba (network)        SUNW,pci-ce        
 0   pci    66            2  scsi-pci1000,21 (scsi-2)                         
 0   pci    66            2  scsi-pci1000,21 (scsi-2)                         
 0   pci    66            2  pci108e,abba (network)        SUNW,pci-ce        
 0   pci    33            3  pci1095,646 (ide)                                
 0   pci    33            4  bootbus-controller-sgsbbc     SUNW,sgsbbc        

psrinfo

psrinfo can give you more details about individual processors. In Solaris it's possible to disable processors while the machine is running, though I don't see any purpose for this in practice.

<geshi> /usr/sbin/psrinfo -v Status of virtual processor 0 as of: 10/20/2009 10:37:16

 on-line since 07/11/2009 14:27:04.
 The i386 processor operates at 2793 MHz,
       and has an i387 compatible floating point processor.

Status of virtual processor 1 as of: 10/20/2009 10:37:16

 on-line since 07/11/2009 14:27:09.
 The i386 processor operates at 2793 MHz,
       and has an i387 compatible floating point processor.

... </geshi>

prtconf

prtconf can tell you how much memory is installed, as well as what devices are on the system bus.

<geshi> $ prtconf | head System Configuration: Sun Microsystems i86pc Memory size: 65536 Megabytes System Peripherals (Software Nodes):

i86pc

   scsi_vhci, instance #0
   isa, instance #0
       asy, instance #0
       motherboard (driver not attached)
   pci, instance #0

</geshi>

isainfo

isainfo can quickly tell you if you are running on a 64 bit CPU and if you are using a 64 bit kernel. <geshi> $ isainfo -bv 64-bit amd64 applications

       tscp cx16 sse3 sse2 sse fxsr amd_3dnowx amd_3dnow amd_mmx mmx cmov amd_sysc 
       cx8 tsc fpu 

$ isainfo -kv 64-bit amd64 kernel modules </geshi>