kernel_samsung_a34x-permissive/kernel/sched/extension/Kconfig

72 lines
2.5 KiB
Plaintext
Raw Normal View History

menu "MTK scheduler extension"
config MTK_SCHED_EXTENSION
bool "mtk scheduler extension"
help
MTK scheduler extension,
1. include MTK scheduler enhancement.
2. All MTK scheduler sub-feature config should depend on
this config.
Say Y to enable MTK scheduler extension. If unsure, say N.
config MTK_IDLE_BALANCE_ENHANCEMENT
bool "mtk load balance enhancement"
depends on MTK_SCHED_EXTENSION && SMP && ENERGY_MODEL && CPU_FREQ_GOV_SCHEDUTIL
help
Mediatek aggressive idle balance, include
1. for runnable tasks with idle prefer attributes
2. for runnable and running tasks with min_cap(dynamic floor)
3. migrate runnable task directly and
use stop machine to migrate running task
config MTK_SCHED_INTEROP
bool "mtk scheduling interopation enhancement"
depends on MTK_SCHED_EXTENSION
help
Original Linux Design, RT & CFS do load balance seperatedly,
and let would result in unload balance.
that is, one CPU has more than 2 tasks, however, one CPU is IDLE
We make RT & CFS to check each other and make load more balance.
config MTK_SCHED_LB_ENHANCEMENT
bool "mtk enhancement for load balance"
depends on MTK_SCHED_EXTENSION && ENERGY_MODEL && CPU_FREQ_GOV_SCHEDUTIL
help
mtk enhancement for load balance
system overutilization,
intra-cluster load balance,
and so on.
config MTK_SCHED_TRACERS
bool "mtk scheduling trace, output mtk schedule trace into FTRACE"
depends on MTK_SCHED_EXTENSION
help
Mediatek scheduling trace, output mtk schedule trace into FTRACE,
Mediatek enhancements to vanilla linux kernel. Export scheduling
trace in sched_switch events.
Say Y to enable mtk scheduling trace.If unsure, say N
config MTK_SCHED_CPU_PREFER
bool "mtk scheduling boost enhancement"
depends on MTK_SCHED_EXTENSION && ENERGY_MODEL && CPU_FREQ_GOV_SCHEDUTIL
help
task level to prefer to put the task
on big core or little core.
If the preferred type CPU has IDLE CPU,
put on the task on the idle CPU.
If there are no IDLE CPU on preferred type CPU,
the task placement will follow original policy.
config MTK_SCHED_BIG_TASK_MIGRATE
bool "mtk scheduling big task migrate"
depends on MTK_SCHED_EXTENSION && SMP
help
Migrate misfit task more efficient in scheduler tick.
1. Big task migration: migrate misfit task in scheduler tick
To reduce boosted task push to big core latency.
Migrate current task to big core if it is misfit.
2. Big task rotation: swap two misfit task between big cores and
little core, equally distributed runtime for each misfit task.
endmenu