Table of Contents


qt_double_max, qt_uint_max, qt_int_max - find the maximum value within an array in parallel


#include <qthread/qloop.h>

qt_double_max (double *array, size_t length, int checkfeb);

unsigned int
qt_uint_max (unsigned int *array, size_t length, int checkfeb);

qt_int_max (int *array, size_t length, int checkfeb);


These functions take as input an array of length numbers and will return the maximum value within those numbers. This value is computed in parallel by dividing the possible values up among the shepherds evenly, 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 comparing them. They DO NOT check whether the array entries are properly aligned.

Return Value

The maximum value of the first length entries of array.

See Also

qt_double_prod(3) , qt_double_sum(3) , qt_double_min(3) , qt_uint_prod(3) , qt_uint_sum(3) , qt_uint_min(3) , qt_int_prod(3) , qt_int_sum(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