Table of Contents
qt_double_sum, qt_uint_sum, qt_int_sum - add up an array in parallel
#include <qthread/qloop.h>
double
qt_double_sum (double *array, size_t length, int checkfeb);
unsigned int
qt_uint_sum (unsigned int *array, size_t length, int checkfeb);
int
qt_int_sum (int *array, size_t length, int checkfeb);
These
functions take as input an array of length numbers and will return the
sum of those numbers. This sum is computed in parallel by dividing the iterations
evenly among the shepherds, using futures to restrict the parallelism to
the available limits.
If checkfeb is non-zero, these functions will wait
for the entries in the array to be full before adding them. They DO NOT
check whether the array entries are properly aligned.
The sum
of the first length entries of array.
qt_double_prod(3)
, qt_double_max(3)
,
qt_double_min(3)
, qt_uint_prod(3)
, qt_uint_max(3)
, qt_uint_min(3)
, qt_int_prod(3)
,
qt_int_max(3)
, qt_int_min(3)
, qt_loop(3)
, qt_loop_future(3)
, qt_loop_balance(3)
,
qt_loop_balance_future(3)
, qt_loopaccum_balance(3)
, qt_loopaccum_balance_future(3)
Table of Contents