Увеличение значения sched_latency_ns и sched_min_granularity_ns

2547
Prasoon Tiwari

Почему я получаю сообщение об ошибке, когда пытаюсь увеличить значения этих двух параметров:

#cat /proc/sys/kernel/sched_latency_ns 1000000000 #echo 2000000000 > /proc/sys/kernel/sched_latency_ns bash: echo: write error: Invalid argument # 

Я получаю ту же ошибку при замене sched_latency_ns на sched_min_granularity_ns.

Может кто-нибудь сказать мне правильный способ увеличить эти параметры.

4

1 ответ на вопрос

4
doug65536

One second is the absolute maximum accepted value for that setting. Values more than 1000000000 are not valid (the number of nanoseconds in one second).

See the kernel source code

262 static int max_sched_granularity_ns = NSEC_PER_SEC; /* 1 second */ 

and

line 294

294 { 295 .procname = "sched_latency_ns", 296 .data = &sysctl_sched_latency, 297 .maxlen = sizeof(unsigned int), 298 .mode = 0644, 299 .proc_handler = sched_proc_update_handler, 300 .extra1 = &min_sched_granularity_ns, 301 .extra2 = &max_sched_granularity_ns, 302 }, 

Larger and larger values have a diminishing improvement on performance. Excessively high values can cause issues. One second is already an extremely high setting.

Похожие вопросы