Lines Matching full:boost

294  * sugov_iowait_reset() - Reset the IO boost status of a CPU.
295 * @sg_cpu: the sugov data for the CPU to boost
297 * @set_iowait_boost: true if an IO boost has been requested
299 * The IO wait boost of a task is disabled after a tick since the last update
300 * of a CPU. If a new IO wait boost is requested after more then a tick, then
301 * we enable the boost starting from IOWAIT_BOOST_MIN, which improves energy
309 /* Reset boost only if a tick has elapsed since last request */ in sugov_iowait_reset()
320 * sugov_iowait_boost() - Updates the IO boost status of a CPU.
321 * @sg_cpu: the sugov data for the CPU to boost
330 * To keep doubling, an IO boost has to be requested at least once per tick,
338 /* Reset boost if the CPU appears to have been idle enough */ in sugov_iowait_boost()
343 /* Boost only tasks waking up after IO */ in sugov_iowait_boost()
347 /* Ensure boost doubles only one time at each request */ in sugov_iowait_boost()
352 /* Double the boost at each request */ in sugov_iowait_boost()
359 /* First wakeup after IO: start with minimum boost */ in sugov_iowait_boost()
364 * sugov_iowait_apply() - Apply the IO boost to a CPU.
365 * @sg_cpu: the sugov data for the cpu to boost
367 * @util: the utilization to (eventually) boost
372 * The IO boost value is increased each time a task wakes up from IO, in
377 * its IO boost utilization reset.
379 * This mechanism is designed to boost high frequently IO waiting tasks, while
385 unsigned long boost; in sugov_iowait_apply() local
387 /* No boost currently required */ in sugov_iowait_apply()
391 /* Reset boost if the CPU appears to have been idle enough */ in sugov_iowait_apply()
397 * No boost pending; reduce the boost value. in sugov_iowait_apply()
412 boost = (sg_cpu->iowait_boost * max) >> SCHED_CAPACITY_SHIFT; in sugov_iowait_apply()
413 return max(boost, util); in sugov_iowait_apply()