Skip to content
About
Main content
Model

Optimistic against pessimistic

If conflicts are rare, a lock manager is a cost paid on every operation to protect against something that almost never happens.

Items
items per transaction
Lock cost
cost of one lock acquisition
Conflict probability
chance a transaction must redo its work

Trade-off: Coupling vs. coordination cost

How it behaves

One input on the horizontal axis, the others held fixed.

lockingoptimistic
Data table
Cost per transaction by conflict probability (k = 10, 150 ns per lock, 100 µs of work)
Conflict probability pseriesCost per transaction
0locking1.5 µs
0locking1.5 µs
0locking1.5 µs
0locking1.5 µs
0locking1.5 µs
0locking1.5 µs
0locking1.5 µs
0locking1.5 µs
0locking1.5 µs
0locking1.5 µs
0locking1.5 µs
0locking1.5 µs
0locking1.5 µs
0locking1.5 µs
0locking1.5 µs
0locking1.5 µs
0locking1.5 µs
0.001locking1.5 µs
0.001locking1.5 µs
0.001locking1.5 µs
0.001locking1.5 µs
0.001locking1.5 µs
0.001locking1.5 µs
0.001locking1.5 µs
0.001locking1.5 µs
0.001locking1.5 µs
0.001locking1.5 µs
0.001locking1.5 µs
0.001locking1.5 µs
0.002locking1.5 µs
0.002locking1.5 µs
0.002locking1.5 µs
0.002locking1.5 µs
0.002locking1.5 µs
0.003locking1.5 µs
0.003locking1.5 µs
0.003locking1.5 µs
0.003locking1.5 µs
0.004locking1.5 µs
0.004locking1.5 µs
0.004locking1.5 µs
0.005locking1.5 µs
0.005locking1.5 µs
0.006locking1.5 µs
0.007locking1.5 µs
0.007locking1.5 µs
0.008locking1.5 µs
0.009locking1.5 µs
0.01locking1.5 µs
0.011locking1.5 µs
0.012locking1.5 µs
0.013locking1.5 µs
0.014locking1.5 µs
0.015locking1.5 µs
0.017locking1.5 µs
0.019locking1.5 µs
0.021locking1.5 µs
0.023locking1.5 µs
0.025locking1.5 µs
0.027locking1.5 µs
0.03locking1.5 µs
0.033locking1.5 µs
0.036locking1.5 µs
0.04locking1.5 µs
0.044locking1.5 µs
0.048locking1.5 µs
0.053locking1.5 µs
0.058locking1.5 µs
0.064locking1.5 µs
0.07locking1.5 µs
0.077locking1.5 µs
0.085locking1.5 µs
0.094locking1.5 µs
0.103locking1.5 µs
0.113locking1.5 µs
0.124locking1.5 µs
0.137locking1.5 µs
0.15locking1.5 µs
0.165locking1.5 µs
0.182locking1.5 µs
0.2locking1.5 µs
0optimistic0.01 µs
0optimistic0.011 µs
0optimistic0.012 µs
0optimistic0.013 µs
0optimistic0.015 µs
0optimistic0.016 µs
0optimistic0.018 µs
0optimistic0.019 µs
0optimistic0.021 µs
0optimistic0.024 µs
0optimistic0.026 µs
0optimistic0.028 µs
0optimistic0.031 µs
0optimistic0.034 µs
0optimistic0.038 µs
0optimistic0.042 µs
0optimistic0.046 µs
0.001optimistic0.05 µs
0.001optimistic0.055 µs
0.001optimistic0.061 µs
0.001optimistic0.067 µs
0.001optimistic0.074 µs
0.001optimistic0.081 µs
0.001optimistic0.089 µs
0.001optimistic0.098 µs
0.001optimistic0.108 µs
0.001optimistic0.118 µs
0.001optimistic0.13 µs
0.001optimistic0.143 µs
0.002optimistic0.157 µs
0.002optimistic0.173 µs
0.002optimistic0.19 µs
0.002optimistic0.209 µs
0.002optimistic0.23 µs
0.003optimistic0.253 µs
0.003optimistic0.278 µs
0.003optimistic0.306 µs
0.003optimistic0.336 µs
0.004optimistic0.37 µs
0.004optimistic0.407 µs
0.004optimistic0.447 µs
0.005optimistic0.492 µs
0.005optimistic0.541 µs
0.006optimistic0.595 µs
0.007optimistic0.654 µs
0.007optimistic0.719 µs
0.008optimistic0.791 µs
0.009optimistic0.87 µs
0.01optimistic0.956 µs
0.011optimistic1.05 µs
0.012optimistic1.16 µs
0.013optimistic1.27 µs
0.014optimistic1.4 µs
0.015optimistic1.54 µs
0.017optimistic1.69 µs
0.019optimistic1.86 µs
0.021optimistic2.05 µs
0.023optimistic2.25 µs
0.025optimistic2.47 µs
0.027optimistic2.72 µs
0.03optimistic2.99 µs
0.033optimistic3.29 µs
0.036optimistic3.62 µs
0.04optimistic3.98 µs
0.044optimistic4.37 µs
0.048optimistic4.81 µs
0.053optimistic5.29 µs
0.058optimistic5.82 µs
0.064optimistic6.4 µs
0.07optimistic7.03 µs
0.077optimistic7.73 µs
0.085optimistic8.5 µs
0.094optimistic9.35 µs
0.103optimistic10.3 µs
0.113optimistic11.3 µs
0.124optimistic12.4 µs
0.137optimistic13.7 µs
0.15optimistic15 µs
0.165optimistic16.5 µs
0.182optimistic18.2 µs
0.2optimistic20 µs

Worked examples, recomputed

Every number the mechanisms quote for this relationship is recomputed from it, so none of them disagrees with it.

Where it appears

Each mechanism states it in its own names. The general symbol each name stands for is shown with it.