Home
last modified time | relevance | path

Searched refs:uclamp (Results 1 – 8 of 8) sorted by relevance

/Linux-v6.6/Documentation/scheduler/
Dsched-util-clamp.rst10 Utilization clamping, also known as util clamp or uclamp, is a scheduler
39 the uclamp values as performance points rather than utilization is a better
78 By making these uclamp performance requests, or rather hints, user space can
100 Both SCHED_NORMAL/OTHER and SCHED_FIFO/RR honour uclamp requests/hints.
102 In the SCHED_FIFO/RR case, uclamp gives the option to run RT tasks at any
110 when an RT task wakes up. This cost is unchanged by using uclamp. Uclamp only
114 See :ref:`section 3.4 <uclamp-default-values>` for default values and
137 affected by the uclamp settings of all the tasks enqueued on it. For example if
143 rq, uclamp must do some housekeeping at every enqueue/dequeue, which is the
154 uclamp value at rq level a lot easier.
[all …]
Dsched-capacity.rst347 Furthermore, uclamp lets userspace specify a minimum and a maximum utilization
356 above. On top of that, uclamp is used to clamp the task utilization values,
362 By using uclamp, userspace can e.g. allow a busy loop (100% utilization) to run
363 on any CPU by giving it a low uclamp.max value. Conversely, it can force a small
365 giving it a high uclamp.min value.
/Linux-v6.6/Documentation/translations/zh_CN/scheduler/
Dsched-capacity.rst307 此外,uclamp允许用户空间指定任务的最小和最大利用率,要么以sched_setattr()的方式,要么以
308 cgroup接口的方式(参阅Documentation/admin-guide/cgroup-v2.rst)。如其名字所暗示,uclamp
314 CFS任务唤醒的CPU选择,遵循上面描述的算力适应性准则。在此之上,uclamp被用来限制任务利用率,
320 通过使用uclamp,举例来说,用户空间可以允许忙等待循环(100%使用率)在任意CPU上运行,只要给
321 它设置低的uclamp.max值。相反,uclamp能强制一个小的周期性任务(比如,10%利用率)在最高性能
322 的CPU上运行,只要给它设置高的uclamp.min值。
/Linux-v6.6/kernel/sched/
Dcore.c1447 struct uclamp_bucket *bucket = rq->uclamp[clamp_id].bucket; in uclamp_rq_max_value()
1512 tg_min = task_group(p)->uclamp[UCLAMP_MIN].value; in uclamp_tg_restrict()
1513 tg_max = task_group(p)->uclamp[UCLAMP_MAX].value; in uclamp_tg_restrict()
1548 if (p->uclamp[clamp_id].active) in uclamp_eff_value()
1549 return (unsigned long)p->uclamp[clamp_id].value; in uclamp_eff_value()
1569 struct uclamp_rq *uc_rq = &rq->uclamp[clamp_id]; in uclamp_rq_inc_id()
1570 struct uclamp_se *uc_se = &p->uclamp[clamp_id]; in uclamp_rq_inc_id()
1576 p->uclamp[clamp_id] = uclamp_eff_get(p, clamp_id); in uclamp_rq_inc_id()
1607 struct uclamp_rq *uc_rq = &rq->uclamp[clamp_id]; in uclamp_rq_dec_id()
1608 struct uclamp_se *uc_se = &p->uclamp[clamp_id]; in uclamp_rq_dec_id()
[all …]
Dsched.h412 struct uclamp_se uclamp[UCLAMP_CNT]; member
993 struct uclamp_rq uclamp[UCLAMP_CNT] ____cacheline_aligned; member
3045 return READ_ONCE(rq->uclamp[clamp_id].value); in uclamp_rq_get()
3051 WRITE_ONCE(rq->uclamp[clamp_id].value, value); in uclamp_rq_set()
3122 max_util = READ_ONCE(rq->uclamp[UCLAMP_MAX].value); in uclamp_rq_is_capped()
/Linux-v6.6/Documentation/admin-guide/sysctl/
Dkernel.rst1209 It means that any requested uclamp.min value cannot be greater than
1220 It means that any requested uclamp.max value cannot be greater than
1231 Uclamp achieves this by setting the requested uclamp.min of all RT tasks to
1235 This knob allows admins to change the default behavior when uclamp is being
1241 requested uclamp.min value via sched_setattr() syscall.
/Linux-v6.6/include/linux/
Dsched.h819 struct uclamp_se uclamp[UCLAMP_CNT]; member
/Linux-v6.6/Documentation/admin-guide/
Dcgroup-v2.rst1098 cpu.uclamp.min
1111 `cpu.uclamp.max`.
1113 cpu.uclamp.max