RocksDB

This is a benchmark of Meta/Facebook's RocksDB as an embeddable persistent key-value store for fast storage based on Google's LevelDB.

To run this test with the Phoronix Test Suite, the basic command is: phoronix-test-suite benchmark rocksdb.

Project Site

rocksdb.org

Source Repository

github.com

Test Created

8 October 2019

Last Updated

19 March 2024

Test Maintainer

Michael Larabel 

Test Type

System

Average Install Time

5 Minutes, 5 Seconds

Average Run Time

15 Minutes, 23 Seconds

Test Dependencies

C/C++ Compiler Toolchain + BC + GFlags + CMake + Snappy Compression

Accolades

60k+ Downloads

Supported Platforms


Public Result Uploads *Reported Installs **Reported Test Completions **Test Profile Page Views ***OpenBenchmarking.orgEventsRocksDB Popularity Statisticspts/rocksdb2019.102019.122020.022020.042020.062020.082020.102020.122021.022021.042021.062021.082021.102021.122022.022022.042022.062022.082022.102022.122023.022023.042023.062023.082023.102023.122024.022024.045K10K15K20K25K
* Uploading of benchmark result data to OpenBenchmarking.org is always optional (opt-in) via the Phoronix Test Suite for users wishing to share their results publicly.
** Data based on those opting to upload their test results to OpenBenchmarking.org and users enabling the opt-in anonymous statistics reporting while running benchmarks from an Internet-connected platform.
*** Test profile page view reporting began March 2021.
Data updated weekly as of 14 April 2024.
Sequential Fill10.3%Update Random13.8%Random Read13.8%Read Random Write Random13.8%Overwrite13.8%Read While Writing13.4%Random Fill Sync10.3%Random Fill10.7%Test Option PopularityOpenBenchmarking.org

Revision History

pts/rocksdb-1.6.0   [View Source]   Tue, 19 Mar 2024 16:51:58 GMT
Update against RocksDB 9.0 upstream.

pts/rocksdb-1.5.0   [View Source]   Sat, 18 Mar 2023 09:04:43 GMT
Update against RocksDB 8.0 for GCC 13 compiler compatibility.

pts/rocksdb-1.4.0   [View Source]   Wed, 18 Jan 2023 08:30:14 GMT
Update against upstream RocksDB 7.9.2 to fix compiler build issues.

pts/rocksdb-1.3.0   [View Source]   Mon, 05 Sep 2022 21:04:18 GMT
Update against RocksDB 7.5.3 upstream and address GCC 12 build issues.

pts/rocksdb-1.2.0   [View Source]   Sat, 12 Mar 2022 08:03:37 GMT
Update against RocksDB 7.0.1 upstream.

pts/rocksdb-1.1.0   [View Source]   Tue, 13 Jul 2021 15:33:50 GMT
Update against upstream RocksDB 6.22.1.

pts/rocksdb-1.0.2   [View Source]   Wed, 09 Oct 2019 07:43:51 GMT
Satisfy previous version to work on both older and newer compilers

pts/rocksdb-1.0.1   [View Source]   Wed, 09 Oct 2019 07:28:01 GMT
CXXFLAGS update for allowing to build on GCC9/Clang8

pts/rocksdb-1.0.0   [View Source]   Tue, 08 Oct 2019 18:48:16 GMT
Initial commit of Facebook RocksDB benchmark.

Suites Using This Test

Database Test Suite

Server

Common Kernel Benchmarks


Performance Metrics

Analyze Test Configuration:

Facebook RocksDB 6.3.6

Test: Read While Writing

OpenBenchmarking.org metrics for this test profile configuration based on 1,059 public results since 8 October 2019 with the latest data as of 27 November 2023.

Below is an overview of the generalized performance for components where there is sufficient statistically significant data based upon user-uploaded results. It is important to keep in mind particularly in the Linux/open-source space there can be vastly different OS configurations, with this overview intended to offer just general guidance as to the performance expectations.

Component
Percentile Rank
# Compatible Public Results
Op/s (Average)
100th
18
14255655 +/- 531313
100th
10
13614573 +/- 772362
99th
3
12972873 +/- 86254
98th
3
12278172 +/- 1124688
98th
20
11779905 +/- 315634
96th
4
9925489 +/- 119479
96th
5
9771935 +/- 395259
95th
10
9473219 +/- 128075
94th
12
9296932 +/- 331042
93rd
7
9157743 +/- 220972
92nd
11
8840593 +/- 509840
91st
3
8626023 +/- 414165
91st
7
8544697 +/- 241304
89th
10
8055545 +/- 165882
89th
24
7908661 +/- 192595
87th
3
7845876 +/- 24267
87th
5
7822760 +/- 437154
85th
4
7618388 +/- 412384
85th
15
7588170 +/- 371832
85th
3
7373812 +/- 162957
83rd
10
7070290 +/- 127450
82nd
22
6784288 +/- 259365
80th
9
6635373 +/- 61775
78th
10
6542867 +/- 109528
78th
38
6454228 +/- 271969
Mid-Tier
75th
< 6221981
73rd
9
5995208 +/- 133587
73rd
3
5966220 +/- 728857
71st
3
5691759 +/- 39391
71st
4
5605260 +/- 113464
70th
5
5540835 +/- 135215
70th
8
5525456 +/- 59449
69th
3
5417879 +/- 3841
68th
10
5344064 +/- 156940
68th
7
5325932 +/- 38577
66th
13
5255072 +/- 146389
66th
32
5232853 +/- 205311
63rd
3
5161279 +/- 101939
62nd
3
5116851 +/- 61365
62nd
6
5114132 +/- 99932
62nd
10
5112805 +/- 120340
61st
11
5050036 +/- 132613
57th
3
4411555 +/- 25409
56th
10
4334773 +/- 69221
56th
8
4312234 +/- 72745
53rd
11
4157312 +/- 287912
52nd
16
4093925 +/- 277245
52nd
29
4083128 +/- 228632
51st
4
3899229 +/- 2235
Median
50th
3865433
48th
10
3715832 +/- 57361
48th
3
3713621 +/- 14995
48th
3
3697380 +/- 71303
47th
7
3665212 +/- 8362
46th
3
3648318 +/- 268367
46th
23
3616529 +/- 73771
44th
8
3472997 +/- 131344
43rd
8
3376040 +/- 54744
41st
10
3097858 +/- 192614
39th
3
3015597 +/- 11853
37th
12
2982277 +/- 116542
37th
9
2972518 +/- 65185
37th
6
2965280 +/- 94301
37th
10
2952878 +/- 78178
36th
25
2888622 +/- 268247
33rd
6
2736018 +/- 89870
32nd
17
2690858 +/- 394174
32nd
3
2631024 +/- 26742
31st
3
2375635 +/- 43594
30th
8
2295577 +/- 95106
29th
4
2135052 +/- 39290
29th
6
2122782 +/- 63762
28th
6
1934587 +/- 16304
27th
8
1921886 +/- 59804
27th
3
1898290 +/- 43283
26th
5
1667987 +/- 15338
Low-Tier
25th
< 1634793
25th
8
1605467 +/- 27649
24th
10
1562394 +/- 46004
24th
4
1555279 +/- 70884
23rd
12
1522480 +/- 47539
20th
10
1411974 +/- 66109
20th
3
1410128 +/- 29309
17th
4
914850 +/- 13363
17th
12
906668 +/- 8736
16th
3
886890 +/- 3752
15th
4
856567 +/- 23679
15th
5
827187 +/- 15872
14th
5
820203 +/- 16402
14th
3
760434 +/- 65510
12th
13
741767 +/- 22234
11th
7
677395 +/- 13439
9th
4
418077 +/- 275
5th
3
264088 +/- 1051
4th
4
199134 +/- 5626
2nd
5
157452 +/- 2270
OpenBenchmarking.orgDistribution Of Public Results - Test: Read While Writing1059 Results Range From 92068 To 15391588 Op/s9206839805970405010100411316032162202319280142234005253999628459873151978345796937639604069951437594246819334987924529391555999065905897621188865178796823870712986174358527741843804783483538258659816896580792717989577789988378010189771104957621080175311107744114137351171972612025717123317081263769912943690132496811355567213861663141676541447364514779636150856271539161820406080100

Based on OpenBenchmarking.org data, the selected test / test configuration (Facebook RocksDB 6.3.6 - Test: Read While Writing) has an average run-time of 6 minutes. By default this test profile is set to run at least 3 times but may increase if the standard deviation exceeds pre-defined defaults or other calculations deem additional runs necessary for greater statistical accuracy of the result.

OpenBenchmarking.orgMinutesTime Required To Complete BenchmarkTest: Read While WritingRun-Time510152025Min: 2 / Avg: 5.57 / Max: 19

Based on public OpenBenchmarking.org results, the selected test / test configuration has an average standard deviation of 1.3%.

OpenBenchmarking.orgPercent, Fewer Is BetterAverage Deviation Between RunsTest: Read While WritingDeviation246810Min: 0 / Avg: 1.31 / Max: 6

Does It Scale Well With Increasing Cores?

Yes, based on the automated analysis of the collected public benchmark data, this test / test settings does generally scale well with increasing CPU core counts. Data based on publicly available results for this test / test settings, separated by vendor, result divided by the reference CPU clock speed, grouped by matching physical CPU core count, and normalized against the smallest core count tested from each vendor for each CPU having a sufficient number of test samples and statistically significant data.

IntelAMDOpenBenchmarking.orgRelative Core Scaling To BaseRocksDB CPU Core ScalingTest: Read While Writing48121618243248641283691215

Notable Instruction Set Usage

Notable instruction set extensions supported by this test, based on an automatic analysis by the Phoronix Test Suite / OpenBenchmarking.org analytics engine.

Instruction Set
Support
Instructions Detected
Used by default on supported hardware.
Found on Intel processors since Sandy Bridge (2011).
Found on AMD processors since Bulldozer (2011).

 
VZEROUPPER VPERMILPD VBROADCASTSD
Used by default on supported hardware.
Found on Intel processors since Haswell (2013).
Found on AMD processors since Excavator (2016).

 
VPBROADCASTQ VINSERTI128 VPBROADCASTB VPBROADCASTW VPERMQ VEXTRACTI128 VPGATHERQQ VPBROADCASTD VPERMD VPSLLVD VPSRLVQ
FMA (FMA)
Used by default on supported hardware.
Found on Intel processors since Haswell (2013).
Found on AMD processors since Bulldozer (2011).

 
VFMADD132SD VFMADD231SD VFMADD213SD VFNMADD132SD VFMSUB132SD VFNMADD231SD
SSE 4.2 (SSE4_2)
Used by default on supported hardware.
Found on Intel processors since at least 2010.
Found on AMD processors since Bulldozer (2011).

 
POPCNT CRC32
Advanced Vector Extensions 512 (AVX512)
Used by default on supported hardware.
 
(ZMM REGISTER USE)
The test / benchmark does honor compiler flag changes.
Last automated analysis: 6 April 2024

This test profile binary relies on the shared libraries librocksdb.so.9, libgflags.so.2.2, libsnappy.so.1, libm.so.6, libc.so.6, libpthread.so.0.

Tested CPU Architectures

This benchmark has been successfully tested on the below mentioned architectures. The CPU architectures listed is where successful OpenBenchmarking.org result uploads occurred, namely for helping to determine if a given test is compatible with various alternative CPU architectures.

CPU Architecture
Kernel Identifier
Verified On
Intel / AMD x86 64-bit
x86_64
(Many Processors)
IBM Z
s390x
(Many Processors)
ARMv8 64-bit
aarch64
ARMv8, Ampere Altra ARMv8 Neoverse-N1 160-Core, Ampere eMAG ARMv8 32-Core

Recent Test Results

OpenBenchmarking.org Results Compare

19 Systems - 35 Benchmark Results

4 x AMD EPYC (with IBPB) - QEMU Standard PC - Intel 440FX- 82441FX PMC

Ubuntu 18.04 - 5.3.0-51-generic - ext4

18 Systems - 35 Benchmark Results

4 x AMD EPYC - QEMU Standard PC - Intel 440FX- 82441FX PMC

Ubuntu 18.04 - 5.3.0-51-generic - ext4

17 Systems - 35 Benchmark Results

4 x QEMU Virtual 2.5+ - QEMU Standard PC - Intel 440FX- 82441FX PMC

Ubuntu 18.04 - 5.3.0-51-generic - ext4

15 Systems - 35 Benchmark Results

4 x QEMU Virtual 2.5+ - QEMU Standard PC - Intel 440FX- 82441FX PMC

Ubuntu 18.04 - 5.3.0-51-generic - ext4

16 Systems - 35 Benchmark Results

8 x AMD EPYC (with IBPB) - QEMU Standard PC - Intel 440FX- 82441FX PMC

Ubuntu 18.04 - 5.3.0-51-generic - ext4

15 Systems - 35 Benchmark Results

4 x AMD EPYC - QEMU Standard PC - Intel 440FX- 82441FX PMC

Ubuntu 18.04 - 4.15.0-88-generic - ext4

Find More Test Results