[dpdk-dev] [PATCH v4 0/3] rwlock: reimplement rwlock with atomic and add relevant perf test case
Joyce Kong
joyce.kong at arm.com
Wed Mar 20 07:25:06 CET 2019
v4: Change _try_ functions to use __atomic too (for consistency)(Suggested by Ananyev, Konstantin).
v3: Fix headline format error.
v2: Rebase and modify the rwlock test case to address the comments in v1.
v1: Reimplement rwlock with atomic builtins, and add a rwlock perf test
on all available cores to benchmark the improvement.
We tested the patches on three arm64 platforms.
ThundeX2 gained 20% performance, Qualcomm gained 36% and
the 4-Cortex-A72 Marvell MACCHIATObin gained 19.6%.
Below is the detailed test result on ThunderX2:
*** rwlock_autotest without atomic builtins ***
Rwlock Perf Test on 128 cores...
Core [0] count = 281
Core [1] count = 252
Core [2] count = 290
Core [3] count = 259
Core [4] count = 287
...
Core [209] count = 3
Core [210] count = 31
Core [211] count = 120
Total count = 18537
*** rwlock_autotest with atomic builtins ***
Rwlock Perf Test on 128 cores...
Core [0] count = 346
Core [1] count = 355
Core [2] count = 259
Core [3] count = 285
Core [4] count = 320
...
Core [209] count = 2
Core [210] count = 23
Core [211] count = 63
Total count = 22194
Gavin Hu (1):
rwlock: reimplement with atomic builtins
Joyce Kong (2):
test/rwlock: add perf test case on all available cores
test/rwlock: amortize the cost of getting time
app/test/test_rwlock.c | 77 ++++++++++++++++++++++
lib/librte_eal/common/include/generic/rte_rwlock.h | 29 ++++----
2 files changed, 92 insertions(+), 14 deletions(-)
--
2.7.4
More information about the dev
mailing list