int main(int argc, char* argv[]) { printf("Benchmark for selection sort:\n"); printf("Small data set:\n"); do_benchmark(BENCHMARK_ITERATIONS, selection_sort, data_set_small, sizeof(data_set_small) / sizeof(int)); printf("Large data set:\n"); do_benchmark(BENCHMARK_ITERATIONS, selection_sort, data_set_large, sizeof(data_set_small) / sizeof(int)); printf("\n\nBenchmark for bubble sort:\n"); printf("Small data set:\n"); do_benchmark(BENCHMARK_ITERATIONS, bubble_sort, data_set_small, sizeof(data_set_small) / sizeof(int)); printf("Large data set:\n"); do_benchmark(BENCHMARK_ITERATIONS, bubble_sort, data_set_large, sizeof(data_set_small) / sizeof(int)); return 0; }
void scan_gui(gboolean reload) { SCAN_START(); bench_value er = EMPTY_BENCH_VALUE; if (params.run_benchmark) { int argc = 0; ui_init(&argc, NULL); } if (params.gui_running || params.run_benchmark) { do_benchmark(benchmark_gui, BENCHMARK_GUI); } else { bench_results[BENCHMARK_GUI] = er; } SCAN_END(); }
int main() { do_benchmark(1e-12, 1e5, 1e-10, 1e-6); return 0; }
int main (int argc, char **argv) { timing_t cur; size_t iters = 0, num_threads = 1; unsigned long res; json_ctx_t json_ctx; double d_total_s, d_total_i; struct sigaction act; if (argc == 1) num_threads = 1; else if (argc == 2) { long ret; errno = 0; ret = strtol(argv[1], NULL, 10); if (errno || ret == 0) usage(argv[0]); num_threads = ret; } else usage(argv[0]); init_random_values (); json_init (&json_ctx, 0, stdout); json_document_begin (&json_ctx); json_attr_string (&json_ctx, "timing_type", TIMING_TYPE); json_attr_object_begin (&json_ctx, "functions"); json_attr_object_begin (&json_ctx, "malloc"); json_attr_object_begin (&json_ctx, ""); TIMING_INIT (res); (void) res; memset (&act, 0, sizeof (act)); act.sa_handler = &alarm_handler; sigaction (SIGALRM, &act, NULL); alarm (BENCHMARK_DURATION); cur = do_benchmark (num_threads, &iters); struct rusage usage; getrusage(RUSAGE_SELF, &usage); d_total_s = cur; d_total_i = iters; json_attr_double (&json_ctx, "duration", d_total_s); json_attr_double (&json_ctx, "iterations", d_total_i); json_attr_double (&json_ctx, "time_per_iteration", d_total_s / d_total_i); json_attr_double (&json_ctx, "max_rss", usage.ru_maxrss); json_attr_double (&json_ctx, "threads", num_threads); json_attr_double (&json_ctx, "min_size", MIN_ALLOCATION_SIZE); json_attr_double (&json_ctx, "max_size", MAX_ALLOCATION_SIZE); json_attr_double (&json_ctx, "random_seed", RAND_SEED); json_attr_object_end (&json_ctx); json_attr_object_end (&json_ctx); json_attr_object_end (&json_ctx); json_document_end (&json_ctx); return 0; }