Lines Matching refs:vrate

97  * To slow down, we lower the vrate - the rate at which the device vtime
99 * at the vrate of 75%, all cgroups added up would only be able to issue
108 * indication that the device is saturated and we lower the vrate. This
148 * implemented by adjusting vrate dynamically. However, squaring who can
160 * sdb RUN per=300ms cur_per=234.218:v203.695 busy= +1 vrate= 62.12%
167 * - vrate : Device virtual time rate against wall clock
254 /* bound vrate adjustments within two orders of magnitude */
566 u64 vrate;
652 * vrate adjust percentages indexed by ioc->busy_level. We adjust up on
765 u64 vrate = ioc->vtime_base_rate;
767 margins->min = (period_us * MARGIN_MIN_PCT / 100) * vrate;
768 margins->low = (period_us * MARGIN_LOW_PCT / 100) * vrate;
769 margins->target = (period_us * MARGIN_TARGET_PCT / 100) * vrate;
834 /* step up/down based on the vrate */
952 * vrate accordingly so that the extra vtime generated in the current period
968 * Calculate how much vrate should be adjusted to offset the error.
985 /* take a snapshot of the current [v]time and vrate */
992 now->vrate = atomic64_read(&ioc->vtime_rate);
997 * vtime at period start + (wallclock time since the start) * vrate
1005 (now->now - ioc->period_at) * now->vrate;
1740 * bumping up vrate accordingly 2. lowering the donating iocg's inuse weight.
1745 * overshooting what's allowed by the model and vrate.
2130 * Waiters determine the sleep durations based on the vrate they
2131 * saw at the time of sleep. If vrate has increased, some waiters
2215 * IOs from past periods, don't increase vrate.
2320 /* clearly missing QoS targets, slow down vrate */
2330 * capacity. If vrate was being slowed down, stop.
2357 u64 vrate = ioc->vtime_base_rate;
2365 * If vrate is out of bounds, apply clamp gradually as the
2369 if (vrate < vrate_min) {
2370 vrate = div64_u64(vrate * (100 + VRATE_CLAMP_ADJ_PCT),
2372 vrate = min(vrate, vrate_min);
2373 } else if (vrate > vrate_max) {
2374 vrate = div64_u64(vrate * (100 - VRATE_CLAMP_ADJ_PCT),
2376 vrate = max(vrate, vrate_max);
2387 vrate = clamp(DIV64_U64_ROUND_UP(vrate * adj_pct, 100),
2391 trace_iocost_ioc_vrate_adj(ioc, vrate, missed_ppm, rq_wait_pct,
2394 ioc->vtime_base_rate = vrate;
2665 * current vrate. vtime and hweight changes can make it too short
3016 pos += scnprintf(buf + pos, size - pos, " cost.vrate=%u.%02u",