Lines Matching +full:high +full:- +full:performance

1 // SPDX-License-Identifier: GPL-2.0
11 * Dynamically calculates the optimum number of high capacity COREs
14 * During topology updates the CPU capacities are always re-adjusted.
18 * -> hiperdispatch's reoccuring work function reads CPU capacities to
19 * determine high capacity CPU count.
20 * -> during a topology update hiperdispatch's adjustment function
30 * crosses the threshold value hiperdispatch falls back to giving high
33 * of them high capacity.
36 * performance. Comparing the throughput of;
37 * - single CORE, with N threads, running N tasks
38 * - N separate COREs running N tasks,
40 * performance. This performance difference is roughly ~30% (can change
72 static int hd_high_capacity_cores; /* Current CORE count with high capacity */
73 static int hd_entitled_cores; /* Total vertical high and medium CORE count */
77 static unsigned long hd_high_time; /* Total time spent while all cpus have high capacity */
161 upscaling_cores = hd_high_capacity_cores - hd_entitled_cores; in hd_update_capacities()
169 upscaling_cores--; in hd_update_capacities()
202 steal = (steal * (HD_STEAL_AVG_WEIGHT - 1) + new) / HD_STEAL_AVG_WEIGHT; in hd_steal_avg()
222 * is 0 as vertical high CPUs shouldn't experience steal time. in hd_calculate_steal_percentage()
229 steal_delta = (steal - hd_previous_steal) * 100 / time_delta; in hd_calculate_steal_percentage()
277 .procname = ctl->procname, in hiperdispatch_ctl_handler()
322 return -ERANGE; in hd_steal_threshold_store()
348 return -ERANGE; in hd_delay_factor_store()
413 if (sysfs_create_group(&dev->kobj, &hd_attr_group)) in hd_create_attributes()