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