From 6a9f6819ae661f64c3c042d48f74d6419f63580e Mon Sep 17 00:00:00 2001 From: Burt P Date: Sat, 23 Dec 2017 08:22:46 -0600 Subject: Fix benchmark_parallel_for() to use correct number of threads If (end - start) / threads left a remainder, benchmark_parallel_for() would start an extra thread for the leftover elements. Now, it has the last thread process the few extra elements. Added a note: benchmark_parallel_for(): element [start] included, but [end] is excluded. callback(): expected to processes elements [start] through [end] inclusive. Signed-off-by: Burt P --- includes/benchmark.h | 4 ++++ 1 file changed, 4 insertions(+) (limited to 'includes') diff --git a/includes/benchmark.h b/includes/benchmark.h index fa4ad0cf..277f0c07 100644 --- a/includes/benchmark.h +++ b/includes/benchmark.h @@ -38,6 +38,10 @@ typedef struct { char *bench_value_to_str(bench_value r); bench_value bench_value_from_str(const char* str); +/* Note: + * benchmark_parallel_for(): element [start] included, but [end] is excluded. + * callback(): expected to processes elements [start] through [end] inclusive. + */ bench_value benchmark_parallel_for(gint n_threads, guint start, guint end, gpointer callback, gpointer callback_data); -- cgit v1.2.3