Add kswapd experiment.

See go/pixel-perf-25q1-experiments for the info.

Bug: 365855872
Test: build/flash, set .Perf__experiments_delay_seconds=0, set .Perf__kswapd_experiment=true, observe /sys/kernel/vendor_mm/kswapd_cpu_affinity changes
Flag: NONE controlled by Mendel instead
Change-Id: Id63690f0dcd38de92e4c2fde5b0ab814ed3d9db1
Signed-off-by: Dmitry Skiba <dskiba@google.com>
This commit is contained in:
Dmitry Skiba 2024-12-05 00:16:11 +00:00
parent d530f11290
commit 4250b91047
4 changed files with 41 additions and 0 deletions

View file

@ -1,3 +1,5 @@
BOARD_VENDOR_SEPOLICY_DIRS += device/google/gs-common/performance/experiments/sepolicy
PRODUCT_PACKAGES += pixel-experiments-recovery.sh
include device/google/gs-common/performance/experiments/kswapd/kswapd.mk

View file

@ -0,0 +1,10 @@
package {
default_applicable_licenses: ["Android-Apache-2.0"],
}
prebuilt_etc {
name: "pixel-kswapd-experiment.rc",
src: "pixel-kswapd-experiment.rc",
vendor: true,
sub_dir: "init",
}

View file

@ -0,0 +1 @@
PRODUCT_PACKAGES += pixel-kswapd-experiment.rc

View file

@ -0,0 +1,28 @@
# Kswapd experiment - allow kswapd to run on all cores. We only target zuma and
# zumapro because these are the only platforms where kswapd avoids big cores by
# default.
on property:vendor.perf.allow_experiments=1 \
&& property:ro.board.platform=zuma \
&& property:vendor.pixel.system.phenotype.Perf__kswapd_experiment=true
write /sys/kernel/vendor_mm/kswapd_cpu_affinity 1ff
on property:vendor.perf.allow_experiments=1 \
&& property:ro.board.platform=zumapro \
&& property:vendor.pixel.system.phenotype.Perf__kswapd_experiment=true
write /sys/kernel/vendor_mm/kswapd_cpu_affinity ff
# Kswapd experiment rampdown - restore CPU affinity to the default.
on property:vendor.perf.allow_experiments=1 \
&& property:ro.board.platform=zuma \
&& property:vendor.pixel.system.phenotype.Perf__kswapd_experiment=""
# Value is from device/google/zuma/conf/init.zuma.rc
write /sys/kernel/vendor_mm/kswapd_cpu_affinity ff
on property:vendor.perf.allow_experiments=1 \
&& property:ro.board.platform=zumapro \
&& property:vendor.pixel.system.phenotype.Perf__kswapd_experiment=""
# Value is from device/google/zumapro/conf/init.zumapro.soc.rc
write /sys/kernel/vendor_mm/kswapd_cpu_affinity 7f