qt_double_prod
SYNOPSIS
#include <qthread/qloop.h>
double
qt_double_prod(qthread_t *me, double *array, size_t length,
int checkfeb);
unsigned int
qt_uint_prod(qthread_t *me, unsigned int *array, size_t length,
int checkfeb);
int
qt_int_prod(qthread_t *me, int *array, size_t length, int checkfeb);
DESCRIPTION
These functions take as input an array of length numbers and will
return the product of those numbers. This product is computed in paral-
lel 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 multiplying them. They DO NOT check whether
the array entries are properly aligned.
RETURN VALUE
The product of the first length entries of array.
SEE ALSO
qt_double_sum(3), qt_double_max(3), qt_double_min(3), qt_uint_sum(3),
qt_uint_max(3), qt_uint_min(3), qt_int_sum(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)
libqthread JUNE 2007 qt_double_prod(3)