Revision 08be1803eecb5ae464440812ea06e79b21289053 authored by Igor Canadi on 13 April 2015, 22:58:45 UTC, committed by Igor Canadi on 13 April 2015, 22:58:45 UTC
Summary: See github issue 574: https://github.com/facebook/rocksdb/issues/574 Basically when we're running in DEBUG mode we're calling `usleep(0)` on every mutex lock. I bisected the issue to https://reviews.facebook.net/D36963. Instead of calling sleep(0), this diff just avoids calling SleepForMicroseconds() when delay is not set. Test Plan: bpl=10485760;overlap=10;mcz=2;del=300000000;levels=2;ctrig=10000000; delay=10000000; stop=10000000; wbn=30; mbc=20; mb=1073741824;wbs=268435456; dds=1; sync=0; r=100000; t=1; vs=800; bs=65536; cs=1048576; of=500000; si=1000000; ./db_bench --benchmarks=fillrandom --disable_seek_compaction=1 --mmap_read=0 --statistics=1 --histogram=1 --num=$r --threads=$t --value_size=$vs --block_size=$bs --cache_size=$cs --bloom_bits=10 --cache_numshardbits=4 --open_files=$of --verify_checksum=1 --db=/tmp/rdb10test --sync=$sync --disable_wal=1 --compression_type=snappy --stats_interval=$si --compression_ratio=0.5 --disable_data_sync=$dds --write_buffer_size=$wbs --target_file_size_base=$mb --max_write_buffer_number=$wbn --max_background_compactions=$mbc --level0_file_num_compaction_trigger=$ctrig --level0_slowdown_writes_trigger=$delay --level0_stop_writes_trigger=$stop --num_levels=$levels --delete_obsolete_files_period_micros=$del --min_level_to_compress=$mcz --max_grandparent_overlap_factor=$overlap --stats_per_interval=1 --max_bytes_for_level_base=$bpl --memtablerep=vector --use_existing_db=0 --disable_auto_compactions=1 --source_compaction_factor=10000000 | grep ops Before: fillrandom : 117.525 micros/op 8508 ops/sec; 6.6 MB/s After: fillrandom : 1.283 micros/op 779502 ops/sec; 606.6 MB/s Reviewers: rven, yhchiang, sdong Reviewed By: sdong Subscribers: meyering, dhruba, leveldb Differential Revision: https://reviews.facebook.net/D36963
1 parent 0a0501c
File | Mode | Size |
---|---|---|
arcanist_util | ||
build_tools | ||
coverage | ||
db | ||
doc | ||
examples | ||
hdfs | ||
include | ||
java | ||
port | ||
table | ||
third-party | ||
tools | ||
util | ||
utilities | ||
.arcconfig | -rw-r--r-- | 564 bytes |
.clang-format | -rw-r--r-- | 138 bytes |
.gitignore | -rw-r--r-- | 495 bytes |
.travis.yml | -rw-r--r-- | 1.0 KB |
AUTHORS | -rw-r--r-- | 247 bytes |
CONTRIBUTING.md | -rw-r--r-- | 733 bytes |
HISTORY.md | -rw-r--r-- | 18.2 KB |
INSTALL.md | -rw-r--r-- | 3.3 KB |
LICENSE | -rw-r--r-- | 1.6 KB |
Makefile | -rw-r--r-- | 31.9 KB |
PATENTS | -rw-r--r-- | 1.9 KB |
README.md | -rw-r--r-- | 1.2 KB |
ROCKSDB_LITE.md | -rw-r--r-- | 1020 bytes |
USERS.md | -rw-r--r-- | 1.5 KB |
Vagrantfile | -rw-r--r-- | 862 bytes |
src.mk | -rw-r--r-- | 17.1 KB |
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...