[PATCH 0/2] Support Armv8.9/v9.4 FEAT_HAFT

Yicong Yang yangyicong at huawei.com
Mon Aug 5 20:43:52 PDT 2024


On 2024/8/2 18:40, Marc Zyngier wrote:
> On Fri, 02 Aug 2024 10:34:56 +0100,
> Yicong Yang <yangyicong at huawei.com> wrote:
>>
>> From: Yicong Yang <yangyicong at hisilicon.com>
>>
>> This series adds basic support for FEAT_HAFT introduced in Armv8.9/v9.4
>> and enable ARCH_HAS_NONLEAF_PMD_YOUNG. The latter will be used in
>> lru-gen aging. Tested with lru-gen in below steps:
>> 1. Generate a 1GiB workingset by `stress-ng --vm 1`. Then hang the task to
>>    stop accessing the memory. (AF bit won't be updated)
>> 2. try to age the memory by /sys/kernel/debug/lru_gen
>>
>> Run above steps with LRU_GEN_NONLEAF_YOUNG(0x4) and not respectively
>> (switching by /sys/kernel/mm/lru_gen/enabled). LRU_GEN_NONLEAF_YOUNG
>> will clear and test the PMD AF bit on page walking for aging,
>> otherwise will clear and test the PTE AF bit for aging. In this case
>> LRU_GEN_NONLEAF_YOUNG will improve the efficiency of page scanning
>> since pages won't be accessed and we don't need to scan each PTE.
> 
> Improve by how much? Can you please publish numbers that demonstrate
> the effect of this feature?
> 

With LRU_GEN_NONLEAF_YOUNG ~40% time saved for 1GiB memory observed on our
emulated platform.

Thanks.




More information about the linux-arm-kernel mailing list