Re: Informix v7.12 and DEC ALPHA 2100
Posted in 1997
In article <5lg45a$fm2@cssun.mathcs.emory.edu>, Ken McCoy
<kenm@apscn.k12.ar.us> writes
>
>I've just done an upgrade on a DEC ALPHA 2100 with 2 CPUS and a GIG
>of memory from Informix 5.05 to 7.12 and performance is terrible!!!!
>
>
>I would appreciate ANY advice anyone can provide.
>
>Below I have included a copy of the onconfig file and selected
>system output from several time periods.
>
>
>#**************************************************************************
>#
># INFORMIX SOFTWARE, INC.
>#
># Title: onconfig.nwcoop
># Description: INFORMIX-OnLine Configuration Parameters
>#**************************************************************************
>
># Root Dbspace Configuration
>
>ROOTNAME rootdbs # Root dbspace name>ROOTPATH /dev/online/nw_dbs_01 # Path for device containing
>root dbspace
>ROOTOFFSET 10 # Offset of root dbspace into device
>(Kbytes)
>ROOTSIZE 512502 # 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 rootdbs # Location (dbspace) of physical log
>PHYSFILE 180000 # Physical log file size (Kbytes)>
># Logical Log Configuration
>
>LOGFILES 15 # Number of logical log files
>LOGSIZE 25000 # Logical log size (Kbytes)>
># Diagnostics
>
>MSGPATH /usr/informix7/online.log.nwcoop # System message log
>file path
>CONSOLE /dev/console # System console message path
>ALARMPROGRAM # Alarm program path>
># System Archive Tape Device
>
>TAPEDEV /online_arc/nwcoop/7level0 # Tape device path
>TAPEBLK 16 # Tape block size (Kbytes)
Try increasing to 64K - With a Sun Ultrasparc 2x170Mz CPU machine
and a DLT4000 which handles 20Gb tapes (40Gb compressed) I'm
getting 56Mb backed up in 14s! i.e. 14,400Mb/hr. Yes a speed
of >14Gb/hr!!!.
>TAPESIZE 99999990 # Maximum amount of data to put on
>tape (Kbytes) I assume you have a lot of data if the tape size is 99Gb!
>
># Log Archive Tape Device
>
>LTAPEDEV /online_arc/nwcoop/7trans.log # Log tape device path
>LTAPEBLK 16 # Log tape block size (Kbytes)
Again up to 64K...
>LTAPESIZE 99999990 # Max amount of data to put on log
>tape (Kbytes)>
># Optical
>
>STAGEBLOB # INFORMIX-OnLine/Optical staging
>area
>
># System Configuration
>
>SERVERNUM 10 # Unique id corresponding to a OnLine>instance
>DBSERVERNAME nwcoop # Name of default database server
>DBSERVERALIASES # List of alternate dbservernames
>NETTYPE soctcp,1,200,CPU # Override sqlhosts nettype>parameters
200 users connecting over the network via TCP/IP? If they are 4GL
or ESQL/C users logging into the machine then change scotcp to socshm
i.e. use shared memory connection rather than TCP/IP connetion
>DEADLOCK_TIMEOUT 60 # Max time to wait of lock in>distributed env.
>RESIDENT 1 # Forced residency flag (Yes = 1, No
>= 0)
>
>MULTIPROCESSOR 0 # 0 for single-processor, 1 for>multi-processor
Try setting this to 1
>NUMCPUVPS 1 # Number of user (cpu) vps
this is 2
>SINGLE_CPU_VP 1 # If non-zero, limit number of cpu>vps to one
and this to 0 i.e. run 2 CPU VPs.
>
>NOAGE 1 # Process aging
>AFF_SPROC 0 # Affinity start processor
Try AFF_SPROC 1
>AFF_NPROCS 0 # Affinity number of processors>
AFF_NPROCS 2 i.e. Affine pin both CPU VPs to physical CPUs.
># Shared Memory Parameters
>
>LOCKS 100000 # Maximum number of locks
>BUFFERS 30720 # Maximum number of shared buffers 1Gb of memory on the machine and you are only using 40Mb for caching.
Try setting this to 100000 i.e. use 100Mb for caching.
>NUMAIOVPS 4 # Number of IO vps
Make sure that all online chunks are on raw devices i.e. ls -l
<device> gives
crw-rw-rw-
^
|
character devices i.e. raw disk..
Then check the release notes under $INFORMIXDIR/release on how to
enable KAIO (Kernel Asynchorous IO). If this is enables (onstat -g ath
will show one kaio thread per PU VP. Then you can set NUMAIOVPS = 1
and the AIO VP will only be used to write to the online.log and
console.
>PHYSBUFF 160 # Physical log buffer size (Kbytes)
>LOGBUFF 32 # Logical log buffer size (Kbytes)>LOGSMAX 75 # Maximum number of logical log files
>CLEANERS 5 # Number of buffer cleaner processes
Set this to the number of CPU VPs i.e. 2.
>SHMBASE 0x800000 # Shared memory base address
>SHMVIRTSIZE 163840 # Initial virtual shared memory>segment size
Run onstat -g seg and total the used column for entries of class V.
i.e. shared memory segments in the virtual portion of shared memory.
Add 10Mb to allow for paek loads and set SHMVIRTSIZE to this value.
>SHMADD 32768 # Size of new shared memory segments
>(Kbytes)
>SHMTOTAL 0 # Total shared memory (Kbytes).
>0=>unlimited
>CKPTINTVL 420 # Check point interval (in sec)
>LRUS 6 # Number of LRU queues
>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 64 # 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 ma