Re: [PATCH 39/43] xfs: support write life time based data placement

Hans Holmberg
2025-02-12T13:29:24Z

On 12/02/2025 01:27, Darrick J. Wong wrote:
> On Thu, Feb 06, 2025 at 07:44:55AM +0100, Christoph Hellwig wrote:
>> From: Hans Holmberg <hans.holmberg@wdc.com>
>>
>> Add a file write life time data placement allocation scheme that aims to
>> minimize fragmentation and thereby to do two things:
>>
>> a) separate file data to different zones when possible.
>> b) colocate file data of similar life times when feasible.
>>
>> To get best results, average file sizes should align with the zone
>> capacity that is reported through the XFS_IOC_FSGEOMETRY ioctl.
>>
>> For RocksDB using leveled compaction, the lifetime hints can improve
>> throughput for overwrite workloads at 80% file system utilization by
>> ~10%.
>
> The code changes look mostly ok, but how does it do at 40% utilization?
> 99%? Does it reduce the amount of relocation work that the gc must do?

The improvement in data placement efficiency will always be there,
reducing the number of blocks requiring relocation by GC, but the impact
on performance varies depending on how full the file system is.

At 40% utilization there is almost no garbage collection going on, so the
impact on throughput is not significant. At 99% the effects of better
data placement should be higher.

Cheers,
Hans