rocksdb/build_tools
Igor Canadi 1560bb913e Readrandom with tailing iterator
Summary:
Added an option for readrandom benchmark to run with tailing iterator instead of Get. Benefit of tailing iterator is that it doesn't require locking DB mutex on access.

I also have some results when running on my machine. The results highly depend on number of cache shards. With our current benchmark setting of 4 table cache shards and 6 block cache shards, I don't see much improvements of using tailing iterator. In that case, we're probably seeing cache mutex contention.

Here are the results for different number of shards

    cache shards       tailing iterator        get
       6                      1.38M           1.16M
      10                      1.58M           1.15M

As soon as we get rid of cache mutex contention, we're seeing big improvements in using tailing iterator vs. ordinary get.

Test Plan: ran regression test

Reviewers: dhruba, haobo, ljin, kailiu, sding

Reviewed By: haobo

CC: tnovak

Differential Revision: https://reviews.facebook.net/D15867
2014-02-07 09:47:47 -08:00
..
build_detect_platform Compile dynamic library by default 2014-01-14 00:28:10 -08:00
build_detect_version Refactor build_tools/build_detect_version 2014-01-06 08:44:43 +02:00
fbcode.clang31.sh Remove libevent 2013-11-18 21:33:16 -08:00
fbcode.gcc471.sh Add -DROCKSDB_FALLOCATE_PRESENT to fbcode build 2014-01-02 02:00:04 -08:00
fbcode.gcc481.sh Revert "Moving to glibc-fb" 2014-01-24 11:50:38 -08:00
format-diff.sh Misc cleanup on performance branch 2014-01-17 14:26:29 -08:00
mac-install-gflags.sh make util/env_posix.cc work under mac 2013-11-16 23:44:39 -08:00
make_new_version.sh Canonicalize "RocksDB" in make_new_version.sh 2014-01-29 10:19:34 -08:00
regression_build_test.sh Readrandom with tailing iterator 2014-02-07 09:47:47 -08:00
valgrind_test.sh Clean up the Makefile and the build scripts 2013-08-15 12:59:45 -07:00