rocksdb/utilities/transactions/lock/point
Xingbo Wang 742741b175 Support Super Block Alignment (#13909)
Summary:
Pad block based table based on super block alignment

Pull Request resolved: https://github.com/facebook/rocksdb/pull/13909

Test Plan:
Unit Test

No impact on perf observed due to change in the inner loop of flush.

upstream/main branch 202.15 MB/s
```
for i in `seq 1 10`; do ./db_bench --benchmarks=fillseq -num=10000000 -compaction_style=2 -fifo_compaction_max_table_files_size_mb=1000 -fifo_compaction_allow_compaction=0 -disable_wal -write_buffer_size=12000000 -format_version=7 >> /tmp/x1 2>&1; grep fillseq /tmp/x1 | grep -Po "\d+\.\d+ MB/s" | grep -Po "\d+\.\d+" | awk '{sum+=$1} END {print sum/NR}'
```

After the change without super block alignment 203.44 MB/s
```
for i in `seq 1 10`; do ./db_bench --benchmarks=fillseq -num=10000000 -compaction_style=2 -fifo_compaction_max_table_files_size_mb=1000 -fifo_compaction_allow_compaction=0 -disable_wal -write_buffer_size=12000000 -format_version=7 >> /tmp/x1 2>&1
```

After the change with super block alignment 204.47 MB/s
```
for i in `seq 1 10`; do ./db_bench --benchmarks=fillseq -num=10000000 -compaction_style=2 -fifo_compaction_max_table_files_size_mb=1000 -fifo_compaction_allow_compaction=0 -disable_wal -write_buffer_size=12000000 -format_version=7 --super_block_alignment_size=131072 --super_block_alignment_max_padding_size=4096 >> /tmp/x1 2>&1;
```

Reviewed By: pdillinger

Differential Revision: D83068913

Pulled By: xingbowang

fbshipit-source-id: eecd65088ab3e9dbc7902aab8c2580f1bc8575df
2025-10-01 18:20:35 -07:00
..
any_lock_manager_test.h Add copyright to header file (#13930) 2025-09-09 15:57:13 -07:00
point_lock_bench.cc Improve efficiency in PointLockManager by using separate Condvar (#13731) 2025-09-08 15:52:54 -07:00
point_lock_bench_tool.cc Improve efficiency in PointLockManager by using separate Condvar (#13731) 2025-09-08 15:52:54 -07:00
point_lock_manager.cc Support Super Block Alignment (#13909) 2025-10-01 18:20:35 -07:00
point_lock_manager.h Improve efficiency in PointLockManager by using separate Condvar (#13731) 2025-09-08 15:52:54 -07:00
point_lock_manager_stress_test.cc Improve efficiency in PointLockManager by using separate Condvar (#13731) 2025-09-08 15:52:54 -07:00
point_lock_manager_test.cc Fix uninitialized value complaint in valgrind (#13934) 2025-09-10 10:42:07 -07:00
point_lock_manager_test.h Improve efficiency in PointLockManager by using separate Condvar (#13731) 2025-09-08 15:52:54 -07:00
point_lock_manager_test_common.h Improve efficiency in PointLockManager by using separate Condvar (#13731) 2025-09-08 15:52:54 -07:00
point_lock_tracker.cc Standardize on clang-format version 18 (#13233) 2024-12-19 10:58:40 -08:00
point_lock_tracker.h Remove 'virtual' when implied by 'override' (#12319) 2024-01-31 13:14:42 -08:00
point_lock_validation_test_runner.h Fix PointLockManager in C++20 (#13933) 2025-09-09 21:45:50 -07:00