- Use the script in Solaris Sparc servers
- The output as below
CPU Model is : UltraSPARC-T2
CPU Type is : sparcv9
Total number of physical processors: 1
Number of virtual processors: 64
Total number of cores: 8
Number of cores per physical processor: 8
Number of hardware threads (strands or vCPUs) per core: 8
Processor speed: 1165 MHz (1.16 GHz)
/usr/bin/kstat -m cpu_info | egrep "chip_id|core_id|module: cpu_info|brand|cpu_type" > /var/tmp/cpu_info.log
nproc=`(grep chip_id /var/tmp/cpu_info.log | awk '{ print $2 }' | sort -u | wc -l | tr -d ' ')`
ncore=`(grep core_id /var/tmp/cpu_info.log | awk '{ print $2 }' | sort -u | wc -l | tr -d ' ')`
vproc=`(grep 'module: cpu_info' /var/tmp/cpu_info.log | awk '{ print $4 }' | sort -u | wc -l | tr -d ' ')`
cpumodel=`grep brand /var/tmp/cpu_info.log | uniq | awk '{print $2}'`
cputype=`grep "cpu_type" /var/tmp/cpu_info.log | uniq | awk '{print $2}'`
nstrandspercore=$(($vproc/$ncore))
ncoresperproc=$(($ncore/$nproc))
speedinmhz=`(/usr/bin/kstat -m cpu_info | grep clock_MHz | awk '{ print $2 }' | sort -u)`
speedinghz=`echo "scale=2; $speedinmhz/1000" | bc`
echo "" ; echo ""
echo "CPU Model is : $cpumodel"
echo "CPU Type is : $cputype"
echo "Total number of physical processors: $nproc"
echo "Number of virtual processors: $vproc"
echo "Total number of cores: $ncore"
echo "Number of cores per physical processor: $ncoresperproc"
echo "Number of hardware threads (strands or vCPUs) per core: $nstrandspercore"
echo "Processor speed: $speedinmhz MHz ($speedinghz GHz)"
echo "" ; echo ""
# now derive the vcpu-to-core mapping based on above information #
echo -e "\n** Socket-Core-vCPU mapping **"
let linenum=2
for ((i = 1; i <= ${nproc}; ++i ))
do
chipid=`sed -n ${linenum}p /var/tmp/cpu_info.log | awk '{ print $2 }'`
echo -e "\nPhysical Processor $i (chip id: $chipid):"
for ((j = 1; j <= ${ncoresperproc}; ++j ))
do
let linenum=($linenum + 1)
coreid=`sed -n ${linenum}p /var/tmp/cpu_info.log | awk '{ print $2 }'`
echo -e "\tCore $j (core id: $coreid):"
let linenum=($linenum - 2)
vcpustart=`sed -n ${linenum}p /var/tmp/cpu_info.log | awk '{ print $4 }'`
let linenum=(3 * $nstrandspercore + $linenum - 3)
vcpuend=`sed -n ${linenum}p /var/tmp/cpu_info.log | awk '{ print $4 }'`
echo -e "\t\tvCPU ids: $vcpustart - $vcpuend"
let linenum=($linenum + 4)
done
done
rm /var/tmp/cpu_info.log
~Judi~
script to find cpu information
script to find cpu count
script to find cpu core
script to find cpu thread
script to find cpu model and type
find cpu details in sparc server
find cpu details in Solaris server
processor details in solaris server
processor information in sparc server
solaris cpu count
No comments:
Post a Comment