Skip to content

Improve block log splitting performance

Bartek Wrona requested to merge split-log-in-batches into develop

The block-log splitting code has been optimized by reading into memory buffer huge amounts of block data with one system function call, then writing the buffer contents likewise. New multiple_... methods have been added to block_log_wrapper & block_log classes. Ten thousand blocks are read/write during splitting as defined by BLOCKS_IN_BATCH_IO_MODE symbol.

Following speedup has been measured on NVMe drive:

develop (7ed85434) split-log-in-batches (6dc50b8a)
Corsair MP600 PRO XT (NVMe) 38m 29s - 43m 39s 13m 32s - 13m 43s
Edited by Łukasz Bujak

Merge request reports

Loading