> [Snip] > > > The first patch in this series moves the signature comparison before > > the load- acquire of the key_index. This does not result in any issues > > because of the full key comparison which is done after the load-acquire of > the key_index. > > Performance improvements: > > Lookup Hit: 6.16% > > Lookup Miss: 8.54% > > > > The second patch in this series, moves the store-release of pData > > before the store to any hash internal data structures. This is not > > necessary, but just helps to show the non-dependency between > > application data and hash table data. On the reader side, the pData is > > loaded only if the keys match, this provides performance benefits. > > Performance improvements (with patch 1): > > Lookup Hit: 6.25% > > Lookup Miss: 13.97% > > Could you share the commands/data to test this specific performance > measurement? The data given here uses hash_readwrite_lf test with 5M entries. The keys used for hit is again 5M.
We also tested this using L3-fwd (note that L3-fwd app needs to be changed to enable lock-free hash code path). Command: ./examples/l3fwd/build/l3fwd -c 0xc0 -n 1 -- -E -P -p 0x3 --config="(0,0,7),(1,0,6)" On A72: Upstream lock-free: Hit: 11.117/11.168/11.101 Miss: 6.760/6.763/6.764 Upstream lock-free + patches(1,2) Hit: 11.310/11.276/11.385 Miss: 11.245/11.293/11.281