About me

Name: Ivan Kartik
Location: Bratislava, Slovakia
I'm working as Senior Database Administrator in Bratislava, Slovak Republic. My interests are in RDBMS mainly Oracle, Unix (like) operating systems and in free time I am watching or playing ice-hockey, also I like to play golf.

[contact me]


Oracle (favourite) links

Oracle Technology Network
OTN Forums
Oracle Documentation
Ask Tom


Linux (favourite) links

Linux.com Portal
Linux section on OTN
The Linux Documentation Project


Favourite Blogs

Nicolas Gasparotto
Hans Forbrich
Jonathan Lewis
Frits Hoogland
H.Tonguç YIlmaz
Laurent Schneider
Christopher Jones
Jeff Hunter
Oracle WTF


My install articles

9i
Oracle 9i(R2) on Fedora 2,3,4,5,6
Oracle 9i(R2) on Enteprise Linux 4
Oracle 9i(R2) on SuSE 9.x,10.1
10g
Oracle 10g(R2) on EL and RH EL 3,4,5
Oracle 10g(R2) on Fedora 2,3,4
Oracle 10g(R2) on SuSE 9.x
Oracle 10g(R2) on Solaris 10 x86
11g
Oracle 11g(R1) on EL and RH EL 4,5
Oracle 11g(R1) on SLES10 and OpenSuSE
Oracle 11g(R2) on Solaris x86(64)
Oracle 11g(R2) on Solaris 11 Express


Downloads

rlwrap for Fedora (x86)
rlwrap for Redhat (x86)
rlwrap for SuSE (x86)
rlwrap for Redhat (x86_64)
rlwrap for Suse (x86_64)
rlwrap for Solaris 10 (x86)
readline for Solaris 10 (x86)
rlwrap for Solaris (SPARC 64)
readline for Solaris (SPARC 64)


Archives

February 2011
November 2010
January 2010
December 2009
November 2009
February 2009
January 2009
May 2008
April 2008
March 2008
February 2008
January 2008
December 2007
September 2007
August 2007
July 2007
April 2007
March 2007
February 2007
December 2006
November 2006
October 2006
September 2006
July 2006



Wrong count of CPU on HP-UX 11.31

We have two identical machines, two identical HW resources, two identical configurations but there is one significant difference.

Output from machine A:


$ uname -srm
HP-UX B.11.31 ia64

SQL> select CPU_COUNT_CURRENT,CPU_CORE_COUNT_CURRENT,CPU_SOCKET_COUNT_CURRENT,CPU_COUNT_HIGHWATER from v$license;

CPU_COUNT_CURRENT CPU_CORE_COUNT_CURRENT CPU_SOCKET_COUNT_CURRENT CPU_COUNT_HIGHWATER
----------------- ---------------------- ------------------------ -------------------
28 28 28

$ machinfo
CPU info:
8 Intel(R) Itanium 2 9100 series processors (1.6 GHz, 24 MB)
533 MT/s bus, CPU version A1
28 logical processors


# ioscan -kf | grep processor | wc -l
28


So everything seems to be fine (just output from v$license shows misleading info) and we've got 28 cores. No, it's not!

Output from machine B:

$ uname -srm
HP-UX B.11.31 ia64

SQL> select
CPU_COUNT_CURRENT,CPU_CORE_COUNT_CURRENT,CPU_SOCKET_COUNT_CURRENT,CPU_COUNT_HIGHWATER from v$license;

CPU_COUNT_CURRENT CPU_CORE_COUNT_CURRENT CPU_SOCKET_COUNT_CURRENT CPU_COUNT_HIGHWATER
----------------- ---------------------- ------------------------ -------------------
14 14 14
$ machinfo
CPU info:
8 Intel(R) Itanium 2 9100 series processors (1.6 GHz, 24 MB)
533 MT/s bus, CPU version A1
14 logical processors


# ioscan -kf | grep processor | wc -l
14


Machine A shows doubled amount of CPUs than on machine B. Both VPARs have 7x Intel Itanium 2 processors (2 cores each).
So that means the vPar has 14 CPU cores. Machine B shows correct info but A doesn't.
How to find correct information about CPUs in this case? We can use /sbin/vparstatus to clearly see that there are 14 cores assigned to vPar.

Machine A:

[Virtual Partition Resource Summary]
CPU Num Num Memory Granularity
Virtual Partition Name Min/Max CPUs IO ILM CLM
============================== ======= ==== ==== ========== ==========
DB1 1/ 24 14 7 512 512


Machine B:

[Virtual Partition Resource Summary]
CPU Num Num Memory Granularity
Virtual Partition Name Min/Max CPUs IO ILM CLM
============================== ======= ==== ==== ========== ==========
DB2 1/ 24 14 6 512 512


It is very important to know correct information, at least in two cases, performance (monitoring, tuning or troubleshooting) and for correct product licensing.
What is the difference between those two machines? The difference is that machine "B" has latest patches whilst machine "A" even it is patched but (according to swlist) certainly latest patches weren't used. Unfortunately I can't provide wich patch or bundle is fixing this problem for this moment but when I find it then I'll post it right here.

Update:

My theory was correct and the final answer is very simple - multithreading. This type of Itanium Processors have two threads for each core. You can set multithreading on partition level (this has been done on both of machines) and also on OS level by lcpu_attr and there was the difference.
You can verify the settings using kctune |grep lcpu.
So the conclusion is no matter what patches are installed in this case.

Posted on Thursday, February 24, 2011
Share

1 Comment  Add new

hosting said...

it is very very useful article thank you.


Posted on Tuesday, January 17, 2012 11:14 AM


<< Home