Table of Contents
qutil_double_max, qutil_uint_max, qutil_int_max - find the maximum value
within an array in parallel
#include <qthread/qthread.h>
#include <qthread/qutil.h>
double
qutil_double_max(qthread_t *me, double *array, size_t length, int checkfeb);
unsigned int
qutil_uint_max(qthread_t *me, unsigned int *array, size_t length, int checkfeb);
int
qutil_int_max(qthread_t *me, 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 using a lagging-loop structure, 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. If the
datatype is too small to do a FEB operation on, they will abort, if sanity
checks are turned on.
The maximum value of the first length
entries of array.
qutil_double_mult(3)
, qutil_double_sum(3)
, qutil_double_min(3)
,
qutil_uint_mult(3)
, qutil_uint_sum(3)
, qutil_uint_min(3)
, qutil_int_mult(3)
,
qutil_int_sum(3)
, qutil_int_min(3)
, qutil_mergesort(3)
, qutil_qsort(3)
Table of Contents