Lines Matching refs:t

235 				struct thread_data *t;  in for_all_cpus()  local
239 t = GET_THREAD(thread_base, thread_no, core_no, pkg_no); in for_all_cpus()
241 if (cpu_is_not_present(t->cpu_id)) in for_all_cpus()
247 retval = func(t, c, p); in for_all_cpus()
392 int dump_counters(struct thread_data *t, struct core_data *c, in dump_counters() argument
395 outp += sprintf(outp, "t %p, c %p, p %p\n", t, c, p); in dump_counters()
397 if (t) { in dump_counters()
399 t->cpu_id, t->flags); in dump_counters()
400 outp += sprintf(outp, "TSC: %016llX\n", t->tsc); in dump_counters()
401 outp += sprintf(outp, "aperf: %016llX\n", t->aperf); in dump_counters()
402 outp += sprintf(outp, "mperf: %016llX\n", t->mperf); in dump_counters()
403 outp += sprintf(outp, "c1: %016llX\n", t->c1); in dump_counters()
405 extra_delta_offset32, t->extra_delta32); in dump_counters()
407 extra_delta_offset64, t->extra_delta64); in dump_counters()
409 extra_msr_offset32, t->extra_msr32); in dump_counters()
411 extra_msr_offset64, t->extra_msr64); in dump_counters()
413 outp += sprintf(outp, "SMI: %08X\n", t->smi_count); in dump_counters()
461 int format_counters(struct thread_data *t, struct core_data *c, in format_counters() argument
468 if (show_core_only && !(t->flags & CPU_IS_FIRST_THREAD_IN_CORE)) in format_counters()
472 if (show_pkg_only && !(t->flags & CPU_IS_FIRST_CORE_IN_PACKAGE)) in format_counters()
478 if (t == &average.threads) { in format_counters()
499 outp += sprintf(outp, "%8d", t->cpu_id); in format_counters()
505 1.0 / units * t->aperf / interval_float); in format_counters()
510 outp += sprintf(outp, "%8.2f", 100.0 * t->mperf/t->tsc/tsc_tweak); in format_counters()
518 outp += sprintf(outp, "%8.0f", base_hz / units * t->aperf / t->mperf); in format_counters()
521 1.0 * t->tsc / units * t->aperf / t->mperf / interval_float); in format_counters()
525 outp += sprintf(outp, "%8.0f", 1.0 * t->tsc/units/interval_float); in format_counters()
529 outp += sprintf(outp, " %11llu", t->extra_delta32); in format_counters()
533 outp += sprintf(outp, " %11llu", t->extra_delta64); in format_counters()
536 outp += sprintf(outp, " 0x%08llx", t->extra_msr32); in format_counters()
540 outp += sprintf(outp, " 0x%016llx", t->extra_msr64); in format_counters()
547 outp += sprintf(outp, "%8d", t->smi_count); in format_counters()
551 outp += sprintf(outp, "%8.2f", 100.0 * t->c1/t->tsc); in format_counters()
557 if (!(t->flags & CPU_IS_FIRST_THREAD_IN_CORE)) in format_counters()
561 outp += sprintf(outp, "%8.2f", 100.0 * c->c3/t->tsc); in format_counters()
563 outp += sprintf(outp, "%8.2f", 100.0 * c->c6/t->tsc); in format_counters()
565 outp += sprintf(outp, "%8.2f", 100.0 * c->c7/t->tsc); in format_counters()
571 if (!(t->flags & CPU_IS_FIRST_CORE_IN_PACKAGE)) in format_counters()
580 outp += sprintf(outp, "%8.2f", 100.0 * p->pkg_wtd_core_c0/t->tsc); in format_counters()
581 outp += sprintf(outp, "%8.2f", 100.0 * p->pkg_any_core_c0/t->tsc); in format_counters()
582 outp += sprintf(outp, "%8.2f", 100.0 * p->pkg_any_gfxe_c0/t->tsc); in format_counters()
583 outp += sprintf(outp, "%8.2f", 100.0 * p->pkg_both_core_gfxe_c0/t->tsc); in format_counters()
587 outp += sprintf(outp, "%8.2f", 100.0 * p->pc2/t->tsc); in format_counters()
589 outp += sprintf(outp, "%8.2f", 100.0 * p->pc3/t->tsc); in format_counters()
591 outp += sprintf(outp, "%8.2f", 100.0 * p->pc6/t->tsc); in format_counters()
593 outp += sprintf(outp, "%8.2f", 100.0 * p->pc7/t->tsc); in format_counters()
595 outp += sprintf(outp, "%8.2f", 100.0 * p->pc8/t->tsc); in format_counters()
596 outp += sprintf(outp, "%8.2f", 100.0 * p->pc9/t->tsc); in format_counters()
597 outp += sprintf(outp, "%8.2f", 100.0 * p->pc10/t->tsc); in format_counters()
659 void format_all_counters(struct thread_data *t, struct core_data *c, struct pkg_data *p) in format_all_counters() argument
675 for_all_cpus(format_counters, t, c, p); in format_all_counters()
804 int delta_cpu(struct thread_data *t, struct core_data *c, in delta_cpu() argument
809 if (t->flags & CPU_IS_FIRST_THREAD_IN_CORE) in delta_cpu()
813 delta_thread(t, t2, c2); /* c2 is core delta */ in delta_cpu()
816 if (t->flags & CPU_IS_FIRST_CORE_IN_PACKAGE) in delta_cpu()
822 void clear_counters(struct thread_data *t, struct core_data *c, struct pkg_data *p) in clear_counters() argument
824 t->tsc = 0; in clear_counters()
825 t->aperf = 0; in clear_counters()
826 t->mperf = 0; in clear_counters()
827 t->c1 = 0; in clear_counters()
829 t->smi_count = 0; in clear_counters()
830 t->extra_delta32 = 0; in clear_counters()
831 t->extra_delta64 = 0; in clear_counters()
834 t->flags = CPU_IS_FIRST_THREAD_IN_CORE | CPU_IS_FIRST_CORE_IN_PACKAGE; in clear_counters()
865 int sum_counters(struct thread_data *t, struct core_data *c, in sum_counters() argument
868 average.threads.tsc += t->tsc; in sum_counters()
869 average.threads.aperf += t->aperf; in sum_counters()
870 average.threads.mperf += t->mperf; in sum_counters()
871 average.threads.c1 += t->c1; in sum_counters()
873 average.threads.extra_delta32 += t->extra_delta32; in sum_counters()
874 average.threads.extra_delta64 += t->extra_delta64; in sum_counters()
877 if (!(t->flags & CPU_IS_FIRST_THREAD_IN_CORE)) in sum_counters()
887 if (!(t->flags & CPU_IS_FIRST_CORE_IN_PACKAGE)) in sum_counters()
923 void compute_average(struct thread_data *t, struct core_data *c, in compute_average() argument
928 for_all_cpus(sum_counters, t, c, p); in compute_average()
979 int get_counters(struct thread_data *t, struct core_data *c, struct pkg_data *p) in get_counters() argument
981 int cpu = t->cpu_id; in get_counters()
989 t->tsc = rdtsc(); /* we are running on local CPU of interest */ in get_counters()
992 if (get_msr(cpu, MSR_IA32_APERF, &t->aperf)) in get_counters()
994 if (get_msr(cpu, MSR_IA32_MPERF, &t->mperf)) in get_counters()
996 t->aperf = t->aperf * aperf_mperf_multiplier; in get_counters()
997 t->mperf = t->mperf * aperf_mperf_multiplier; in get_counters()
1003 t->smi_count = msr & 0xFFFFFFFF; in get_counters()
1008 t->extra_delta32 = msr & 0xFFFFFFFF; in get_counters()
1012 if (get_msr(cpu, extra_delta_offset64, &t->extra_delta64)) in get_counters()
1018 t->extra_msr32 = msr & 0xFFFFFFFF; in get_counters()
1022 if (get_msr(cpu, extra_msr_offset64, &t->extra_msr64)) in get_counters()
1026 if (get_msr(cpu, MSR_CORE_C1_RES, &t->c1)) in get_counters()
1031 if (!(t->flags & CPU_IS_FIRST_THREAD_IN_CORE)) in get_counters()
1059 if (!(t->flags & CPU_IS_FIRST_CORE_IN_PACKAGE)) in get_counters()
1616 struct thread_data *t, *t2; in for_all_cpus_2() local
1620 t = GET_THREAD(thread_base, thread_no, core_no, pkg_no); in for_all_cpus_2()
1622 if (cpu_is_not_present(t->cpu_id)) in for_all_cpus_2()
1633 retval = func(t, c, p, t2, c2, p2); in for_all_cpus_2()
2003 int print_epb(struct thread_data *t, struct core_data *c, struct pkg_data *p) in print_epb() argument
2012 cpu = t->cpu_id; in print_epb()
2015 if (!(t->flags & CPU_IS_FIRST_THREAD_IN_CORE) || !(t->flags & CPU_IS_FIRST_CORE_IN_PACKAGE)) in print_epb()
2048 int print_perf_limit(struct thread_data *t, struct core_data *c, struct pkg_data *p) in print_perf_limit() argument
2053 cpu = t->cpu_id; in print_perf_limit()
2056 if (!(t->flags & CPU_IS_FIRST_THREAD_IN_CORE) || !(t->flags & CPU_IS_FIRST_CORE_IN_PACKAGE)) in print_perf_limit()
2280 int print_thermal(struct thread_data *t, struct core_data *c, struct pkg_data *p) in print_thermal() argument
2289 cpu = t->cpu_id; in print_thermal()
2292 if (!(t->flags & CPU_IS_FIRST_THREAD_IN_CORE)) in print_thermal()
2300 if (do_ptm && (t->flags & CPU_IS_FIRST_CORE_IN_PACKAGE)) { in print_thermal()
2357 int print_rapl(struct thread_data *t, struct core_data *c, struct pkg_data *p) in print_rapl() argument
2366 if (!(t->flags & CPU_IS_FIRST_THREAD_IN_CORE) || !(t->flags & CPU_IS_FIRST_CORE_IN_PACKAGE)) in print_rapl()
2369 cpu = t->cpu_id; in print_rapl()
2622 int set_temperature_target(struct thread_data *t, struct core_data *c, struct pkg_data *p) in set_temperature_target() argument
2633 if (!(t->flags & CPU_IS_FIRST_THREAD_IN_CORE) || !(t->flags & CPU_IS_FIRST_CORE_IN_PACKAGE)) in set_temperature_target()
2636 cpu = t->cpu_id; in set_temperature_target()
2936 allocate_counters(struct thread_data **t, struct core_data **c, struct pkg_data **p) in allocate_counters() argument
2940 *t = calloc(topo.num_threads_per_core * topo.num_cores_per_pkg * in allocate_counters()
2942 if (*t == NULL) in allocate_counters()
2947 (*t)[i].cpu_id = -1; in allocate_counters()
2980 struct thread_data *t; in init_counter() local
2984 t = GET_THREAD(thread_base, thread_num, core_num, pkg_num); in init_counter()
2988 t->cpu_id = cpu_id; in init_counter()
2990 t->flags |= CPU_IS_FIRST_THREAD_IN_CORE; in init_counter()
2992 t->flags |= CPU_IS_FIRST_CORE_IN_PACKAGE; in init_counter()