kernel_optimize_test/tools/perf
James Yang 8085e5ab41 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>
2017-12-05 10:23:44 -03:00
..
arch Merge branch 'linus' into perf/core, to fix conflicts 2017-11-07 10:30:18 +01:00
bench perf bench futex: Sync waker threads 2017-12-05 10:23:44 -03:00
Documentation perf buildid-cache: Document for Node.js USDT 2017-11-29 18:18:01 -03:00
jvmti License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
pmu-events perf vendor events powerpc: Update POWER9 events 2017-11-16 14:49:54 -03:00
python License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
scripts License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
tests perf test: Disable test cases 19 and 20 on s390x 2017-11-29 18:17:59 -03:00
trace tools headers: Syncronize mman.h ABI header 2017-11-28 14:31:56 -03:00
ui perf tools: Move symbol__calc_percent() call to outside symbol__disassemble() 2017-11-17 12:16:26 -03:00
util perf intel-pt: Improve build messages for files that differ from the kernel 2017-11-29 18:18:02 -03:00
.gitignore
Build
builtin-annotate.c Merge branch 'linus' into perf/core, to fix conflicts 2017-11-07 10:30:18 +01:00
builtin-bench.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
builtin-buildid-cache.c perf buildid-cache: Update help text for purge command 2017-11-16 14:49:54 -03:00
builtin-buildid-list.c Merge branch 'linus' into perf/core, to fix conflicts 2017-11-07 10:30:18 +01:00
builtin-c2c.c perf c2c: Fix spelling mistakes in browser help text 2017-11-16 14:50:03 -03:00
builtin-config.c Merge branch 'linus' into perf/core, to fix conflicts 2017-11-07 10:30:18 +01:00
builtin-data.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
builtin-diff.c Merge branch 'linus' into perf/core, to fix conflicts 2017-11-07 10:30:18 +01:00
builtin-evlist.c Merge branch 'linus' into perf/core, to fix conflicts 2017-11-07 10:30:18 +01:00
builtin-ftrace.c
builtin-help.c perf help: Fix a bug during strstart() conversion 2017-11-28 14:21:18 -03:00
builtin-inject.c Merge branch 'linus' into perf/core, to fix conflicts 2017-11-07 10:30:18 +01:00
builtin-kallsyms.c
builtin-kmem.c Merge branch 'linus' into perf/core, to fix conflicts 2017-11-07 10:30:18 +01:00
builtin-kvm.c perf tools: Optimize sample parsing for ordered events 2017-11-17 12:16:04 -03:00
builtin-list.c Merge branch 'linus' into perf/core, to fix conflicts 2017-11-07 10:30:18 +01:00
builtin-lock.c Merge branch 'linus' into perf/core, to fix conflicts 2017-11-07 10:30:18 +01:00
builtin-mem.c Merge branch 'linus' into perf/core, to fix conflicts 2017-11-07 10:30:18 +01:00
builtin-probe.c
builtin-record.c perf record: Synthesize thread map and cpu map 2017-11-29 18:18:00 -03:00
builtin-report.c perf report: Ignore kptr_restrict when not sampling the kernel 2017-11-28 14:24:52 -03:00
builtin-sched.c Merge branch 'linus' into perf/core, to fix conflicts 2017-11-07 10:30:18 +01:00
builtin-script.c perf script: Allow computing 'perf stat' style metrics 2017-11-29 18:18:01 -03:00
builtin-stat.c perf record: Synthesize unit/scale/... in event update 2017-11-29 18:18:00 -03:00
builtin-timechart.c perf tools: Add struct perf_data_file 2017-10-30 13:37:37 -03:00
builtin-top.c perf top: Use signal interface for SIGWINCH handler 2017-11-28 14:27:43 -03:00
builtin-trace.c perf trace: Fix an exit code of trace__symbols_init 2017-11-28 14:20:15 -03:00
builtin-version.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
builtin.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
check-headers.sh tools headers: Follow the upstream UAPI header version 100% differ from the kernel 2017-11-29 18:17:59 -03:00
command-list.txt
CREDITS
design.txt
Makefile License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
Makefile.config tools build feature: Check if pthread_barrier_t is available 2017-12-05 10:21:59 -03:00
Makefile.perf perf trace beauty kcmp: Beautify arguments 2017-10-31 16:17:04 -03:00
MANIFEST
perf-archive.sh License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
perf-completion.sh License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
perf-read-vdso.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
perf-sys.h License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
perf-with-kcore.sh
perf.c License cleanup: add SPDX GPL-2.0 license identifier to files with no license 2017-11-02 11:10:55 +01:00
perf.h Merge branch 'linus' into perf/core, to fix conflicts 2017-11-07 10:30:18 +01:00