Performance advice
Posted in 2004
Topics: High Availability & Replication, Backup & Restore, Performance & Tuning, Storage & Space Management, Server Administration, Transactions, Locking & Isolation, Logging & Checkpoints, Networking & sqlhosts Configuration, Versions, Editions & End-of-Life
Hi all! Throwing myslef on your mercy here - I have a RS6000 with 4
processors running IDS 9.40.FC2 and I just went from 1 gig of memory
to 8 gig.
I am wondering how I should edit my onconfig for performance - to both
take advantage of the new memory and make up for past flubbishness of
other admins. I know this is probably a lot to ask, but I am really
not up to speed yet on IDS (but I am working on it!)
Thanks in advance for your patience and wisdom!
#**************************************************************************
#
# INFORMIX SOFTWARE, INC.
#
# Title: onconfig.std
# Description: Informix Dynamic Server 2000 Configuration Parameters
#
#**************************************************************************
# 11/05/2002 Decreased tapesize param from 21G to 15G due to failure
of
# ontape backup. BGF
#**************************************************************************
# Root Dbspace Configuration
ROOTNAME rootdbs # Root dbspace name
ROOTPATH /dev/rootdbs # Path for device containing rootdbspace
ROOTOFFSET 128 # Offset of root dbspace into device
(Kbytes)
ROOTSIZE 499872 # 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 physdbs_new # Location (dbspace) of physical log
PHYSFILE 199000 # Physical log file size (Kbytes)
# Logical Log Configuration
DYNAMIC_LOGS 2
LOGFILES 120 # Number of logical log files
LOGSIZE 1000 # Logical log size (Kbytes)
# Diagnostics
MSGPATH /u/informix/online.log # System message log file path
CONSOLE /dev/console # System console message path
##ALARMPROGRAM /u/informix/etc/log_full.sh # Alarm program path
ALARMPROGRAM /u/informix/etc/no_log.sh # Alarm program path
TBLSPACE_STATS 1 # Maintain tblspace statistics
# System Archive Tape Device
# testdev:
TAPEDEV scout:/dev/rmt0 # Tape device path
#TAPEDEV /dev/null # Tape device path
TAPEBLK 256 # Tape block size (Kbytes)
TAPESIZE 15000000 # Maximum amount of data to put on
tape (Kbytes)#TAPESIZE 21000000 # Maximum amount of data to put on tape (Kbytes)
# Log Archive Tape Device
#LTAPEDEV /dev/null # Log tape device path
# LTAPEDEV /archive/informix_backup/ll # Log tape device path
LTAPEDEV /dbwork/informix_backup/ll # Log tape device path
LTAPEBLK 1024 # Log tape block size (Kbytes)
LTAPESIZE 2000000 # Max amount of data to put on log
tape (Kbytes)
# Optical
STAGEBLOB # Informix Dynamic Server 2000 staging
area
# System Configuration
SERVERNUM 1 # Unique id corresponding to a OnLineinstance
DBSERVERNAME dbscout # Name of default database server
DBSERVERALIASES dbscouttcp # List of alternate dbservernames
NETTYPE soctcp,2,150,CPU
NETTYPE ipcshm,2,150,NET
#NETTYPE soctcp,,,NET # Configure poll thread(s) for nettype
#NETTYPE ipcshm,2,150,CPU # 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 3 # Number of user (cpu) vps
#NUMCPUVPS 1 # Number of user (cpu) vps
SINGLE_CPU_VP 0 # If non-zero, limit number of cpu vpsto one
NOAGE 1 # Process aging
AFF_SPROC 0 # Affinity start processor
AFF_NPROCS 0 # Affinity number of processors
# Shared Memory Parameters
LOCKS 200000 # Maximum number of locks
BUFFERS 150000 # Maximum number of shared buffers
NUMAIOVPS 2 # Number of IO vps
PHYSBUFF 128 # Physical log buffer size (Kbytes)
LOGBUFF 64 # Logical log buffer size (Kbytes)
CLEANERS 64 # Number of buffer cleaner processes
SHMBASE 0x700000000000000 # Shared memory base address
SHMVIRTSIZE 1048576 # initial virtual shared memorysegment size
#SHMVIRTSIZE 400000 # -x- # initial virtual shared memory
segment size
SHMADD 163840 # Size of new shared memory segments
(Kbytes)
SHMTOTAL 7864320
#SHMTOTAL 0 # -x- # Total shared memory (Kbytes).
0=>unlimited
CKPTINTVL 1800 # Check point interval (in sec)
LRUS 64 # Number of LRU queues
LRU_MAX_DIRTY 2.000000 # LRU percent dirty begin cleaninglimit
LRU_MIN_DIRTY 1.000000 # LRU percent dirty end cleaning limit#LRU_MAX_DIRTY 2 # LRU percent dirty begin cleaning limit
#LRU_MIN_DIRTY 1 # 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)
#STACKSIZE 64 # Stack size (Kbytes) -! BEFORE 030204-
STACKSIZE 128 # Stack size (Kbytes) -! AFTER
030204-
# 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 3 # Default number of online workerthreads
# Data Replication Variables
DRINTERVAL 30 # DR max time between DR buffer
flushes (in sec)
DRTIMEOUT 30 # DR network timeout (in sec)
DRLOSTFOUND /u/informix/lostfound # DR lost+found file path
# CDR Variables
CDR_EVALTHREADS 1,1 # evaluator threads
(per-cpu-vp,additional)
CDR_DSLOCKWAIT 5 # DS lockwait timeout (seconds)
CDR_QUEUEMEM 4096 # Maximum amount of memory for any CDR
queue (Kbytes)
CDR_NIFCOMPRESS 0 # Link level compression (-1 never, 0
none, 9 max)
# Backup/Restore variables
#BAR_ACT_LOG /tmp/bar_act.log
BAR_MAX_BACKUP 0
BAR_RETRY 1
BAR_NB_XPORT_COUNT 10
BAR_XFER_BUF_SIZE 31
RESTARTABLE_RESTORE off
BAR_PROGRESS_FREQ 0
# Informix Storage Manager variables
ISM_DATA_POOL ISMData
ISM_LOG_POOL ISMLogs
# Read Ahead Variables@@N
Try increasing the buffers and monitoring onstat -p, if you are
allocating additional segments (onstat -g seg) then up your shmvirtsize.
AIX has (had??) a hard limit of 10 segments for any process
sumGirl wrote:
>
> Hi all! Throwing myslef on your mercy here - I have a RS6000 with 4
> processors running IDS 9.40.FC2 and I just went from 1 gig of memory
> to 8 gig.
>
> I am wondering how I should edit my onconfig for performance - to both
> take advantage of the new memory and make up for past flubbishness of
> other admins. I know this is probably a lot to ask, but I am really
> not up to speed yet on IDS (but I am working on it!)
>
> Thanks in advance for your patience and wisdom!
>
> #**************************************************************************
> #
> # INFORMIX SOFTWARE, INC.
> #
> # Title: onconfig.std
> # Description: Informix Dynamic Server 2000 Configuration Parameters
> #
> #**************************************************************************
> # 11/05/2002 Decreased tapesize param from 21G to 15G due to failure
> of
> # ontape backup. BGF
> #**************************************************************************>
> # Root Dbspace Configuration
>
> ROOTNAME rootdbs # Root dbspace name
> ROOTPATH /dev/rootdbs # Path for device containing root> dbspace
> ROOTOFFSET 128 # Offset of root dbspace into device
> (Kbytes)
> ROOTSIZE 499872 # Size of root dbspace (Kbytes)>
> # Disk Mirroring Configuration Parameters
>
> MIRROR 0 # Mirroring flag (Yes = 1, No = 0)
> MIRRORPATH # Path for device containing mirrored> root
> MIRROROFFSET 0 # Offset into mirrored device (Kbytes)>
> # Physical Log Configuration
>
> PHYSDBS physdbs_new # Location (dbspace) of physical log
> PHYSFILE 199000 # Physical log file size (Kbytes)>
> # Logical Log Configuration
>
> DYNAMIC_LOGS 2
> LOGFILES 120 # Number of logical log files
> LOGSIZE 1000 # Logical log size (Kbytes)>
> # Diagnostics
>
> MSGPATH /u/informix/online.log # System message log file path
> CONSOLE /dev/console # System console message path
> ##ALARMPROGRAM /u/informix/etc/log_full.sh # Alarm program path
> ALARMPROGRAM /u/informix/etc/no_log.sh # Alarm program path
> TBLSPACE_STATS 1 # Maintain tblspace statistics>
> # System Archive Tape Device
> # testdev:
> TAPEDEV scout:/dev/rmt0 # Tape device path
> #TAPEDEV /dev/null # Tape device path
> TAPEBLK 256 # Tape block size (Kbytes)
> TAPESIZE 15000000 # Maximum amount of data to put on
> tape (Kbytes)> #TAPESIZE 21000000 # Maximum amount of data to put on tape (Kbytes)
>
> # Log Archive Tape Device
>
> #LTAPEDEV /dev/null # Log tape device path
> # LTAPEDEV /archive/informix_backup/ll # Log tape device path
> LTAPEDEV /dbwork/informix_backup/ll # Log tape device path
> LTAPEBLK 1024 # Log tape block size (Kbytes)
> LTAPESIZE 2000000 # Max amount of data to put on log
> tape (Kbytes)>
> # Optical
>
> STAGEBLOB # Informix Dynamic Server 2000 staging
> area
>
> # System Configuration
>
> SERVERNUM 1 # Unique id corresponding to a OnLine> instance
> DBSERVERNAME dbscout # Name of default database server
> DBSERVERALIASES dbscouttcp # List of alternate dbservernames
> NETTYPE soctcp,2,150,CPU
> NETTYPE ipcshm,2,150,NET> #NETTYPE soctcp,,,NET # Configure poll thread(s) for nettype
> #NETTYPE ipcshm,2,150,CPU # Configure poll thread(s) for nettype
> 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 3 # Number of user (cpu) vps> #NUMCPUVPS 1 # Number of user (cpu) vps
>
> SINGLE_CPU_VP 0 # 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 200000 # Maximum number of locks
> BUFFERS 150000 # Maximum number of shared buffers
> NUMAIOVPS 2 # Number of IO vps
> PHYSBUFF 128 # Physical log buffer size (Kbytes)
> LOGBUFF 64 # Logical log buffer size (Kbytes)
> CLEANERS 64 # Number of buffer cleaner processes
> SHMBASE 0x700000000000000 # Shared memory base address
> SHMVIRTSIZE 1048576 # initial virtual shared memory> segment size
> #SHMVIRTSIZE 400000 # -x- # initial virtual shared memory
> segment size
> SHMADD 163840 # Size of new shared memory segments
> (Kbytes)
> SHMTOTAL 7864320
> #SHMTOTAL 0 # -x- # Total shared memory (Kbytes).
> 0=>unlimited
> CKPTINTVL 1800 # Check point interval (in sec)
> LRUS 64 # Number of LRU queues
> LRU_MAX_DIRTY 2.000000 # LRU percent dirty begin cleaning> limit
> LRU_MIN_DIRTY 1.000000 # LRU percent dirty end cleaning limit> #LRU_MAX_DIRTY 2 # LRU percent dirty begin cleaning limit
> #LRU_MIN_DIRTY 1 # 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)
> #STACKSIZE 64 # Stack size (Kbytes) -! BEFORE 030204-
> STACKSIZE 128 # Stack size (Kbytes) -! AFTER
> 030204->
> # 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 3 # Default number of online worker> threads
>
> # Data Replication Variables
> DRINTERVAL 30 # DR max time between DR buffer
> flushes (in sec)
> DRTIMEOUT 30 # DR network timeout (in sec)
> DRLOSTFOUND /u/informix/lostfound # DR lo
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