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 */
648 * vrate adjust percentages indexed by ioc->busy_level. We adjust up on
757 u64 vrate = ioc->vtime_base_rate;
759 margins->min = (period_us * MARGIN_MIN_PCT / 100) * vrate;
760 margins->low = (period_us * MARGIN_LOW_PCT / 100) * vrate;
761 margins->target = (period_us * MARGIN_TARGET_PCT / 100) * vrate;
830 /* step up/down based on the vrate */
960 * vrate accordingly so that the extra vtime generated in the current period
976 * Calculate how much vrate should be adjusted to offset the error.
997 u64 vrate = ioc->vtime_base_rate;
1002 trace_iocost_ioc_vrate_adj(ioc, vrate,
1010 * If vrate is out of bounds, apply clamp gradually as the
1014 if (vrate < vrate_min) {
1015 vrate = div64_u64(vrate * (100 + VRATE_CLAMP_ADJ_PCT), 100);
1016 vrate = min(vrate, vrate_min);
1017 } else if (vrate > vrate_max) {
1018 vrate = div64_u64(vrate * (100 - VRATE_CLAMP_ADJ_PCT), 100);
1019 vrate = max(vrate, vrate_max);
1030 vrate = clamp(DIV64_U64_ROUND_UP(vrate * adj_pct, 100),
1034 trace_iocost_ioc_vrate_adj(ioc, vrate, missed_ppm, rq_wait_pct,
1037 ioc->vtime_base_rate = vrate;
1041 /* take a snapshot of the current [v]time and vrate */
1045 u64 vrate;
1049 vrate = atomic64_read(&ioc->vtime_rate);
1054 * vtime at period start + (wallclock time since the start) * vrate
1062 (now->now - ioc->period_at) * vrate;
1791 * bumping up vrate accordingly 2. lowering the donating iocg's inuse weight.
1796 * overshooting what's allowed by the model and vrate.
2156 * Since waiters determine the sleep durations based on the vrate
2157 * they saw at the time of sleep, if vrate has increased, some
2285 * IOs from past periods, don't increase vrate.
2392 /* clearly missing QoS targets, slow down vrate */
2402 * capacity. If vrate was being slowed down, stop.
2698 * current vrate. vtime and hweight changes can make it too short
3049 seq_printf(s, " cost.vrate=%u.%02u", vp10k / 100, vp10k % 100);