Lines Matching refs:params

173 	struct timerlat_hist_params *params = tool->params;
179 if (params->output_divisor)
180 latency = latency / params->output_divisor;
237 struct timerlat_hist_params *params = tool->params;
243 if (params->no_header)
249 params->output_divisor == 1 ? "nanoseconds" : "microseconds",
250 params->output_divisor == 1 ? "ns" : "us");
254 if (!params->no_index)
258 if (params->cpus && !CPU_ISSET(cpu, &params->monitored_cpus))
264 if (!params->no_irq)
267 if (!params->no_thread)
270 if (params->user_hist)
284 timerlat_print_summary(struct timerlat_hist_params *params,
290 if (params->no_summary)
293 if (!params->no_index)
297 if (params->cpus && !CPU_ISSET(cpu, &params->monitored_cpus))
303 if (!params->no_irq)
307 if (!params->no_thread)
311 if (params->user_hist)
317 if (!params->no_index)
321 if (params->cpus && !CPU_ISSET(cpu, &params->monitored_cpus))
327 if (!params->no_irq)
331 if (!params->no_thread)
335 if (params->user_hist)
341 if (!params->no_index)
345 if (params->cpus && !CPU_ISSET(cpu, &params->monitored_cpus))
351 if (!params->no_irq) {
359 if (!params->no_thread) {
367 if (params->user_hist) {
377 if (!params->no_index)
381 if (params->cpus && !CPU_ISSET(cpu, &params->monitored_cpus))
387 if (!params->no_irq)
391 if (!params->no_thread)
395 if (params->user_hist)
408 timerlat_print_stats(struct timerlat_hist_params *params, struct osnoise_tool *tool)
420 if (!params->no_index)
425 if (params->cpus && !CPU_ISSET(cpu, &params->monitored_cpus))
431 if (!params->no_irq) {
437 if (!params->no_thread) {
443 if (params->user_hist) {
451 if (total == 0 && !params->with_zeros) {
461 if (!params->no_index)
465 if (params->cpus && !CPU_ISSET(cpu, &params->monitored_cpus))
471 if (!params->no_irq)
475 if (!params->no_thread)
479 if (params->user_hist)
487 timerlat_print_summary(params, trace, data);
563 struct timerlat_hist_params *params;
569 params = calloc(1, sizeof(*params));
570 if (!params)
574 params->dma_latency = -1;
577 params->output_divisor = 1000;
578 params->bucket_size = 1;
579 params->entries = 256;
631 params->stop_total_us = auto_thresh;
632 params->stop_us = auto_thresh;
635 params->print_stack = auto_thresh;
638 params->trace_output = "timerlat_trace.txt";
642 retval = parse_cpu_set(optarg, &params->monitored_cpus);
645 params->cpus = optarg;
648 params->cgroup = 1;
651 params->cgroup_name = NULL;
654 params->cgroup_name = ++optarg;
658 params->bucket_size = get_llong_from_str(optarg);
659 if ((params->bucket_size == 0) || (params->bucket_size >= 1000000))
666 params->duration = parse_seconds_duration(optarg);
667 if (!params->duration)
677 if (params->events)
678 tevent->next = params->events;
680 params->events = tevent;
683 params->entries = get_llong_from_str(optarg);
684 if ((params->entries < 10) || (params->entries > 9999999))
692 params->hk_cpus = 1;
693 retval = parse_cpu_set(optarg, &params->hk_cpu_set);
700 params->stop_us = get_llong_from_str(optarg);
703 params->output_divisor = 1;
706 params->timerlat_period_us = get_llong_from_str(optarg);
707 if (params->timerlat_period_us > 1000000)
711 retval = parse_prio(optarg, &params->sched_param);
714 params->set_sched = 1;
717 params->print_stack = get_llong_from_str(optarg);
720 params->stop_total_us = get_llong_from_str(optarg);
725 params->trace_output = &optarg[1];
727 params->trace_output = "timerlat_trace.txt";
730 params->user_workload = 1;
733 params->user_hist = 1;
736 params->no_irq = 1;
739 params->no_thread = 1;
742 params->no_header = 1;
745 params->no_summary = 1;
748 params->no_index = 1;
751 params->with_zeros = 1;
754 if (params->events) {
755 retval = trace_event_add_trigger(params->events, optarg);
765 if (params->events) {
766 retval = trace_event_add_filter(params->events, optarg);
776 params->dma_latency = get_llong_from_str(optarg);
777 if (params->dma_latency < 0 || params->dma_latency > 10000) {
783 params->no_aa = 1;
786 params->dump_tasks = 1;
798 if (params->no_irq && params->no_thread)
801 if (params->no_index && !params->with_zeros)
807 if (!params->stop_us && !params->stop_total_us)
808 params->no_aa = 1;
810 return params;
817 timerlat_hist_apply_config(struct osnoise_tool *tool, struct timerlat_hist_params *params)
821 if (!params->sleep_time)
822 params->sleep_time = 1;
824 if (params->cpus) {
825 retval = osnoise_set_cpus(tool->context, params->cpus);
832 CPU_SET(i, &params->monitored_cpus);
835 if (params->stop_us) {
836 retval = osnoise_set_stop_us(tool->context, params->stop_us);
843 if (params->stop_total_us) {
844 retval = osnoise_set_stop_total_us(tool->context, params->stop_total_us);
851 if (params->timerlat_period_us) {
852 retval = osnoise_set_timerlat_period_us(tool->context, params->timerlat_period_us);
859 if (params->print_stack) {
860 retval = osnoise_set_print_stack(tool->context, params->print_stack);
867 if (params->hk_cpus) {
868 retval = sched_setaffinity(getpid(), sizeof(params->hk_cpu_set),
869 &params->hk_cpu_set);
874 } else if (params->cpus) {
882 auto_house_keeping(&params->monitored_cpus);
885 if (params->user_hist) {
903 *timerlat_init_hist(struct timerlat_hist_params *params)
914 tool->data = timerlat_alloc_histogram(nr_cpus, params->entries, params->bucket_size);
918 tool->params = params;
940 timerlat_hist_set_signals(struct timerlat_hist_params *params)
943 if (params->duration) {
945 alarm(params->duration);
951 struct timerlat_hist_params *params;
962 params = timerlat_hist_parse_args(argc, argv);
963 if (!params)
966 tool = timerlat_init_hist(params);
972 retval = timerlat_hist_apply_config(tool, params);
986 if (params->set_sched) {
987 retval = set_comm_sched_attr("timerlat/", &params->sched_param);
994 if (params->cgroup && !params->user_workload) {
995 retval = set_comm_cgroup("timerlat/", params->cgroup_name);
1002 if (params->dma_latency >= 0) {
1003 dma_latency_fd = set_cpu_dma_latency(params->dma_latency);
1010 if (params->trace_output) {
1017 if (params->events) {
1018 retval = trace_events_enable(&record->trace, params->events);
1024 if (!params->no_aa) {
1029 retval = timerlat_aa_init(aa, params->dump_tasks);
1049 if (params->trace_output)
1051 if (!params->no_aa)
1056 timerlat_hist_set_signals(params);
1058 if (params->user_workload) {
1064 params_u.set = &params->monitored_cpus;
1065 if (params->set_sched)
1066 params_u.sched_param = &params->sched_param;
1070 params_u.cgroup_name = params->cgroup_name;
1078 sleep(params->sleep_time);
1095 if (params->user_workload) {
1102 if (params->user_workload && !params_u.stopped_running) {
1107 timerlat_print_stats(params, tool);
1114 if (!params->no_aa)
1115 timerlat_auto_analysis(params->stop_us, params->stop_total_us);
1117 if (params->trace_output) {
1118 printf(" Saving trace to %s\n", params->trace_output);
1119 save_trace_to_file(record->trace.inst, params->trace_output);
1127 trace_events_destroy(&record->trace, params->events);
1128 params->events = NULL;
1134 free(params);