rocksdb/tools
Andrew Kryczka 1026e794a3 rate limit auto-tuning
Summary:
Dynamic adjustment of rate limit according to demand for background I/O. It increases by a factor when limiter is drained too frequently, and decreases by the same factor when limiter is not drained frequently enough. The parameters for this behavior are fixed in `GenericRateLimiter::Tune`. Other changes:

- make rate limiter's `Env*` configurable for testing
- track num drain intervals in RateLimiter so we don't have to rely on stats, which may be shared across different DB instances from the ones that share the RateLimiter.
Closes https://github.com/facebook/rocksdb/pull/2899

Differential Revision: D5858704

Pulled By: ajkr

fbshipit-source-id: cc2bac30f85e7f6fd63655d0a6732ef9ed7403b1
2017-10-04 19:15:01 -07:00
..
dump Change RocksDB License 2017-07-15 16:11:23 -07:00
rdb Fix /bin/bash shebangs 2017-08-03 15:56:46 -07:00
auto_sanity_test.sh AIX and Solaris Sparc Support 2017-04-21 20:48:04 -07:00
benchmark_leveldb.sh Fix /bin/bash shebangs 2017-08-03 15:56:46 -07:00
benchmark.sh Fix /bin/bash shebangs 2017-08-03 15:56:46 -07:00
blob_dump.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
check_format_compatible.sh Fix /bin/bash shebangs 2017-08-03 15:56:46 -07:00
CMakeLists.txt cmake support for linux and osx (#1358) 2016-09-28 11:53:15 -07:00
db_bench_tool_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
db_bench_tool.cc rate limit auto-tuning 2017-10-04 19:15:01 -07:00
db_bench.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
db_crashtest.py Use more keys per lock in daily TSAN crash test 2017-08-10 17:56:57 -07:00
db_repl_stress.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
db_sanity_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
db_stress.cc Updated CRC32 Power Optimization Changes 2017-08-31 14:16:30 -07:00
dbench_monitor Fix /bin/bash shebangs 2017-08-03 15:56:46 -07:00
Dockerfile adding docker build script and dockerfile 2015-05-22 16:03:39 -07:00
generate_random_db.sh Fix /bin/bash shebangs 2017-08-03 15:56:46 -07:00
ldb_cmd_impl.h Change RocksDB License 2017-07-15 16:11:23 -07:00
ldb_cmd_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
ldb_cmd.cc ldb dump can print histogram of value size 2017-10-02 09:41:17 -07:00
ldb_test.py Add GetAllKeyVersions API 2017-05-12 15:54:06 -07:00
ldb_tool.cc Revert "comment out unused parameters" 2017-07-21 18:26:26 -07:00
ldb.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
pflag Fix /bin/bash shebangs 2017-08-03 15:56:46 -07:00
reduce_levels_test.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
regression_test.sh Set defaults for high-pri and low-pri thread pools in regression test script 2017-08-30 17:29:34 -07:00
rocksdb_dump_test.sh AIX and Solaris Sparc Support 2017-04-21 20:48:04 -07:00
run_flash_bench.sh Fix /bin/bash shebangs 2017-08-03 15:56:46 -07:00
run_leveldb.sh Fix /bin/bash shebangs 2017-08-03 15:56:46 -07:00
sample-dump.dmp First version of rocksdb_dump and rocksdb_undump. 2015-06-19 16:24:36 -07:00
sst_dump_test.cc make sst_dump compression size command consistent 2017-08-11 16:03:44 -07:00
sst_dump_tool_imp.h make sst_dump compression size command consistent 2017-08-11 16:03:44 -07:00
sst_dump_tool.cc Fix naming in InternalKey 2017-09-12 17:17:42 -07:00
sst_dump.cc Change RocksDB License 2017-07-15 16:11:23 -07:00
verify_random_db.sh Fix /bin/bash shebangs 2017-08-03 15:56:46 -07:00
write_stress_runner.py Write stress test 2015-10-28 16:15:07 -07:00
write_stress.cc tools/write_stress.cc: Correct "1204" typos. 2017-07-17 11:27:10 -07:00