Opened 3 days ago

#18929 new enhancement

[BFS] Optimize BlockAllocator::AllocateBlocks' block-search routine

Reported by: waddlesplash Owned by: axeld
Priority: normal Milestone: Unscheduled
Component: File Systems/BFS Version: R1/Development
Keywords: Cc:
Blocked By: Blocking:
Platform: All

Description

At present, it just uses the fFirstFree to find the first free block and then (if the other sanity checks succeed) looks for free blocks one bit at a time. Instead, it could use bit-operations like fls as well as just checking if all the bits in an int32 are set, which should significantly speed things up.

On partitions with fragmentation, BlockAllocator::AllocateBlocks can form a large part of the total time needed to write files (in one profiling trace X512 sent to me, it was over 80% of the total; though admittedly the profiler could be mistaken.)

Change History (0)

Note: See TracTickets for help on using tickets.