id->die = get_physical_die_id(cpu);
}
+int is_cpu_in_power_domain(int cpu, struct isst_id *id)
+{
+ struct isst_id tid;
+
+ set_isst_id(&tid, cpu);
+
+ if (id->pkg == tid.pkg && id->die == tid.die)
+ return 1;
+
+ return 0;
+}
+
int get_cpufreq_base_freq(int cpu)
{
return parse_int_file(0, "/sys/devices/system/cpu/cpu%d/cpufreq/base_frequency", cpu);
if (!CPU_ISSET_S(i, present_cpumask_size, present_cpumask))
continue;
- if (cpu_map[i].pkg_id == id->pkg &&
- cpu_map[i].die_id == id->die &&
- cpu_map[i].punit_cpu_core > max_id)
+ if (is_cpu_in_power_domain(i, id) &&
+ cpu_map[i].punit_cpu_core > max_id)
max_id = cpu_map[i].punit_cpu_core;
}
if (!CPU_ISSET_S(j, present_cpumask_size, present_cpumask))
continue;
- if (cpu_map[j].pkg_id == id->pkg &&
- cpu_map[j].die_id == id->die &&
+ if (is_cpu_in_power_domain(j, id) &&
cpu_map[j].punit_cpu_core == i) {
CPU_SET_S(j, core_cpumask_size,
core_cpumask);
if (!CPU_ISSET_S(i, present_cpumask_size, present_cpumask))
continue;
- if (id->pkg != get_physical_package_id(i) ||
- id->die != get_physical_die_id(i))
+ if (!is_cpu_in_power_domain(i, id))
continue;
CPU_SET_S(i, ctdp_level->core_cpumask_size,
if (!CPU_ISSET_S(i, present_cpumask_size, present_cpumask))
continue;
- if (id->pkg != get_physical_package_id(i) ||
- id->die != get_physical_die_id(i))
+ if (!is_cpu_in_power_domain(i, id))
continue;
cpu_bf = parse_int_file(1,
if (ctdp_level.cpu_count) {
int i, max_cpus = get_topo_max_cpus();
for (i = 0; i < max_cpus; ++i) {
- if (id->pkg != get_physical_package_id(i) || id->die != get_physical_die_id(i))
+ if (!is_cpu_in_power_domain(i, id))
continue;
if (CPU_ISSET_S(i, ctdp_level.core_cpumask_size, ctdp_level.core_cpumask)) {
fprintf(stderr, "online cpu %d\n", i);
freq_low = pbf_info->p1_low * 100000;
for (i = 0; i < get_topo_max_cpus(); ++i) {
- if (id->pkg != get_physical_package_id(i) ||
- id->die != get_physical_die_id(i))
+ if (!is_cpu_in_power_domain(i, id))
continue;
if (CPU_ISSET_S(i, pbf_info->core_cpumask_size,
int i;
for (i = 0; i < get_topo_max_cpus(); ++i) {
- if (id->pkg != get_physical_package_id(i) ||
- id->die != get_physical_die_id(i))
+ if (!is_cpu_in_power_domain(i, id))
continue;
adjust_scaling_max_from_base_freq(i);
int i;
for (i = 0; i < get_topo_max_cpus(); ++i) {
- if (id->pkg != get_physical_package_id(i) ||
- id->die != get_physical_die_id(i))
+ if (!is_cpu_in_power_domain(i, id))
continue;
adjust_scaling_max_from_base_freq(i);
int i;
for (i = 0; i < get_topo_max_cpus(); ++i) {
- if (id->pkg != get_physical_package_id(i) ||
- id->die != get_physical_die_id(i))
+ if (!is_cpu_in_power_domain(i, id))
continue;
set_cpufreq_scaling_min_max_from_cpuinfo(i, 1, 1);
int clos;
struct isst_id tid;
- if (id->pkg != get_physical_package_id(i) ||
- id->die != get_physical_die_id(i))
+ if (!is_cpu_in_power_domain(i, id))
continue;
if (CPU_ISSET_S(i, mask_size, cpu_mask))