Copyright (C) 2011 University of Rochester Department of Computer Science and Lehigh University Department of Computer Science and Engineering
License: Modified BSD Please see the file LICENSE.RSTM for licensing information Step 1: Include the configuration code for the harness, and the API code. We provide the option to build the entire benchmark in a single source. The bmconfig.hpp include defines all of the important functions that are implemented in this file, and bmharness.cpp defines the execution infrastructure. Step 2: Declare the data type that will be stress tested via this benchmark. Also provide any functions that will be needed to manipulate the data type. Take care to avoid unnecessary indirection. Forest of RBTrees
In the past, we made this have lots of different sized trees. That, in turn, led to a lot of complexity, and resulted in the benchmark not receiving much use. In this new instance, we make things less configurable, but hopefully more useful.
The Forest holds many trees, all of which are exactly the same wrt key range and lookup ratio. A transaction performs a fixed number of tree ops on the forest, selecting trees at random (with replacement).