Thursday, July 20, 2006

SHOW INNODB STATUS: SEMAPHORES

A summary from the mySQL Performace Blog


Innodb takes averages over time and displays its numbers which are hard to figure out what a true average is from some sort of polling method.


----------
SEMAPHORES
----------
OS WAIT ARRAY INFO: reservation count 28655958, signal count 25483315
Mutex spin waits 1468249294, rounds 5838311115, OS waits 20658052
RW-shared spins 4676021, OS waits 1740480; RW-excl spins 13056306, OS waits 2135090



  • reservation count - counter for the sync array when slots are added to it

  • signal count - counter for the sync array for when threads are signal for use

  • OS Waits - used for exclusive and shared locks, and relates to context switching on the OS side.

  • spin waits / rounds - internal innodb lock that is faster then an OS wait but wastes CPU cycles


Tuning


To help with context switching a new variable was added in the 5.0 tree called innodb_sync_spin_loops playing with this might reduce unneed context switches since it's used to ballance between CPU and spins.

No comments: