Memory upgraded - now what
Posted in 1999
Topics: Installation, Setup & Upgrades, Storage & Space Management, Connectivity: ESQL/C, 4GL & Embedded SQL, Server Administration, Security, Permissions & Auditing, Transactions, Locking & Isolation, Logging & Checkpoints, Networking & sqlhosts Configuration, Platform-Specific Issues
HP9000 K200
Hp-Ux 10.20
# cat $INFORMIXDIR/etc/*-crINFORMIX-4GL Run Time Facility Version 7.20.UD8
Copyright (C) 1984-1996 Informix Software, Inc.
Informix Dynamic Server Version 7.30.UC7
Copyright (C) 1986-1999 Informix Software, Inc.
INFORMIX-SQL Run Time Facility Version 7.20.UD8
Copyright (C) 1984-1996 Informix Software, Inc.
I have approx 100 users connecting using shared memory, 1 instance with
approx 12 databases with varying work loads. In total the dbspaces occupy
about 5Gb.
I've just upgraded the physical memory of the machine from 256Mb to 512Mb,
I'm wondering what things people would suggest I do to take best advantage
of this memory.
Some info;
hpk200:/usr/informix/etc> cat $ONCONFIG
#**************************************************************************
#
# INFORMIX SOFTWARE, INC.
#
# Title: onconfig.misys1
# Description: INFORMIX-OnLine Configuration Parameters
#
#**************************************************************************
# Root Dbspace Configuration
ROOTNAME rootdbs # Root dbspace nameROOTPATH /dev/online_root # Path for device containing root
dbspace
ROOTOFFSET 0 # Offset of root dbspace into device
(Kbytes)
ROOTSIZE 100000 # Size of root dbspace (Kbytes)
# Disk Mirroring Configuration Parameters
MIRROR 1 # Mirroring flag (Yes = 1, No = 0)
MIRRORPATH /dev/ol_chunks/ol_ch_root_mirror
# Path for device containing mirrored root
MIRROROFFSET 0 # Offset into mirrored device (Kbytes)
# Physical Log Configuration
PHYSDBS dbs_plog # Location (dbspace) of physical log
PHYSFILE 24400 # Physical log file size (Kbytes)
# Logical Log Configuration
LOGFILES 10 # Number of logical log files
LOGSIZE 4000 # Logical log size (Kbytes)
# Diagnostics
MSGPATH /var/adm/online.log # System message log file path
CONSOLE /dev/console # System console message path
ALARMPROGRAM /usr/informix/etc/log_full.sh # Alarm program path
# System Archive Tape Device
TAPEDEV /dev/rmt/1m # Tape device path
TAPEBLK 16 # Tape block size (Kbytes)
TAPESIZE 10000000 # Maximum amount of data to put on tape
(Kbytes)
# Log Archive Tape Device
LTAPEDEV /dev/null # Log tape device path
LTAPEBLK 16 # Log tape block size (Kbytes)
LTAPESIZE 2000000 # Max amount of data to put on log tape
(Kbytes)
# Optical
STAGEBLOB # INFORMIX-OnLine/Optical staging area
# System Configuration
SERVERNUM 1 # Unique id corresponding to aOnLine instance
DBSERVERNAME live1 # Name of default database server
DBSERVERALIASES live2 # List of alternate dbservernames
NETTYPE ipcshm,1,250,CPU # Override sqlhosts nettype parameters
NETTYPE soctcp,1,200,NET # Override sqlhosts nettype parameters
DEADLOCK_TIMEOUT 60 # Max time to wait of lock in distributed
env.
RESIDENT 0 # Forced residency flag (Yes =
1, No = 0)
MULTIPROCESSOR 1 # 0 for single-processor, 1 formulti-processor
NUMCPUVPS 1 # Number of user (cpu) vps
SINGLE_CPU_VP 1 # If non-zero, limit number of cpu vps toone
NOAGE 1 # Process aging
AFF_SPROC 0 # Affinity start processor
AFF_NPROCS 0 # Affinity number of processors
# Shared Memory Parameters
LOCKS 500000 # Maximum number of locks
BUFFERS 20000 # Maximum number of shared buffers
NUMAIOVPS 30 # Number of IO vps
PHYSBUFF 32 # Physical log buffer size (Kbytes)
LOGBUFF 32 # Logical log buffer size (Kbytes)LOGSMAX 25 # Maximum number of logical log files
CLEANERS 8 # Number of buffer cleaner processes
SHMBASE 0x0 # Shared memory base address
SHMVIRTSIZE 81928 # initial virtual shared memory segment size
SHMADD 8192 # Size of new shared memory segments
(Kbytes)
SHMTOTAL 0 # Total shared memory (Kbytes). 0=>unlimited
CKPTINTVL 200 # Check point interval (in sec)
LRUS 8 # Number of LRU queues
LRU_MAX_DIRTY 10 # LRU percent dirty begin cleaning limit
LRU_MIN_DIRTY 5 # LRU percent dirty end cleaning limit
LTXHWM 50 # Long transaction high water markpercentage
LTXEHWM 60 # Long transaction high water mark
(exclusive)
TXTIMEOUT 0x12c # Transaction timeout (in sec)
STACKSIZE 32 # Stack size (Kbytes)
# 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 worker threads
# Data Replication Variables
# DRAUTO: 0 manual, 1 retain type, 2 reverse type
DRAUTO 0 # DR automatic switchover
DRINTERVAL 30 # DR max time between DR buffer flushes (in
sec)
DRTIMEOUT 30 # DR network timeout (in sec)DRLOSTFOUND /usr/informix/etc/dr.lostfound # DR lost+found file path
# Read Ahead Variables
RA_PAGES 32 # Number of pages to attempt to read ahead
RA_THRESHOLD 8 # Number of pages left before next group
DBSPACETEMP dbs_temp1:dbs_temp2:dbs_temp3:dbs_temp4:dbs_temp5
# DUMP*:
# The following parameters control the type of diagnostics information which
# is preserved when an unanticipated error condition (assertion failure)
occurs
# during OnLine operations.
# For DUMPSHMEM, DUMPGCORE and DUMPCORE 1 means Yes, 0 means No.
DUMPDIR /dbwork # Preserve diagnostics in this directory
DUMPSHMEM 1 # Dump a copy of shared memory
DUMPGCORE 0 # Dump a core image using 'gcore'
DUMPCORE 0 # Dump a core image (Warning:this aborts
OnLine)
DUMPCNT 1 # Number of shared memory or gcore dumps for
# a single user's session
# ADT*
# The following parameters control the type and level of secure auditing
# present in the OnLine system. By default, ADTMODE is 0 and auditing
#
Tony Flaherty <aef@mfs.misys.co.uk> wrote in message
news:940507474.18432.1.nnrp-08.c1ed1f69@news.demon.co.uk...
> HP9000 K200
Hi Tony ! See below ...
> Hp-Ux 10.20
>
> # cat $INFORMIXDIR/etc/*-cr> INFORMIX-4GL Run Time Facility Version 7.20.UD8
> Copyright (C) 1984-1996 Informix Software, Inc.
> Informix Dynamic Server Version 7.30.UC7
> Copyright (C) 1986-1999 Informix Software, Inc.
> INFORMIX-SQL Run Time Facility Version 7.20.UD8
> Copyright (C) 1984-1996 Informix Software, Inc.
>
> I have approx 100 users connecting using shared memory, 1 instance with
> approx 12 databases with varying work loads. In total the dbspaces occupy
> about 5Gb.
>
> I've just upgraded the physical memory of the machine from 256Mb to 512Mb,
> I'm wondering what things people would suggest I do to take best advantage
> of this memory.
>
> Some info;
>
> hpk200:/usr/informix/etc> cat $ONCONFIG
>
#**************************************************************************
> #
> # INFORMIX SOFTWARE, INC.
> #
> # Title: onconfig.misys1
> # Description: INFORMIX-OnLine Configuration Parameters
> #
>
#**************************************************************************
>
> # Root Dbspace Configuration
>
> ROOTNAME rootdbs # Root dbspace name> ROOTPATH /dev/online_root # Path for device containing root
> dbspace
> ROOTOFFSET 0 # Offset of root dbspace intodevice
> (Kbytes)
> ROOTSIZE 100000 # Size of root dbspace (Kbytes)>
> # Disk Mirroring Configuration Parameters
>
> MIRROR 1 # Mirroring flag (Yes = 1, No = 0)
> MIRRORPATH /dev/ol_chunks/ol_ch_root_mirror
> # Path for device containing mirrored root
> MIRROROFFSET 0 # Offset into mirrored device (Kbytes)>
> # Physical Log Configuration
>
> PHYSDBS dbs_plog # Location (dbspace) of physical log
> PHYSFILE 24400 # Physical log file size (Kbytes)>
> # Logical Log Configuration
>
> LOGFILES 10 # Number of logical log files
> LOGSIZE 4000 # Logical log size (Kbytes)>
> # Diagnostics
>
> MSGPATH /var/adm/online.log # System message log file path
> CONSOLE /dev/console # System console message path
> ALARMPROGRAM /usr/informix/etc/log_full.sh # Alarm program path>
> # System Archive Tape Device
>
> TAPEDEV /dev/rmt/1m # Tape device path
> TAPEBLK 16 # Tape block size (Kbytes)
> TAPESIZE 10000000 # Maximum amount of data to put on tape
> (Kbytes)>
> # Log Archive Tape Device
>
> LTAPEDEV /dev/null # Log tape device path
> LTAPEBLK 16 # Log tape block size (Kbytes)
> LTAPESIZE 2000000 # Max amount of data to put on log tape
> (Kbytes)>
> # Optical
>
> STAGEBLOB # INFORMIX-OnLine/Optical staging area
>
> # System Configuration
>
> SERVERNUM 1 # Unique id corresponding to a> OnLine instance
> DBSERVERNAME live1 # Name of default database server
> DBSERVERALIASES live2 # List of alternate dbservernames
> NETTYPE ipcshm,1,250,CPU # Override sqlhosts nettype parameters
> NETTYPE soctcp,1,200,NET # Override sqlhosts nettype parameters
> DEADLOCK_TIMEOUT 60 # Max time to wait of lock in distributed
> env.
> RESIDENT 0 # Forced residency flag (Yes =
> 1, No = 0)
Set to RESIDENT=1.
>
> MULTIPROCESSOR 1 # 0 for single-processor, 1 for> multi-processor
> NUMCPUVPS 1 # Number of user (cpu) vps
> SINGLE_CPU_VP 1 # If non-zero, limit number of cpu vpsto
Is this correct ? How you achieve both MULTIPROCESSOR and SINGLE_CPU_VP set
to 1 ? How many CPUs you have ?
> one
>
> NOAGE 1 # Process aging
> AFF_SPROC 0 # Affinity start processor
> AFF_NPROCS 0 # Affinity number of processors>
> # Shared Memory Parameters
>
> LOCKS 500000 # Maximum number of locks
> BUFFERS 20000 # Maximum number of shared buffers
Start with BUFFERS=100000 for 512 K memory if Informix is only application
on this server.
> NUMAIOVPS 30 # Number of IO vps
> PHYSBUFF 32 # Physical log buffer size (Kbytes)
> LOGBUFF 32 # Logical log buffer size (Kbytes)> LOGSMAX 25 # Maximum number of logical log files
> CLEANERS 8 # Number of buffer cleaner processes
> SHMBASE 0x0 # Shared memory base address
> SHMVIRTSIZE 81928 # initial virtual shared memory segmentsize
> SHMADD 8192 # Size of new shared memory segments
> (Kbytes)
> SHMTOTAL 0 # Total shared memory (Kbytes).
0=>unlimited
> CKPTINTVL 200 # Check point interval (in sec)
> LRUS 8 # Number of LRU queues
For 100000 buffers set about 48 LRUS.
> LRU_MAX_DIRTY 10 # LRU percent dirty begin cleaning limit
> LRU_MIN_DIRTY 5 # LRU percent dirty end cleaning limit
> LTXHWM 50 # Long transaction high water mark> percentage
> LTXEHWM 60 # Long transaction high water mark
> (exclusive)
> TXTIMEOUT 0x12c # Transaction timeout (in sec)
> STACKSIZE 32 # Stack size (Kbytes)>
> # 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 worker> threads
> ON_RECVRY_THREADS 1 # Default number of online workerthreads
>
> # Data Replication Variables
> # DRAUTO: 0 manual, 1 retain type, 2 reverse type
> DRAUTO 0 # DR automatic switchover
> DRINTERVAL 30 # DR max time between DR buffer flushes
(in
> sec)
> DRTIMEOUT 30 # DR network timeout (in sec)> DRLOSTFOUND /usr/informix/etc/dr.lostfound # DR lost+found file path
>
> # Read Ahead Variables
> RA_PAGES 32 # Number of pages to attempt to read ahead
> RA_THRESHOLD 8 # Number of pages left before next group>
>
> DBSPACETEMP dbs_temp1:dbs_temp2:dbs_temp3:dbs_temp4:dbs_temp5
>
> # DUMP*:
> # The following parameters control the type of diagnostics informat
Hey Tom, system looks good to me. I'd say you could take 100MB of that
new memory and allocate an additional 50,000 buffers but truth be told
with a 96% cache read ratio and 90%+ write cache ratio you really don't
need it. Look at onstat -g seg, since you are on HP and shared memory
segments are critical there, and see if there are more than one Virtual
class shared memory segment. If so fold them into the main virtual
segment by adding their sizes into SHMVIRTSIZE so that there will be only
one virtual segment.
Art S. Kagel
Tony Flaherty wrote:
>
> HP9000 K200
> Hp-Ux 10.20
>
> # cat $INFORMIXDIR/etc/*-cr> INFORMIX-4GL Run Time Facility Version 7.20.UD8
> Copyright (C) 1984-1996 Informix Software, Inc.
> Informix Dynamic Server Version 7.30.UC7
> Copyright (C) 1986-1999 Informix Software, Inc.
> INFORMIX-SQL Run Time Facility Version 7.20.UD8
> Copyright (C) 1984-1996 Informix Software, Inc.
>
> I have approx 100 users connecting using shared memory, 1 instance with
> approx 12 databases with varying work loads. In total the dbspaces occupy
> about 5Gb.
>
> I've just upgraded the physical memory of the machine from 256Mb to 512Mb,
> I'm wondering what things people would suggest I do to take best advantage
> of this memory.
>
> Some info;
>
> hpk200:/usr/informix/etc> cat $ONCONFIG
> #**************************************************************************
> #
> # INFORMIX SOFTWARE, INC.
> #
> # Title: onconfig.misys1
> # Description: INFORMIX-OnLine Configuration Parameters
> #
> #**************************************************************************
>
> # Root Dbspace Configuration
>
> ROOTNAME rootdbs # Root dbspace name> ROOTPATH /dev/online_root # Path for device containing root
> dbspace
> ROOTOFFSET 0 # Offset of root dbspace into device
> (Kbytes)
> ROOTSIZE 100000 # Size of root dbspace (Kbytes)>
> # Disk Mirroring Configuration Parameters
>
> MIRROR 1 # Mirroring flag (Yes = 1, No = 0)
> MIRRORPATH /dev/ol_chunks/ol_ch_root_mirror
> # Path for device containing mirrored root
> MIRROROFFSET 0 # Offset into mirrored device (Kbytes)>
> # Physical Log Configuration
>
> PHYSDBS dbs_plog # Location (dbspace) of physical log
> PHYSFILE 24400 # Physical log file size (Kbytes)>
> # Logical Log Configuration
>
> LOGFILES 10 # Number of logical log files
> LOGSIZE 4000 # Logical log size (Kbytes)>
> # Diagnostics
>
> MSGPATH /var/adm/online.log # System message log file path
> CONSOLE /dev/console # System console message path
> ALARMPROGRAM /usr/informix/etc/log_full.sh # Alarm program path>
> # System Archive Tape Device
>
> TAPEDEV /dev/rmt/1m # Tape device path
> TAPEBLK 16 # Tape block size (Kbytes)
> TAPESIZE 10000000 # Maximum amount of data to put on tape
> (Kbytes)>
> # Log Archive Tape Device
>
> LTAPEDEV /dev/null # Log tape device path
> LTAPEBLK 16 # Log tape block size (Kbytes)
> LTAPESIZE 2000000 # Max amount of data to put on log tape
> (Kbytes)>
> # Optical
>
> STAGEBLOB # INFORMIX-OnLine/Optical staging area
>
> # System Configuration
>
> SERVERNUM 1 # Unique id corresponding to a> OnLine instance
> DBSERVERNAME live1 # Name of default database server
> DBSERVERALIASES live2 # List of alternate dbservernames
> NETTYPE ipcshm,1,250,CPU # Override sqlhosts nettype parameters
> NETTYPE soctcp,1,200,NET # Override sqlhosts nettype parameters
> DEADLOCK_TIMEOUT 60 # Max time to wait of lock in distributed
> env.
> RESIDENT 0 # Forced residency flag (Yes =
> 1, No = 0)
>
> MULTIPROCESSOR 1 # 0 for single-processor, 1 for> multi-processor
> NUMCPUVPS 1 # Number of user (cpu) vps
> SINGLE_CPU_VP 1 # If non-zero, limit number of cpu vps to> one
>
> NOAGE 1 # Process aging
> AFF_SPROC 0 # Affinity start processor
> AFF_NPROCS 0 # Affinity number of processors>
> # Shared Memory Parameters
>
> LOCKS 500000 # Maximum number of locks
> BUFFERS 20000 # Maximum number of shared buffers
> NUMAIOVPS 30 # Number of IO vps
> PHYSBUFF 32 # Physical log buffer size (Kbytes)
> LOGBUFF 32 # Logical log buffer size (Kbytes)> LOGSMAX 25 # Maximum number of logical log files
> CLEANERS 8 # Number of buffer cleaner processes
> SHMBASE 0x0 # Shared memory base address
> SHMVIRTSIZE 81928 # initial virtual shared memory segment size
> SHMADD 8192 # Size of new shared memory segments
> (Kbytes)
> SHMTOTAL 0 # Total shared memory (Kbytes). 0=>unlimited
> CKPTINTVL 200 # Check point interval (in sec)
> LRUS 8 # Number of LRU queues
> LRU_MAX_DIRTY 10 # LRU percent dirty begin cleaning limit
> LRU_MIN_DIRTY 5 # LRU percent dirty end cleaning limit
> LTXHWM 50 # Long transaction high water mark> percentage
> LTXEHWM 60 # Long transaction high water mark
> (exclusive)
> TXTIMEOUT 0x12c # Transaction timeout (in sec)
> STACKSIZE 32 # Stack size (Kbytes)>
> # 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 worker> threads
> ON_RECVRY_THREADS 1 # Default number of online worker threads>
> # Data Replication Variables
> # DRAUTO: 0 manual, 1 retain type, 2 reverse type
> DRAUTO 0 # DR automatic switchover
> DRINTERVAL 30 # DR max time between DR buffer flushes (in
> sec)
> DRTIMEOUT 30 # DR network timeout (in sec)> DRLOSTFOUND /usr/informix/etc/dr.lostfound # DR lost+found file path
>
> # Read Ahead Variables
> RA_PAGES 32 # Number of pages to attempt to read ahead
> RA_THRESHOLD 8 # Number of pages left before next group>
> DBSPACETEMP dbs_temp1:dbs_temp2:dbs_temp3:dbs_temp4:dbs_temp5
>
> # DUMP*:@@N
Related threads
- onbar -c -F in Windows Informix instance
- Anyone... SQLCODE=-668, ISAM error=-1
- Not using the 100% logical log page size alloacted to informix