Long spins or onstst -g spi. Need any information.
Posted in 1999
Topics: Transactions, Locking & Isolation, Internationalization & Character Sets
Hi Informixers
Can somebody provide me any information about "onstat -g spi" command.
I'm very interested in an information about "Name" column. What does
the different names really mean ?
Okay my system has long spins
onstat -g sch
VP Scheduler Statistics:
vp pid class semops busy waits spins/wait
1 1622 cpu 40 40 1001
2 1639 adm 0 0 0
3 1641 cpu 60 60 1001
4 1642 lio 4 0 0
5 1646 pio 4 0 0
6 1648 aio 764 0 0
7 1659 msc 34663 0 0
8 1667 aio 712 0 0
9 1671 soc 2 2 1000
10 1758 lio 1 0 0
11 1759 pio 2 0 0
However how can I recognize what's going on
from onstat -g spi output ?
Spin locks with waits:
Num Waits Num Loops Avg Loop/Wait Name
12203 14492 1.19 mtcb sleeping_lock
9 9 1.00 mtcb tcb_queue_lock
835 938 1.12 mtcb mutex_list_lock
254 263 1.04 mtcb cond_list_lock
31 926 29.87 mtcb notify_lock
11409 17405 1.53 vproc vp_lock, id = 1
14466 21285 1.47 vproc vp_lock, id = 3
13 1075 82.69 vproc vp_lock, id = 7
118 538 4.56 mutex lock, name = rstcb
33 64 1.94 mutex lock, name = session
1 1 1.00 mutex lock, name = timestmp
24 44 1.83 mutex lock, name = deadlock
33 63 1.91 mutex lock, name = asf_global
19 26 1.37 mutex lock, name = guard
5 5 1.00 mutex lock, name = ddh chain
4 505 126.25 mutex lock, name = ddh chain
4 505 126.25 mutex lock, name = ddh chain
17 19 1.12 mutex lock, name = MGM mutex
1 1 1.00 mutex lock, name = vpc
1 3 3.00 mutex lock, name = vpc
140 233 1.66 mutex lock, name = sm_bflist
9 14 1.56 mutex lock, name = sm_close
100 149 1.49 mutex lock, name = sm_bcnt
157 246 1.57 mutex lock, name = sm_bflist
10 10 1.00 mutex lock, name = sm_close
102 157 1.54 mutex lock, name = sm_bcnt
1 3 3.00 mutex lock, name = log
1 1 1.00 mutex lock, name = pt_100002
73 93 1.27 mutex lock, name = pt_200040
1 3 3.00 mutex lock, name = pt_200046
1 1 1.00 mutex lock, name = pt_20006a
24 29 1.21 mutex lock, name = pt_200077
9 10 1.11 mutex lock, name = pt_200065
14 2952 210.86 tcb lock, tid = 5
3 1760 586.67 tcb lock, tid = 11
2 1700 850.00 tcb lock, tid = 13
1 81 81.00 tcb lock, tid = 15
361 4013 11.12 shmcb sh_lock
46708 104866 2.25 pool po_lock, name = global
5695 11739 2.06 pool po_lock, name = mt
3 28 9.33 pool po_lock, name = aio
877 1934 2.21 pool po_lock, name = gls
78 87 1.12 fast mutex, lockhash[720]
8 8 1.00 fast mutex, lru-0
2 2 1.00 fast mutex, lru-2
12 15 1.25 fast mutex, lru-4
15 46 3.07 fast mutex, lru-6
10 136 13.60 fast mutex, lru-8
2 2 1.00 fast mutex, lru-10
4 4 1.00 fast mutex, lru-14
15 16 1.07 fast mutex, lru-16
8 11 1.38 fast mutex, lru-18
2 4 2.00 fast mutex, lru-20
11 1010 91.82 fast mutex, lru-22
2 22 11.00 fast mutex, bf[7]
6 7 1.17 fast mutex, bf[313]
67 198 2.96 fast mutex, bf[325]
28 550 19.64 fast mutex, bf[327]
17 27 1.59 fast mutex, bf[329]
1 12 12.00 fast mutex, bf[331]
5 12 2.40 fast mutex, bf[335]
11 1010 91.82 fast mutex, lru-22
2 22 11.00 fast mutex, bf[7]
6 7 1.17 fast mutex, bf[313]
67 198 2.96 fast mutex, bf[325]
28 550 19.64 fast mutex, bf[327]
17 27 1.59 fast mutex, bf[329]
1 12 12.00 fast mutex, bf[331]
5 12 2.40 fast mutex, bf[335]
1 1 1.00 fast mutex, bf[10718]
6 6 1.00 fast mutex, bf[10744]
54 83 1.54 fast mutex, SB bpool_lock
Also onstat -g glo doesn't show that the system has long spins.
MT global info:
sessions threads vps lngspins
9 44 11 0
sched calls thread switches yield 0 yield n yield
forever
total: 17393453 4499787 14116564 722346 180249
per sec: 829 173 723 5 5
Any help will be very appreciated.
Regards,
Eugene Nechayev
Sent via Deja.com http://www.deja.com/
Before you buy.
First let me state that you do NOT have a spin problem. The reports you
post show an engine that is healthy in this respect at least. I will try
to explain as many of the various locks and latches as I know about below:
Eugene Nechayev wrote:
>
> Hi Informixers
>
> Can somebody provide me any information about "onstat -g spi" command.
> I'm very interested in an information about "Name" column. What does
> the different names really mean ?
>
> Okay my system has long spins
No it does not. Note that the reports do not show much activity so you
should not gather too much value from any analysis. You need to check
after a few days of normal activity to derive meaningful averages and
analysis.
> onstat -g sch>
> VP Scheduler Statistics:
> vp pid class semops busy waits spins/wait
> 1 1622 cpu 40 40 1001
1001 spins/wait for a CPU VP is normal.
> 2 1639 adm 0 0 0
> 3 1641 cpu 60 60 1001
> 4 1642 lio 4 0 0
> 5 1646 pio 4 0 0
> 6 1648 aio 764 0 0
> 7 1659 msc 34663 0 0
> 8 1667 aio 712 0 0
> 9 1671 soc 2 2 1000
Also normal.
> 10 1758 lio 1 0 0
> 11 1759 pio 2 0 0
>
> However how can I recognize what's going on
> from onstat -g spi output ?
>
> Spin locks with waits:
>
> Num Waits Num Loops Avg Loop/Wait Name
> 12203 14492 1.19 mtcb sleeping_lock
> 9 9 1.00 mtcb tcb_queue_lock
> 835 938 1.12 mtcb mutex_list_lock
> 254 263 1.04 mtcb cond_list_lock
> 31 926 29.87 mtcb notify_lock
These mtcb latches are various resource control latches as the second part
details.
> 11409 17405 1.53 vproc vp_lock, id = 1
> 14466 21285 1.47 vproc vp_lock, id = 3
> 13 1075 82.69 vproc vp_lock, id = 7
These are VP latches and are used to prevent deadlock between the CPU VPs
and MSC VP (VP #s 1, 3, & 7) in accessing certain critical resources and
data structures.
> 118 538 4.56 mutex lock, name = rstcb
> 33 64 1.94 mutex lock, name = session
> 1 1 1.00 mutex lock, name = timestmp
> 24 44 1.83 mutex lock, name = deadlock
> 33 63 1.91 mutex lock, name = asf_global
> 19 26 1.37 mutex lock, name = guard
> 5 5 1.00 mutex lock, name = ddh chain
> 4 505 126.25 mutex lock, name = ddh chain
> 4 505 126.25 mutex lock, name = ddh chain
> 17 19 1.12 mutex lock, name = MGM mutex
> 1 1 1.00 mutex lock, name = vpc
> 1 3 3.00 mutex lock, name = vpc
> 140 233 1.66 mutex lock, name = sm_bflist
> 9 14 1.56 mutex lock, name = sm_close
> 100 149 1.49 mutex lock, name = sm_bcnt
> 157 246 1.57 mutex lock, name = sm_bflist
> 10 10 1.00 mutex lock, name = sm_close
> 102 157 1.54 mutex lock, name = sm_bcnt
> 1 3 3.00 mutex lock, name = log
These are individual resource locks as detailed in the "name = " which
control access to individual data structures.
> 1 1 1.00 mutex lock, name = pt_100002
> 73 93 1.27 mutex lock, name = pt_200040
> 1 3 3.00 mutex lock, name = pt_200046
> 1 1 1.00 mutex lock, name = pt_20006a
> 24 29 1.21 mutex lock, name = pt_200077
> 9 10 1.11 mutex lock, name = pt_200065
Table locks. The pt_###### indicate the partnum of the TABLESPACE
TABLESPACE entry that it is locking.
> 14 2952 210.86 tcb lock, tid = 5
> 3 1760 586.67 tcb lock, tid = 11
> 2 1700 850.00 tcb lock, tid = 13
> 1 81 81.00 tcb lock, tid = 15
Tcb is Thread Control Block latches controlling threads in VP #s 5, 11, 13,
& 15.
> 361 4013 11.12 shmcb sh_lock
Shmcb is Shared Memory Control Block latch controlling initialization
contention to shared memory as a whole.
> 46708 104866 2.25 pool po_lock, name = global
> 5695 11739 2.06 pool po_lock, name = mt
> 3 28 9.33 pool po_lock, name = aio
> 877 1934 2.21 pool po_lock, name = gls
These are memory pool locks controlling various pools of memory from
which the engine allocates memory it needs.
> 78 87 1.12 fast mutex, lockhash[720]
A high speed latch on some hash table.
> 8 8 1.00 fast mutex, lru-0
> 2 2 1.00 fast mutex, lru-2
> 12 15 1.25 fast mutex, lru-4
> 15 46 3.07 fast mutex, lru-6
> 10 136 13.60 fast mutex, lru-8
> 2 2 1.00 fast mutex, lru-10
> 4 4 1.00 fast mutex, lru-14
> 15 16 1.07 fast mutex, lru-16
> 8 11 1.38 fast mutex, lru-18
> 2 4 2.00 fast mutex, lru-20
> 11 1010 91.82 fast mutex, lru-22
High speed latches on the LRU queues. There is one for each pair of LRU
queues (clean and dirty sub-queue). This is where the onstat -p bufwaits
values come from along with the bf latches below.
> 2 22 11.00 fast mutex, bf[7]
> 6 7 1.17 fast mutex, bf[313]
> 67 198 2.96 fast mutex, bf[325]
> 28 550 19.64 fast mutex, bf[327]
> 17 27 1.59 fast mutex, bf[329]
> 1 12 12.00 fast mutex, bf[331]
> 5 12 2.40 fast mutex, bf[335]
> 11 1010 91.82 fast mutex, lru-22
> 2 22 11.00 fast mutex, bf[7]
> 6 7 1.17 fast mutex, bf[313]
> 67 198 2.96 fast mutex, bf[325]
> 28 550 19.64 fast mutex, bf[327]
> 17 27 1.59 fast
Related threads
- Posting from the Informix-list
- Migrating from IDS 9.40.UC6 to 11.50.UC3
- Ip for a network session
- questions onstat -g