kernel: sched: Provide more PELT half-life options
- Regenerate `kernel/sched/sched-pelt.h` by `Documentation/scheduler/sched-pelt`. - Now we can choose from 32ms (default), 16ms, 12ms, 8ms.
This commit is contained in:
parent
648fb626ad
commit
3de61e729d
3 changed files with 40 additions and 9 deletions
|
@ -3723,6 +3723,8 @@
|
||||||
pelt= [KNL] Boot-time parameter changing the PELT half life in ms
|
pelt= [KNL] Boot-time parameter changing the PELT half life in ms
|
||||||
Format: <int>
|
Format: <int>
|
||||||
32: Set the half life to 32ms
|
32: Set the half life to 32ms
|
||||||
|
16: Set the half life to 16ms
|
||||||
|
12: Set the half life to 12ms
|
||||||
8: Set the half life to 8ms
|
8: Set the half life to 8ms
|
||||||
default: 32
|
default: 32
|
||||||
|
|
||||||
|
|
|
@ -64,6 +64,18 @@ static int __set_pelt_halflife(void *data)
|
||||||
pelt_runnable_avg_yN_inv = pelt8_runnable_avg_yN_inv;
|
pelt_runnable_avg_yN_inv = pelt8_runnable_avg_yN_inv;
|
||||||
pr_info("PELT half life is set to %dms\n", num);
|
pr_info("PELT half life is set to %dms\n", num);
|
||||||
break;
|
break;
|
||||||
|
case PELT12_LOAD_AVG_PERIOD:
|
||||||
|
pelt_load_avg_period = PELT12_LOAD_AVG_PERIOD;
|
||||||
|
pelt_load_avg_max = PELT12_LOAD_AVG_MAX;
|
||||||
|
pelt_runnable_avg_yN_inv = pelt12_runnable_avg_yN_inv;
|
||||||
|
pr_info("PELT half life is set to %dms\n", num);
|
||||||
|
break;
|
||||||
|
case PELT16_LOAD_AVG_PERIOD:
|
||||||
|
pelt_load_avg_period = PELT16_LOAD_AVG_PERIOD;
|
||||||
|
pelt_load_avg_max = PELT16_LOAD_AVG_MAX;
|
||||||
|
pelt_runnable_avg_yN_inv = pelt16_runnable_avg_yN_inv;
|
||||||
|
pr_info("PELT half life is set to %dms\n", num);
|
||||||
|
break;
|
||||||
case PELT32_LOAD_AVG_PERIOD:
|
case PELT32_LOAD_AVG_PERIOD:
|
||||||
pelt_load_avg_period = PELT32_LOAD_AVG_PERIOD;
|
pelt_load_avg_period = PELT32_LOAD_AVG_PERIOD;
|
||||||
pelt_load_avg_max = PELT32_LOAD_AVG_MAX;
|
pelt_load_avg_max = PELT32_LOAD_AVG_MAX;
|
||||||
|
|
|
@ -13,13 +13,30 @@ static const u32 pelt32_runnable_avg_yN_inv[] __maybe_unused = {
|
||||||
#define PELT32_LOAD_AVG_PERIOD 32
|
#define PELT32_LOAD_AVG_PERIOD 32
|
||||||
#define PELT32_LOAD_AVG_MAX 47742
|
#define PELT32_LOAD_AVG_MAX 47742
|
||||||
|
|
||||||
|
static const u32 pelt16_runnable_avg_yN_inv[] __maybe_unused = {
|
||||||
|
0xffffffff, 0xf5257d14, 0xeac0c6e6, 0xe0ccdeeb, 0xd744fcc9, 0xce248c14,
|
||||||
|
0xc5672a10, 0xbd08a39e, 0xb504f333, 0xad583ee9, 0xa5fed6a9, 0x9ef5325f,
|
||||||
|
0x9837f050, 0x91c3d373, 0x8b95c1e3, 0x85aac367,
|
||||||
|
};
|
||||||
|
|
||||||
|
#define PELT16_LOAD_AVG_PERIOD 16
|
||||||
|
#define PELT16_LOAD_AVG_MAX 24130
|
||||||
|
|
||||||
|
static const u32 pelt12_runnable_avg_yN_inv[] __maybe_unused = {
|
||||||
|
0xffffffff, 0xf1a1bf37, 0xe411f039, 0xd744fcc9, 0xcb2ff529, 0xbfc886ba,
|
||||||
|
0xb504f333, 0xaadc0846, 0xa14517cb, 0x9837f050, 0x8facd61d, 0x879c7c96,
|
||||||
|
};
|
||||||
|
|
||||||
|
#define PELT12_LOAD_AVG_PERIOD 12
|
||||||
|
#define PELT12_LOAD_AVG_MAX 18227
|
||||||
|
|
||||||
static const u32 pelt8_runnable_avg_yN_inv[] __maybe_unused = {
|
static const u32 pelt8_runnable_avg_yN_inv[] __maybe_unused = {
|
||||||
0xffffffff, 0xeac0c6e6, 0xd744fcc9, 0xc5672a10,
|
0xffffffff, 0xeac0c6e6, 0xd744fcc9, 0xc5672a10, 0xb504f333, 0xa5fed6a9,
|
||||||
0xb504f333, 0xa5fed6a9, 0x9837f050, 0x8b95c1e3,
|
0x9837f050, 0x8b95c1e3,
|
||||||
};
|
};
|
||||||
|
|
||||||
#define PELT8_LOAD_AVG_PERIOD 8
|
#define PELT8_LOAD_AVG_PERIOD 8
|
||||||
#define PELT8_LOAD_AVG_MAX 12336
|
#define PELT8_LOAD_AVG_MAX 12326
|
||||||
|
|
||||||
extern const u32 *pelt_runnable_avg_yN_inv;
|
extern const u32 *pelt_runnable_avg_yN_inv;
|
||||||
extern int pelt_load_avg_period;
|
extern int pelt_load_avg_period;
|
||||||
|
|
Loading…
Add table
Reference in a new issue