Lines Matching +full:wakeup +full:- +full:latency
1 // SPDX-License-Identifier: GPL-2.0
5 * Block a bunch of threads and let parallel waker threads wakeup an
6 * equal amount of them. The program output reflects the avg latency
28 #include <subcmd/parse-options.h>
48 /* all threads will block on the same futex -- hash bucket chaos ;) */
73 "perf bench futex wake-parallel <options>",
86 waker->nwoken = futex_wake(&futex, nwakes, futex_flag); in waking_workerfn()
87 if (waker->nwoken != nwakes) in waking_workerfn()
88 warnx("couldn't wakeup all tasks (%d/%d)", in waking_workerfn()
89 waker->nwoken, nwakes); in waking_workerfn()
92 timersub(&end, &start, &waker->runtime); in waking_workerfn()
111 * Thread creation order will impact per-thread latency in wakeup_threads()
133 threads_starting--; in blocked_workerfn()
201 printf("[Run %d]: Avg per-thread latency (waking %d/%d threads) " in print_run()
202 "in %.4f ms (+-%.2f%%)\n", run_num + 1, wakeup_avg, in print_run()
216 printf("Avg per-thread latency (waking %d/%d threads) in %.4f ms (+-%.2f%%)\n", in print_summary()
282 * Each thread will wakeup nwakes tasks in in bench_futex_wake_parallel()