v0.5.4
This release contains a number of performance improvements to BTreeMap, making it substantially more efficient.
- perf: remove redundant node load from BTreeMap::remove by @ielashi in #78
- perf: lazy loading of BTreeMap values by @ielashi in #79
- perf: do not makes
Bytespacked. by @ielashi in #80
Improvements have also been made to the README docs.
Full Changelog: v0.5.3...v0.5.4
Benchmark results showing the performance improvements between this version and the previous one:
btreemap_insert_blob_4_1024
time: [902.82 M Instructions 902.82 M Instructions 902.82 M Instructions]
change: [-36.121% -36.121% -36.121%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_insert_blob_8_1024
time: [1040.8 M Instructions 1040.8 M Instructions 1040.8 M Instructions]
change: [-35.725% -35.725% -35.725%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_insert_blob_16_1024
time: [1136.5 M Instructions 1136.5 M Instructions 1136.5 M Instructions]
change: [-33.131% -33.131% -33.131%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_insert_blob_32_1024
time: [1180.3 M Instructions 1180.3 M Instructions 1180.3 M Instructions]
change: [-32.265% -32.265% -32.265%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_insert_blob_64_1024
time: [1420.0 M Instructions 1420.0 M Instructions 1420.0 M Instructions]
change: [-30.241% -30.241% -30.241%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_insert_blob_128_1024
time: [1679.8 M Instructions 1679.8 M Instructions 1679.8 M Instructions]
change: [-27.667% -27.667% -27.667%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_insert_blob_256_1024
time: [2196.8 M Instructions 2196.8 M Instructions 2196.8 M Instructions]
change: [-23.846% -23.846% -23.846%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_insert_blob_512_1024
time: [3257.9 M Instructions 3257.9 M Instructions 3257.9 M Instructions]
change: [-18.772% -18.772% -18.772%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_insert_u64_u64 time: [756.97 M Instructions 756.97 M Instructions 756.97 M Instructions]
change: [-19.881% -19.881% -19.881%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_insert_u64_blob_8
time: [729.82 M Instructions 729.82 M Instructions 729.82 M Instructions]
change: [-16.986% -16.986% -16.986%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_insert_blob_8_u64
time: [642.09 M Instructions 642.09 M Instructions 642.09 M Instructions]
change: [-26.375% -26.375% -26.375%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_get_blob_4_1024
time: [396.58 M Instructions 396.58 M Instructions 396.58 M Instructions]
change: [-69.977% -69.977% -69.977%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_get_blob_8_1024
time: [462.52 M Instructions 462.52 M Instructions 462.52 M Instructions]
change: [-64.833% -64.833% -64.833%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_get_blob_16_1024
time: [545.06 M Instructions 545.06 M Instructions 545.06 M Instructions]
change: [-60.784% -60.784% -60.784%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_get_blob_32_1024
time: [575.75 M Instructions 575.75 M Instructions 575.75 M Instructions]
change: [-60.758% -60.758% -60.758%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_get_blob_64_1024
time: [799.59 M Instructions 799.59 M Instructions 799.59 M Instructions]
change: [-53.474% -53.474% -53.474%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_get_blob_128_1024
time: [1021.2 M Instructions 1021.2 M Instructions 1021.2 M Instructions]
change: [-47.658% -47.658% -47.658%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_get_u64_u64 time: [393.51 M Instructions 393.51 M Instructions 393.51 M Instructions]
change: [-48.484% -48.484% -48.484%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_get_u64_blob_8 time: [389.66 M Instructions 389.66 M Instructions 389.66 M Instructions]
change: [-44.346% -44.346% -44.346%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_get_blob_8_u64 time: [407.98 M Instructions 407.98 M Instructions 407.98 M Instructions]
change: [-45.976% -45.976% -45.976%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_get_blob_256_1024
time: [1511.0 M Instructions 1511.0 M Instructions 1511.0 M Instructions]
change: [-38.501% -38.501% -38.501%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_get_blob_512_1024
time: [2476.6 M Instructions 2476.6 M Instructions 2476.6 M Instructions]
change: [-27.960% -27.960% -27.960%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_remove_blob_4_1024
time: [984.03 M Instructions 984.03 M Instructions 984.03 M Instructions]
change: [-57.642% -57.642% -57.642%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_remove_blob_8_1024
time: [1261.0 M Instructions 1261.0 M Instructions 1261.0 M Instructions]
change: [-52.544% -52.544% -52.544%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_remove_blob_16_1024
time: [1504.9 M Instructions 1504.9 M Instructions 1504.9 M Instructions]
change: [-49.345% -49.345% -49.345%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_remove_blob_32_1024
time: [1579.8 M Instructions 1579.8 M Instructions 1579.8 M Instructions]
change: [-48.328% -48.328% -48.328%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_remove_blob_64_1024
time: [1874.1 M Instructions 1874.1 M Instructions 1874.1 M Instructions]
change: [-46.512% -46.512% -46.512%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_remove_blob_128_1024
time: [2196.8 M Instructions 2196.8 M Instructions 2196.8 M Instructions]
change: [-45.162% -45.162% -45.162%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_remove_blob_256_1024
time: [2806.5 M Instructions 2806.5 M Instructions 2806.5 M Instructions]
change: [-44.361% -44.361% -44.361%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_remove_u64_u64 time: [1087.0 M Instructions 1087.0 M Instructions 1087.0 M Instructions]
change: [-36.420% -36.420% -36.420%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_remove_u64_blob_8
time: [1045.4 M Instructions 1045.4 M Instructions 1045.4 M Instructions]
change: [-34.480% -34.480% -34.480%] (p = 0.00 < 0.05)
Performance has improved.
btreemap_remove_blob_8_u64
time: [858.01 M Instructions 858.01 M Instructions 858.01 M Instructions]
change: [-45.248% -45.248% -45.248%] (p = 0.00 < 0.05)
Performance has improved.