Hazard pointers: Add support for thread local lists of retired objects and other...
authorMaged Michael <magedmichael@fb.com>
Thu, 29 Jun 2017 14:16:37 +0000 (07:16 -0700)
committerFacebook Github Bot <facebook-github-bot@users.noreply.github.com>
Thu, 29 Jun 2017 14:19:39 +0000 (07:19 -0700)
commit0f5638fe81b9dafd9a222bc5e9b1047692e0326e
tree3e908682c3bfde4c0724f972aa8d8b747454f636
parentffc409c4cdcb5c29991372e7c5478863350c38e8
Hazard pointers: Add support for thread local lists of retired objects and other optimizations

Summary:
- Add support for private lists of retired objects
- Add an option for one domain
- More scalable thread cache managemnt
- hazptr_rec alignment
- FOLLY_ALWAYS_INLINE
- Refactor management of retired objects in hazptr_domain
- Refactor benchmarks

Reviewed By: davidtgoldblatt

Differential Revision: D5322646

fbshipit-source-id: 9d31582b9a8216861e7e78e2e1cd08dc11cf7f88
folly/experimental/hazptr/bench/HazptrBench-Amb-NoTc.cpp
folly/experimental/hazptr/bench/HazptrBench-Amb-Tc.cpp
folly/experimental/hazptr/bench/HazptrBench-NoAmb-NoTc.cpp
folly/experimental/hazptr/bench/HazptrBench-NoAmb-Tc.cpp
folly/experimental/hazptr/bench/HazptrBench-OneDomain.cpp [new file with mode: 0644]
folly/experimental/hazptr/bench/HazptrBench.h
folly/experimental/hazptr/hazptr-impl.h
folly/experimental/hazptr/hazptr.h
folly/experimental/hazptr/memory_resource.h