Flat Combining
authorMaged Michael <magedmichael@fb.com>
Thu, 23 Mar 2017 14:13:23 +0000 (07:13 -0700)
committerFacebook Github Bot <facebook-github-bot@users.noreply.github.com>
Thu, 23 Mar 2017 14:15:20 +0000 (07:15 -0700)
commit85361b0c20be740ccc91ed496f0fb73a7b8f0503
treeeb4d50abb578989ac0f82a57a844f1dd7989789e
parent16a97089051c76dd187a4a25018965cc44e330e0
Flat Combining

Summary:
Flat combining template that takes the following template parameters:
 T         Concurrent data structure using FC interface
 Mutex Mutex type (default std::mutex)
 Atom  Atomic template (default std::atomic)
 Req    Optional request structure to hold custom info (default dummy type bool)

Flat combining (FC) was introduced in the SPAA 2010 paper Flat Combining and the Synchronization-Parallelism Tradeoff, by Danny Hendler, Itai Incze, Nir Shavit, and Moran Tzafrir.
http://mcg.cs.tau.ac.il/projects/projects/flat-combining

Reviewed By: djwatson

Differential Revision: D4602402

fbshipit-source-id: 38327f752a3e92bb01e5496c321d8c87c818087a
folly/experimental/flat_combining/FlatCombining.h [new file with mode: 0644]
folly/experimental/flat_combining/test/FlatCombiningBenchmark.cpp [new file with mode: 0644]
folly/experimental/flat_combining/test/FlatCombiningExamples.h [new file with mode: 0644]
folly/experimental/flat_combining/test/FlatCombiningTest.cpp [new file with mode: 0644]
folly/experimental/flat_combining/test/FlatCombiningTestHelpers.h [new file with mode: 0644]