Revision e63350e726d62144037d889c348cf007deda7a80 authored by Manuel Ung on 19 November 2016, 19:34:26 UTC, committed by Facebook Github Bot on 19 November 2016, 19:39:15 UTC
Summary: Currently, deadlock cycles are held in std::unordered_map. The problem with it is that it allocates/deallocates memory on every insertion/deletion. This limits throughput since we're doing this expensive operation while holding a global mutex. Fix this by using a vector which caches memory instead. Running the deadlock stress test, this change increased throughput from 39k txns/s -> 49k txns/s. The effect is more noticeable in MyRocks. Closes https://github.com/facebook/rocksdb/pull/1545 Differential Revision: D4205662 Pulled By: lth fbshipit-source-id: ff990e4
1 parent a13bde3
File | Mode | Size |
---|---|---|
amalgamate.py | -rwxr-xr-x | 4.6 KB |
build_detect_platform | -rwxr-xr-x | 15.8 KB |
cont_integration.sh | -rwxr-xr-x | 3.4 KB |
dependencies.sh | -rw-r--r-- | 2.0 KB |
dependencies_4.8.1.sh | -rw-r--r-- | 2.1 KB |
dockerbuild.sh | -rwxr-xr-x | 68 bytes |
error_filter.py | -rw-r--r-- | 6.0 KB |
fb_compile_mongo.sh | -rwxr-xr-x | 1.4 KB |
fbcode_config.sh | -rw-r--r-- | 4.3 KB |
fbcode_config4.8.1.sh | -rw-r--r-- | 3.4 KB |
format-diff.sh | -rwxr-xr-x | 3.4 KB |
gnu_parallel | -rwxr-xr-x | 238.6 KB |
make_new_version.sh | -rwxr-xr-x | 1.2 KB |
make_package.sh | -rwxr-xr-x | 2.6 KB |
precommit_checker.py | -rwxr-xr-x | 5.5 KB |
regression_build_test.sh | -rwxr-xr-x | 11.7 KB |
rocksdb-lego-determinator | -rwxr-xr-x | 21.5 KB |
run_ci_db_test.ps1 | -rw-r--r-- | 9.2 KB |
update_dependencies.sh | -rwxr-xr-x | 3.7 KB |
version.sh | -rwxr-xr-x | 404 bytes |
![swh spinner](/static/img/swh-spinner.gif)
Computing file changes ...