]> git.baikalelectronics.ru Git - kernel.git/commit
perf bench futex: Sync waker threads
authorJames Yang <james.yang@arm.com>
Mon, 27 Nov 2017 04:21:01 +0000 (20:21 -0800)
committerArnaldo Carvalho de Melo <acme@redhat.com>
Tue, 5 Dec 2017 13:23:44 +0000 (10:23 -0300)
commit921a07f4bff129ea257f494d053c09f1e0bc2874
tree0e126a5c26338d3997f44794f58db0e427e0c80a
parent47da97b18ad3bb568022f87561b05c190230d4da
perf bench futex: Sync waker threads

Waker threads in the futex wake-parallel benchmark are started by a loop
using pthread_create().  However, there is no synchronization for when
the waker threads wake the waiting threads.  Comparison of the waker
threads' measurement timestamps show they are not all running
concurrently because older waker threads finish their task before newer
waker threads even start.

This patch uses a barrier to better synchronize the waker threads.

Signed-off-by: James Yang <james.yang@arm.com
Cc: Kim Phillips <kim.phillips@arm.com>
Link: http://lkml.kernel.org/r/20171127042101.3659-4-dave@stgolabs.net
Signed-off-by: Davidlohr Bueso <dave@stgolabs.net>
[ Disable the wake-parallel test for systems without pthread_barrier_t ]
Signed-off-by: Arnaldo Carvalho de Melo <acme@redhat.com>
tools/perf/bench/futex-wake-parallel.c