Lines Matching refs:params
172 struct timerlat_hist_params *params = tool->params; in timerlat_hist_update() local
178 if (params->output_divisor) in timerlat_hist_update()
179 latency = latency / params->output_divisor; in timerlat_hist_update()
237 struct timerlat_hist_params *params = tool->params; in timerlat_hist_header() local
243 if (params->no_header) in timerlat_hist_header()
249 params->output_divisor == 1 ? "nanoseconds" : "microseconds", in timerlat_hist_header()
250 params->output_divisor == 1 ? "ns" : "us"); in timerlat_hist_header()
254 if (!params->no_index) in timerlat_hist_header()
258 if (params->cpus && !CPU_ISSET(cpu, ¶ms->monitored_cpus)) in timerlat_hist_header()
264 if (!params->no_irq) in timerlat_hist_header()
267 if (!params->no_thread) in timerlat_hist_header()
270 if (params->user_hist) in timerlat_hist_header()
284 timerlat_print_summary(struct timerlat_hist_params *params, in timerlat_print_summary() argument
290 if (params->no_summary) in timerlat_print_summary()
293 if (!params->no_index) in timerlat_print_summary()
297 if (params->cpus && !CPU_ISSET(cpu, ¶ms->monitored_cpus)) in timerlat_print_summary()
303 if (!params->no_irq) in timerlat_print_summary()
307 if (!params->no_thread) in timerlat_print_summary()
311 if (params->user_hist) in timerlat_print_summary()
317 if (!params->no_index) in timerlat_print_summary()
321 if (params->cpus && !CPU_ISSET(cpu, ¶ms->monitored_cpus)) in timerlat_print_summary()
327 if (!params->no_irq) in timerlat_print_summary()
331 if (!params->no_thread) in timerlat_print_summary()
335 if (params->user_hist) in timerlat_print_summary()
341 if (!params->no_index) in timerlat_print_summary()
345 if (params->cpus && !CPU_ISSET(cpu, ¶ms->monitored_cpus)) in timerlat_print_summary()
351 if (!params->no_irq) { in timerlat_print_summary()
359 if (!params->no_thread) { in timerlat_print_summary()
367 if (params->user_hist) { in timerlat_print_summary()
377 if (!params->no_index) in timerlat_print_summary()
381 if (params->cpus && !CPU_ISSET(cpu, ¶ms->monitored_cpus)) in timerlat_print_summary()
387 if (!params->no_irq) in timerlat_print_summary()
391 if (!params->no_thread) in timerlat_print_summary()
395 if (params->user_hist) in timerlat_print_summary()
408 timerlat_print_stats(struct timerlat_hist_params *params, struct osnoise_tool *tool) in timerlat_print_stats() argument
420 if (!params->no_index) in timerlat_print_stats()
425 if (params->cpus && !CPU_ISSET(cpu, ¶ms->monitored_cpus)) in timerlat_print_stats()
431 if (!params->no_irq) { in timerlat_print_stats()
437 if (!params->no_thread) { in timerlat_print_stats()
443 if (params->user_hist) { in timerlat_print_stats()
451 if (total == 0 && !params->with_zeros) { in timerlat_print_stats()
461 if (!params->no_index) in timerlat_print_stats()
465 if (params->cpus && !CPU_ISSET(cpu, ¶ms->monitored_cpus)) in timerlat_print_stats()
471 if (!params->no_irq) in timerlat_print_stats()
475 if (!params->no_thread) in timerlat_print_stats()
479 if (params->user_hist) in timerlat_print_stats()
487 timerlat_print_summary(params, trace, data); in timerlat_print_stats()
558 struct timerlat_hist_params *params; in timerlat_hist_parse_args() local
564 params = calloc(1, sizeof(*params)); in timerlat_hist_parse_args()
565 if (!params) in timerlat_hist_parse_args()
569 params->dma_latency = -1; in timerlat_hist_parse_args()
572 params->output_divisor = 1000; in timerlat_hist_parse_args()
573 params->bucket_size = 1; in timerlat_hist_parse_args()
574 params->entries = 256; in timerlat_hist_parse_args()
625 params->stop_total_us = auto_thresh; in timerlat_hist_parse_args()
626 params->stop_us = auto_thresh; in timerlat_hist_parse_args()
629 params->print_stack = auto_thresh; in timerlat_hist_parse_args()
632 params->trace_output = "timerlat_trace.txt"; in timerlat_hist_parse_args()
636 retval = parse_cpu_set(optarg, ¶ms->monitored_cpus); in timerlat_hist_parse_args()
639 params->cpus = optarg; in timerlat_hist_parse_args()
642 params->cgroup = 1; in timerlat_hist_parse_args()
645 params->cgroup_name = NULL; in timerlat_hist_parse_args()
648 params->cgroup_name = ++optarg; in timerlat_hist_parse_args()
652 params->bucket_size = get_llong_from_str(optarg); in timerlat_hist_parse_args()
653 if ((params->bucket_size == 0) || (params->bucket_size >= 1000000)) in timerlat_hist_parse_args()
660 params->duration = parse_seconds_duration(optarg); in timerlat_hist_parse_args()
661 if (!params->duration) in timerlat_hist_parse_args()
671 if (params->events) in timerlat_hist_parse_args()
672 tevent->next = params->events; in timerlat_hist_parse_args()
674 params->events = tevent; in timerlat_hist_parse_args()
677 params->entries = get_llong_from_str(optarg); in timerlat_hist_parse_args()
678 if ((params->entries < 10) || (params->entries > 9999999)) in timerlat_hist_parse_args()
686 params->hk_cpus = 1; in timerlat_hist_parse_args()
687 retval = parse_cpu_set(optarg, ¶ms->hk_cpu_set); in timerlat_hist_parse_args()
694 params->stop_us = get_llong_from_str(optarg); in timerlat_hist_parse_args()
697 params->output_divisor = 1; in timerlat_hist_parse_args()
700 params->timerlat_period_us = get_llong_from_str(optarg); in timerlat_hist_parse_args()
701 if (params->timerlat_period_us > 1000000) in timerlat_hist_parse_args()
705 retval = parse_prio(optarg, ¶ms->sched_param); in timerlat_hist_parse_args()
708 params->set_sched = 1; in timerlat_hist_parse_args()
711 params->print_stack = get_llong_from_str(optarg); in timerlat_hist_parse_args()
714 params->stop_total_us = get_llong_from_str(optarg); in timerlat_hist_parse_args()
719 params->trace_output = &optarg[1]; in timerlat_hist_parse_args()
721 params->trace_output = "timerlat_trace.txt"; in timerlat_hist_parse_args()
724 params->user_hist = 1; in timerlat_hist_parse_args()
727 params->no_irq = 1; in timerlat_hist_parse_args()
730 params->no_thread = 1; in timerlat_hist_parse_args()
733 params->no_header = 1; in timerlat_hist_parse_args()
736 params->no_summary = 1; in timerlat_hist_parse_args()
739 params->no_index = 1; in timerlat_hist_parse_args()
742 params->with_zeros = 1; in timerlat_hist_parse_args()
745 if (params->events) { in timerlat_hist_parse_args()
746 retval = trace_event_add_trigger(params->events, optarg); in timerlat_hist_parse_args()
756 if (params->events) { in timerlat_hist_parse_args()
757 retval = trace_event_add_filter(params->events, optarg); in timerlat_hist_parse_args()
767 params->dma_latency = get_llong_from_str(optarg); in timerlat_hist_parse_args()
768 if (params->dma_latency < 0 || params->dma_latency > 10000) { in timerlat_hist_parse_args()
774 params->no_aa = 1; in timerlat_hist_parse_args()
777 params->dump_tasks = 1; in timerlat_hist_parse_args()
789 if (params->no_irq && params->no_thread) in timerlat_hist_parse_args()
792 if (params->no_index && !params->with_zeros) in timerlat_hist_parse_args()
798 if (!params->stop_us && !params->stop_total_us) in timerlat_hist_parse_args()
799 params->no_aa = 1; in timerlat_hist_parse_args()
801 return params; in timerlat_hist_parse_args()
808 timerlat_hist_apply_config(struct osnoise_tool *tool, struct timerlat_hist_params *params) in timerlat_hist_apply_config() argument
812 if (!params->sleep_time) in timerlat_hist_apply_config()
813 params->sleep_time = 1; in timerlat_hist_apply_config()
815 if (params->cpus) { in timerlat_hist_apply_config()
816 retval = osnoise_set_cpus(tool->context, params->cpus); in timerlat_hist_apply_config()
823 CPU_SET(i, ¶ms->monitored_cpus); in timerlat_hist_apply_config()
826 if (params->stop_us) { in timerlat_hist_apply_config()
827 retval = osnoise_set_stop_us(tool->context, params->stop_us); in timerlat_hist_apply_config()
834 if (params->stop_total_us) { in timerlat_hist_apply_config()
835 retval = osnoise_set_stop_total_us(tool->context, params->stop_total_us); in timerlat_hist_apply_config()
842 if (params->timerlat_period_us) { in timerlat_hist_apply_config()
843 retval = osnoise_set_timerlat_period_us(tool->context, params->timerlat_period_us); in timerlat_hist_apply_config()
850 if (params->print_stack) { in timerlat_hist_apply_config()
851 retval = osnoise_set_print_stack(tool->context, params->print_stack); in timerlat_hist_apply_config()
858 if (params->hk_cpus) { in timerlat_hist_apply_config()
859 retval = sched_setaffinity(getpid(), sizeof(params->hk_cpu_set), in timerlat_hist_apply_config()
860 ¶ms->hk_cpu_set); in timerlat_hist_apply_config()
865 } else if (params->cpus) { in timerlat_hist_apply_config()
873 auto_house_keeping(¶ms->monitored_cpus); in timerlat_hist_apply_config()
876 if (params->user_hist) { in timerlat_hist_apply_config()
894 *timerlat_init_hist(struct timerlat_hist_params *params) in timerlat_init_hist() argument
905 tool->data = timerlat_alloc_histogram(nr_cpus, params->entries, params->bucket_size); in timerlat_init_hist()
909 tool->params = params; in timerlat_init_hist()
931 timerlat_hist_set_signals(struct timerlat_hist_params *params) in timerlat_hist_set_signals() argument
934 if (params->duration) { in timerlat_hist_set_signals()
936 alarm(params->duration); in timerlat_hist_set_signals()
942 struct timerlat_hist_params *params; in timerlat_hist_main() local
953 params = timerlat_hist_parse_args(argc, argv); in timerlat_hist_main()
954 if (!params) in timerlat_hist_main()
957 tool = timerlat_init_hist(params); in timerlat_hist_main()
963 retval = timerlat_hist_apply_config(tool, params); in timerlat_hist_main()
977 if (params->set_sched) { in timerlat_hist_main()
978 retval = set_comm_sched_attr("timerlat/", ¶ms->sched_param); in timerlat_hist_main()
985 if (params->cgroup && !params->user_hist) { in timerlat_hist_main()
986 retval = set_comm_cgroup("timerlat/", params->cgroup_name); in timerlat_hist_main()
993 if (params->dma_latency >= 0) { in timerlat_hist_main()
994 dma_latency_fd = set_cpu_dma_latency(params->dma_latency); in timerlat_hist_main()
1001 if (params->trace_output) { in timerlat_hist_main()
1008 if (params->events) { in timerlat_hist_main()
1009 retval = trace_events_enable(&record->trace, params->events); in timerlat_hist_main()
1015 if (!params->no_aa) { in timerlat_hist_main()
1020 retval = timerlat_aa_init(aa, params->dump_tasks); in timerlat_hist_main()
1040 if (params->trace_output) in timerlat_hist_main()
1042 if (!params->no_aa) in timerlat_hist_main()
1047 timerlat_hist_set_signals(params); in timerlat_hist_main()
1049 if (params->user_hist) { in timerlat_hist_main()
1055 params_u.set = ¶ms->monitored_cpus; in timerlat_hist_main()
1056 if (params->set_sched) in timerlat_hist_main()
1057 params_u.sched_param = ¶ms->sched_param; in timerlat_hist_main()
1061 params_u.cgroup_name = params->cgroup_name; in timerlat_hist_main()
1069 sleep(params->sleep_time); in timerlat_hist_main()
1086 if (params->user_hist) { in timerlat_hist_main()
1093 if (params->user_hist && !params_u.stopped_running) { in timerlat_hist_main()
1098 timerlat_print_stats(params, tool); in timerlat_hist_main()
1105 if (!params->no_aa) in timerlat_hist_main()
1106 timerlat_auto_analysis(params->stop_us, params->stop_total_us); in timerlat_hist_main()
1108 if (params->trace_output) { in timerlat_hist_main()
1109 printf(" Saving trace to %s\n", params->trace_output); in timerlat_hist_main()
1110 save_trace_to_file(record->trace.inst, params->trace_output); in timerlat_hist_main()
1118 trace_events_destroy(&record->trace, params->events); in timerlat_hist_main()
1119 params->events = NULL; in timerlat_hist_main()
1125 free(params); in timerlat_hist_main()