Lines Matching refs:cpu

24 达“配额”微秒的CPU时间。当cgroup中的线程可运行时,该配额以时间片段的方式被分配到每个cpu
29 它以需求为基础被转移到cpu-local“筒仓”,在每次更新中转移的数量是可调整的,被描述为“片“(时
65 配额、周期和突发是在cpu子系统内通过cgroupfs管理的。
69 :ref:`Documentation/admin-guide/cgroup-v2.rst <cgroup-v2-cpu>`.
71 - cpu.cfs_quota_us:在一个时期内补充的运行时间(微秒)。
72 - cpu.cfs_period_us:一个周期的长度(微秒)。
73 - cpu.stat: 输出节流统计数据[下面进一步解释]
74 - cpu.cfs_burst_us:最大累积运行时间(微秒)。
78 cpu.cfs_period_us=100ms
79 cpu.cfs_quota_us=-1
80 cpu.cfs_burst_us=0
82 cpu.cfs_quota_us的值为-1表示该组没有任何带宽限制,这样的组被描述为无限制的带宽组。这代表
85 写入不小于cpu.cfs_burst_us的任何(有效的)正值将配发指定的带宽限制。该配额或周期允许的最
89cpu.cfs_quota_us写入任何负值都会移除带宽限制,并使组再次回到无限制的状态。
91 cpu.cfs_burst_us的值为0表示该组不能积累任何未使用的带宽。它使得CFS的传统带宽控制行为没有
92 改变。将不大于 cpu.cfs_quota_us 的任何(有效的)正值写入 cpu.cfs_burst_us 将配发未使用
110 一个组的带宽统计数据通过cpu.stat的5个字段导出。
112 cpu.stat:
143 一旦一个片断被分配给一个cpu,它就不会过期。然而,如果该cpu上的所有线程都无法运行,那么除了
147 cpu-local分片不会过期的事实导致了一些有趣的罕见案例,应该被理解。
149 对于cgroup cpu限制的应用程序来说,这是一个相对有意义的问题,因为他们自然会消耗他们的全部配
150 额,以及每个cpu-本地片在每个时期的全部。因此,预计nr_periods大致等于nr_throttled,并且
153 对于高线程、非cpu绑定的应用程序,这种非过期的细微差别允许应用程序短暂地突破他们的配额限制,
154 即任务组正在运行的每个cpu上未使用的片断量(通常每个cpu最多1ms或由min_cfs_rq_runtime定
155 义)。这种轻微的突发只适用于配额已经分配给cpu,然后没有完全使用或在以前的时期返回。这个突发
157 长的时间窗口。这也限制了突发能力,每个cpu不超过1ms。这为在高核数机器上有小配额限制的高线程
158 应用提供了更好的更可预测的用户体验。它还消除了在使用低于配额的cpu时对这些应用进行节流的倾向。
159 另一种说法是,通过允许一个片断的未使用部分在不同时期保持有效,我们减少了在不需要整个片断的cpu
160 时间的cpu-local 筒仓上浪费配额的可能性。
162 绑定cpu和非绑定cpu的交互式应用之间的互动也应该被考虑,特别是当单核使用率达到100%时。如果你
163 给了这些应用程序一半的cpu-core,并且它们都被安排在同一个CPU上,理论上非cpu绑定的应用程序有
164 可能在某些时期使用多达1ms的额外配额,从而阻止cpu绑定的应用程序完全使用其配额,这也是同样的数
174 # echo 250000 > cpu.cfs_quota_us /* quota = 250ms */
175 # echo 250000 > cpu.cfs_period_us /* period = 250ms */
181 # echo 1000000 > cpu.cfs_quota_us /* quota = 1000ms */
182 # echo 500000 > cpu.cfs_period_us /* period = 500ms */
190 # echo 10000 > cpu.cfs_quota_us /* quota = 10ms */
191 # echo 50000 > cpu.cfs_period_us /* period = 50ms */
200 # echo 20000 > cpu.cfs_quota_us /* quota = 20ms */
201 # echo 50000 > cpu.cfs_period_us /* period = 50ms */
202 # echo 10000 > cpu.cfs_burst_us /* burst = 10ms */