2024-04-10 13:15:34

by Huacai Chen

[permalink] [raw]
Subject: [PATCH] LoongArch: Select THP_SWAP if HAVE_ARCH_TRANSPARENT_HUGEPAGE

THP_SWAP has been proven to improve the swap throughput significantly on
x86_64 system according to commit bd4c82c22c367e0 ("mm, THP, swap: delay
splitting THP after swapped out"), on ARM64 system according to commit
d0637c505f8a1d ("arm64: enable THP_SWAP for arm64") and on RISC-V system
according to commit 87f81e66e2e84c7 ("riscv: enable THP_SWAP for RV64").

Enable THP_SWAP for LoongArch, testing the micro-benchmark which is
introduced by commit d0637c505f8a1d ("arm64: enable THP_SWAP for arm64")
shows below numbers on the Loongson-3A5000 board:

swp out bandwidth w/o patch: 1815716 bytes/ms (mean of 10 tests)
swp out bandwidth w/ patch: 3410003 bytes/ms (mean of 10 tests)

Improved by 46.75%!

Signed-off-by: Huacai Chen <[email protected]>
---
arch/loongarch/Kconfig | 1 +
1 file changed, 1 insertion(+)

diff --git a/arch/loongarch/Kconfig b/arch/loongarch/Kconfig
index d52a95195e7f..41ddc39e1fc8 100644
--- a/arch/loongarch/Kconfig
+++ b/arch/loongarch/Kconfig
@@ -69,6 +69,7 @@ config LOONGARCH
select ARCH_WANT_LD_ORPHAN_WARN
select ARCH_WANT_OPTIMIZE_HUGETLB_VMEMMAP
select ARCH_WANTS_NO_INSTR
+ select ARCH_WANTS_THP_SWAP if HAVE_ARCH_TRANSPARENT_HUGEPAGE
select BUILDTIME_TABLE_SORT
select COMMON_CLK
select CPU_PM
--
2.43.0