• Home
  • Raw
  • Download

Lines Matching refs:top

21 static double sym_weight(const struct sym_entry *sym, struct perf_top *top)  in sym_weight()  argument
26 if (!top->display_weighted) in sym_weight()
29 for (counter = 1; counter < top->evlist->nr_entries - 1; counter++) in sym_weight()
37 static void perf_top__remove_active_sym(struct perf_top *top, struct sym_entry *syme) in perf_top__remove_active_sym() argument
39 pthread_mutex_lock(&top->active_symbols_lock); in perf_top__remove_active_sym()
41 pthread_mutex_unlock(&top->active_symbols_lock); in perf_top__remove_active_sym()
70 size_t perf_top__header_snprintf(struct perf_top *top, char *bf, size_t size) in perf_top__header_snprintf() argument
73 float samples_per_sec = top->samples / top->delay_secs; in perf_top__header_snprintf()
74 float ksamples_per_sec = top->kernel_samples / top->delay_secs; in perf_top__header_snprintf()
75 float esamples_percent = (100.0 * top->exact_samples) / top->samples; in perf_top__header_snprintf()
86 float us_samples_per_sec = top->us_samples / top->delay_secs; in perf_top__header_snprintf()
87 float guest_kernel_samples_per_sec = top->guest_kernel_samples / top->delay_secs; in perf_top__header_snprintf()
88 float guest_us_samples_per_sec = top->guest_us_samples / top->delay_secs; in perf_top__header_snprintf()
107 if (top->evlist->nr_entries == 1 || !top->display_weighted) { in perf_top__header_snprintf()
109 first = list_entry(top->evlist->entries.next, struct perf_evsel, node); in perf_top__header_snprintf()
112 top->freq ? "Hz" : ""); in perf_top__header_snprintf()
115 if (!top->display_weighted) { in perf_top__header_snprintf()
117 event_name(top->sym_evsel)); in perf_top__header_snprintf()
125 list_for_each_entry(counter, &top->evlist->entries, node) { in perf_top__header_snprintf()
139 if (top->target_pid != -1) in perf_top__header_snprintf()
141 top->target_pid); in perf_top__header_snprintf()
142 else if (top->target_tid != -1) in perf_top__header_snprintf()
144 top->target_tid); in perf_top__header_snprintf()
148 if (top->cpu_list) in perf_top__header_snprintf()
150 top->evlist->cpus->nr > 1 ? "s" : "", top->cpu_list); in perf_top__header_snprintf()
152 if (top->target_tid != -1) in perf_top__header_snprintf()
156 top->evlist->cpus->nr, in perf_top__header_snprintf()
157 top->evlist->cpus->nr > 1 ? "s" : ""); in perf_top__header_snprintf()
163 void perf_top__reset_sample_counters(struct perf_top *top) in perf_top__reset_sample_counters() argument
165 top->samples = top->us_samples = top->kernel_samples = in perf_top__reset_sample_counters()
166 top->exact_samples = top->guest_kernel_samples = in perf_top__reset_sample_counters()
167 top->guest_us_samples = 0; in perf_top__reset_sample_counters()
170 float perf_top__decay_samples(struct perf_top *top, struct rb_root *root) in perf_top__decay_samples() argument
174 int snap = !top->display_weighted ? top->sym_evsel->idx : 0, j; in perf_top__decay_samples()
177 pthread_mutex_lock(&top->active_symbols_lock); in perf_top__decay_samples()
178 syme = list_entry(top->active_symbols.next, struct sym_entry, node); in perf_top__decay_samples()
179 pthread_mutex_unlock(&top->active_symbols_lock); in perf_top__decay_samples()
181 top->rb_entries = 0; in perf_top__decay_samples()
182 list_for_each_entry_safe_from(syme, n, &top->active_symbols, node) { in perf_top__decay_samples()
186 if ((top->hide_user_symbols && in perf_top__decay_samples()
188 (top->hide_kernel_symbols && in perf_top__decay_samples()
190 perf_top__remove_active_sym(top, syme); in perf_top__decay_samples()
193 syme->weight = sym_weight(syme, top); in perf_top__decay_samples()
195 if ((int)syme->snap_count >= top->count_filter) { in perf_top__decay_samples()
197 ++top->rb_entries; in perf_top__decay_samples()
201 for (j = 0; j < top->evlist->nr_entries; j++) in perf_top__decay_samples()
202 syme->count[j] = top->zero ? 0 : syme->count[j] * 7 / 8; in perf_top__decay_samples()
204 perf_top__remove_active_sym(top, syme); in perf_top__decay_samples()
213 void perf_top__find_widths(struct perf_top *top, struct rb_root *root, in perf_top__find_widths() argument
225 if (++printed > top->print_entries || in perf_top__find_widths()
226 (int)syme->snap_count < top->count_filter) in perf_top__find_widths()