cancel
Showing results for 
Search instead for 
Did you mean: 

How to address High Page & Row Lock HashTable spinlock contention

james_morrison
Explorer
0 Kudos

We are running AS% 15.7 SP135 RUnning on Linix host -- threaded model -- 20 threads on 32 Core Host. We experience High Periods of CPU utilization. During this time sysmon shows high contention in Page & Row Lock HashTable -- over 20 % . Based on review of documentation/ working with SAP support -we have been adjusting lock spinlock ratio, lock hashtable size and lock address spinlock ratio. Here are current related connfiguration settings:

number of locks = 1000000 lock spinlock ratio = 20 lock address spinlock ratio = 5 lock hashtable size = 65536

I have see some documentation saying lock hashtable size should be 8192:

lock hashtable size >= @number of locks@ / 1000000 * 8192 [REC]

Any suggestions would be appreciated

Accepted Solutions (0)

Answers (4)

Answers (4)

james_morrison
Explorer
0 Kudos

sysmon-082517.txt

Thanks Mark - Made the config change to allow for asynchronous IO's. Latest runs showing spinlock contention in default data cache -- We are going to set up named caches next- -- Currently the default data cache has 32 partitions -- are there drawbacks to setting number of partitions to 64 ?

james_morrison
Explorer
0 Kudos

Thanks Mark -- we'll looking into setting this up

james_morrison
Explorer
0 Kudos

sysmon.txt

Attached sysmon output

james_morrison
Explorer
0 Kudos

Following is select from monSpinlockActivity at 1 minute interval:

SpinlockName Grabs Spins Waits Contention fglockspins 40818673 2310551156 13616664 33.35 default data cache -4081864140 588372648 7133812 -0.17 SSQLCACHE_SPIN 274884 7587679 1788 0.65 Resource->rdbt_spin 10094447 4827526 78312 0.77 tablockspins 12216912 3100127 186391 1.52 Resource->rproccache_spin 1211028 267436 11305 0.93 Pdes Chain Spinlocks 34425474 249964 28132 0.08 Ides Chain Spinlocks 31359003 191883 31202 0.09 Sched Q 317878 75159 4365 1.37 Resource->rdesmgr_spin 696313 36021 2581 0.37