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)