Mapping cpuvp's to IBM virtual processors on pSeri
Posted in 2007
We're currently running a read-only instance of IDS 10.0FC6 on AIX 5.3
TL-05. The logical partition (LPAR) hosting IDS has 2.4 physical CPU's,
divided into 6 logical CPU's. Running nmon's cpu monitor shows CPU 0
at about 50% used, CPU1 used occasionally, and CPU 2-5 are idle. I'm
assuming that my CPUVPS should equal the number of *logical* CPU's. Is
that correct?
IBM Informix Dynamic Server Version 10.00.FC6 -- On-Line -- Up 6
days 00:13:54 -- 380512 Kbytes (stats were reset 105 minutes ago-DT)
Profile
dskreads pagreads bufreads %cached dskwrits pagwrits bufwrits
%cached
542354 567359 107069044 99.49 12757 18870 100973
87.37
isamtot open start read write rewrite delete
commit rollbk
91733072 689270 7162014 62601768 8944 33817 8862
21144 0
gp_read gp_write gp_rewrt gp_del gp_alloc gp_free
gp_curs
0 0 0 0 0 0 0
ovlock ovuserthread ovbuff usercpu syscpu numckpts flushes
0 0 0 1028.98 933.25 23 46
bufwaits lokwaits lockreqs deadlks dltouts ckpwaits
compress seqscans
144605 46 19779528 0 0 10 945
64620
ixda-RA idx-RA da-RA RA-pgsused lchwaits
178985 16216 3 195178 6932
------
excerpts from cat onconfig.usw
# Root Dbspace Configuration
ROOTNAME uswdbs # Root dbspace nameROOTPATH /usr/informix/links/uswdbs # Path for device
containing root dbspace
ROOTOFFSET 0 # Offset of root dbspace into device
(Kbytes)
ROOTSIZE 80000 # Size of root dbspace (Kbytes)
# Disk Mirroring Configuration Parameters
MIRROR 0 # Mirroring flag (Yes = 1, No = 0)
MIRRORPATH # Path for device containing mirroredroot
MIRROROFFSET 0 # Offset into mirrored device (Kbytes)
# Physical Log Configuration
PHYSDBS uswdbs # Location (dbspace) of physical log
PHYSFILE 4000 # Physical log file size (Kbytes)
# Logical Log Configuration
LOGFILES 8 # Number of logical log files
LOGSIZE 2000 # Logical log size (Kbytes)
# Tablespace Tablespace Configuration in Root Dbspace
TBLTBLFIRST 0 # First extent size (Kbytes) (0 =
default)
TBLTBLNEXT 0 # Next extent size (Kbytes) (0 =
default)
# Security
# DBCREATE_PERMISSION:
# By default any user can create a database. Uncomment
DBCREATE_PERMISSON to
# limit database creation to a specific user. Add a new
DBCREATE_PERMISSION
# line for each permitted user.
#DBCREATE_PERMISSION informix
# DB_LIBRARY_PATH:
# When loading a (C or C++) shared object (for a UDR or UDT), IDS checks
that
# the user-specified path starts with one of the directory prefixes
listed in
# the comma-separated list of prefixes in DB_LIBRARY_PATH. The string
# "$INFORMIXDIR/extend" must be included in DB_LIBRARY_PATH in order for
# extensibility and IBM supplied blades to work correctly.
# DB_LIBRARY_PATH $INFORMIXDIR/extend
# IFX_EXTEND_ROLE:
# 0 (or off) => Disable use of EXTEND role to control who can register
# external routines.
# 1 (or on) => Enable use of EXTEND role to control who can register
# external routines. This is the default behaviour.
#
IFX_EXTEND_ROLE 1 # To control the usage of EXTEND role.
# Diagnostics
MSGPATH /logs/online.usw.log # System message log file path
CONSOLE /logs/online.cons.log # System console message path
# To automatically backup logical logs, edit alarmprogram.sh and set
# BACKUPLOGS=Y
ALARMPROGRAM /usr/informix/etc/alarmprogram.sh # Alarm program path
ALRM_ALL_EVENTS 0 # Triggers ALARMPROGRAM for any eventoccur
TBLSPACE_STATS 1 # Maintain tblspace statistics
# System Archive Tape Device
TAPEDEV /dev/null # Tape device path
TAPEBLK 32 # Tape block size (Kbytes)
TAPESIZE 10240 # Maximum amount of data to put on tape
(Kbytes)
# Log Archive Tape Device
LTAPEDEV /dev/null # Log tape device path
LTAPEBLK 32 # Log tape block size (Kbytes)
LTAPESIZE 10240 # Max amount of data to put on log tape
(Kbytes)
# Optical
STAGEBLOB # Informix Dynamic Server staging area
# System Configuration
SERVERNUM 23 # Unique id corresponding to a OnLineinstance
DBSERVERNAME usw_tcp # Name of default database server
DBSERVERALIASES usw # List of alternate dbservernames
NETTYPE # Configure poll thread(s) for nettype
DEADLOCK_TIMEOUT 60 # Max time to wait of lock indistributed env.
RESIDENT 0 # Forced residency flag (Yes = 1, No =
0)
MULTIPROCESSOR 1 # 0 for single-processor, 1 formulti-processor
NUMCPUVPS 6 # Number of user (cpu) vps
SINGLE_CPU_VP 0 # If non-zero, limit number of cpu vpsto one
NOAGE 0 # Process aging
AFF_SPROC 0 # Affinity start processor
AFF_NPROCS 0 # Affinity number of processors
# Shared Memory Parameters
LOCKS 4000 # Maximum number of locks
NUMAIOVPS 1 # Number of IO vps
PHYSBUFF 64 # Physical log buffer size (Kbytes)
LOGBUFF 64 # Logical log buffer size (Kbytes)
CLEANERS 2 # Number of buffer cleaner processes
SHMBASE 0x700000000000000L # Shared memory base address
SHMVIRTSIZE 327680 # initial virtual shared memory segmentsize
SHMADD 65336 # Size of new shared memory segments
(Kbytes)
EXTSHMADD 8192 # Size of new extension shared memory
segments (Kbytes)
SHMTOTAL 0 # Total shared memory (Kbytes).
0=>unlimited
SHMVIRT_ALLOCSEG 0 # Values between 0 and .99 are %, values> 1 are
# KB - when this much virtual memory is
used we
# try to get a new segment. 0 means
"off". 2nd
# parameter is alarm level
CKPTINTVL 300 # Check point interval (in sec)
TXTIMEOUT 300 # Transaction timeout (in sec)
STACKSIZE 128 # Stack size (Kbytes)
# Dynamic Logging
# DYNAMIC_LOGS:
# 2 : server automatically add a new logical log when necessary. (ON)
# 1 : notify DBA to add new logical logs when necessary. (ON)
# 0 : cannot add logical log on the fly. (OFF)
#
# When dynamic logging is on, we can have higher values for
LTXHWM/LTXEHWM,
# because the server can add new logical logs during long transaction
rollback.
# However, to limit the number of new logical logs being added,
LTXHWM/LTXEHWM
# can be set to smaller values.
#
# If dynamic logging is off, LTXHWM/LTXEHWM need to be set to smaller
values
# to avoid long transaction rollback hanging the server due to lack of
logical
# log space, i.e. 50/60 or lower.
#
# In case of system configured with CDR, the difference between LTXHWM
and
# LTXEHWM should be atleast 30% so that we could minimize log overrun
issue.
DYNAMIC_LOGS 2
LTXHWM 70
LTXEHWM 80
# System Page Size
# BUFFSIZE - OnLine no longer supports this configuration parameter.
# To determine the page size used by OnLine on your platform
# see the last line of output from the command, 'onstat -b'.
# Recovery Variables
# OFF_RECVRY_THREADS:
# Number of parallel worker threads during fast recovery or an offline
restore.
# ON_RECVRY_THREADS:
# Number of parallel worker threads during an online restore.
OFF_RECVRY_THREADS 10 # Default number of offline workerthreads
ON_RECVRY_THREADS 1 # Default number of online workerthreads
------
DT
--
Dave Thacker, Senior System