I have a few questions as to how to identify if you are running out of
semaphores, and the exact parameters to set. My environment is a 16 way
SGI with 2gb and one four tray five disk MTI at raid 5. I also have 5
single disks not raided across 5 controllers for indexes. The three
applications we are running
When I do a onstat -g wai and look at my sqlexec threads I see 24 to 30
of my 40 to 45 sqlexec threads listed as cond wait(sm_read). Are they
waiting on shared memory due to lack of semaphores? My unix kernal
parameters are set as follows, semmni = 800, semmns = 160000, semmsl =
200. By Informix's definition I have defined 800 semaphore set with 200
semaphores per set with a maximum semaphores of 160000. I have 12 cpu
vps, 30 aio vps and 40 to 45 shm users (identified by onstat -g ntu) +
the additional pio, lio msc vps. Again according to Informix's
definition I should need no more then 40 to 45 semaphore set for my vps,
+ 40 to 45 semaphores for shm users + 5 to 10 for dynamically allocated
vps + 6 for special utilities (45 + 45 + 10 + 6 = 106 semaphore sets).
Any help in solving this problem would be appreciated.
David Henseler