Bolt
1.3
C++ template library with support for OpenCL
|
Functions | |
template<typename InputIterator1 , typename InputIterator2 , typename OutputIterator1 , typename OutputIterator2 > | |
pair< OutputIterator1, OutputIterator2 > | bolt::cl::reduce_by_key (control &ctl, InputIterator1 keys_first, InputIterator1 keys_last, InputIterator2 values_first, OutputIterator1 keys_output, OutputIterator2 values_output, const std::string &user_code="") |
reduce_by_key performs, on a sequence, a reduction of each sub-sequence as defined by equivalent keys; the BinaryFunction in this version is plus(), and the BinaryPredicate is equal_to(). | |
template<typename InputIterator1 , typename InputIterator2 , typename OutputIterator1 , typename OutputIterator2 > | |
pair< OutputIterator1, OutputIterator2 > | bolt::cl::reduce_by_key (InputIterator1 keys_first, InputIterator1 keys_last, InputIterator2 values_first, OutputIterator1 keys_output, OutputIterator2 values_output, const std::string &user_code="") |
template<typename InputIterator1 , typename InputIterator2 , typename OutputIterator1 , typename OutputIterator2 , typename BinaryPredicate > | |
pair< OutputIterator1, OutputIterator2 > | bolt::cl::reduce_by_key (control &ctl, InputIterator1 keys_first, InputIterator1 keys_last, InputIterator2 values_first, OutputIterator1 keys_output, OutputIterator2 values_output, BinaryPredicate binary_pred, const std::string &user_code="") |
reduce_by_key performs, on a sequence, a reduction of each sub-sequence as defined by equivalent keys; the BinaryFunction in this version is plus(). reduce_by_key is a generalization of reduce to key-value pairs. If the reduction operator is not commutative then bolt::reduce_by_key should not be used. | |
template<typename InputIterator1 , typename InputIterator2 , typename OutputIterator1 , typename OutputIterator2 , typename BinaryPredicate > | |
pair< OutputIterator1, OutputIterator2 > | bolt::cl::reduce_by_key (InputIterator1 keys_first, InputIterator1 keys_last, InputIterator2 values_first, OutputIterator1 keys_output, OutputIterator2 values_output, BinaryPredicate binary_pred, const std::string &user_code="") |
template<typename InputIterator1 , typename InputIterator2 , typename OutputIterator1 , typename OutputIterator2 , typename BinaryPredicate , typename BinaryFunction > | |
pair< OutputIterator1, OutputIterator2 > | bolt::cl::reduce_by_key (control &ctl, InputIterator1 keys_first, InputIterator1 keys_last, InputIterator2 values_first, OutputIterator1 keys_output, OutputIterator2 values_output, BinaryPredicate binary_pred, BinaryFunction binary_op, const std::string &user_code="") |
reduce_by_key performs, on a sequence, a reduction of each sub-sequence as defined by equivalent keys; reduce_by_key is a generalization of reduce to key-value pairs. If the reduction operator is not commutative then bolt::reduce_by_key should not be used. | |
template<typename InputIterator1 , typename InputIterator2 , typename OutputIterator1 , typename OutputIterator2 , typename BinaryPredicate , typename BinaryFunction > | |
pair< OutputIterator1, OutputIterator2 > | bolt::cl::reduce_by_key (InputIterator1 keys_first, InputIterator1 keys_last, InputIterator2 values_first, OutputIterator1 keys_output, OutputIterator2 values_output, BinaryPredicate binary_pred, BinaryFunction binary_op, const std::string &user_code="") |
bolt::cl::pair< OutputIterator1, OutputIterator2 > bolt::cl::reduce_by_key | ( | control & | ctl, |
InputIterator1 | keys_first, | ||
InputIterator1 | keys_last, | ||
InputIterator2 | values_first, | ||
OutputIterator1 | keys_output, | ||
OutputIterator2 | values_output, | ||
const std::string & | user_code = "" |
||
) |
reduce_by_key
performs, on a sequence, a reduction of each sub-sequence as defined by equivalent keys; the BinaryFunction in this version is plus(), and the BinaryPredicate is equal_to().
ctl | Optional Control structure to control command-queue, debug, tuning, etc. See bolt::cl::control. |
keys_first | The first element of the key sequence. |
keys_last | The last element of the key sequence. |
values_first | The first element of the value sequence. |
keys_output | The first element of the key output sequence. |
values_output | The first element of the value output sequence. |
user_code | A user-specified Optional string that is preppended to the generated OpenCL kernel. |
InputIterator1 | is a model of Input Iterator. |
InputIterator2 | is a model of Input Iterator. |
OutputIterator | is a model of Output Iterator. |
Example:
bolt::cl::pair< OutputIterator1, OutputIterator2 > bolt::cl::reduce_by_key | ( | control & | ctl, |
InputIterator1 | keys_first, | ||
InputIterator1 | keys_last, | ||
InputIterator2 | values_first, | ||
OutputIterator1 | keys_output, | ||
OutputIterator2 | values_output, | ||
BinaryPredicate | binary_pred, | ||
const std::string & | user_code = "" |
||
) |
reduce_by_key
performs, on a sequence, a reduction of each sub-sequence as defined by equivalent keys; the BinaryFunction in this version is plus(). reduce_by_key is a generalization of reduce to key-value pairs. If the reduction operator is not commutative then bolt::reduce_by_key should not be used.
ctl | Optional Control structure to control command-queue, debug, tuning, etc. See bolt::cl::control. |
keys_first | The first element of the key sequence. |
keys_last | The last element of the key sequence. |
values_first | The first element of the value sequence. |
keys_output | The first element of the key output sequence. |
values_output | The first element of the value output sequence. |
binary_pred | Binary predicate which determines if two keys are equal. |
user_code | A user-specified Optional string that is preppended to the generated OpenCL kernel. |
InputIterator1 | is a model of Input Iterator. |
InputIterator2 | is a model of Input Iterator. |
OutputIterator | is a model of Output Iterator. |
BinaryPredicate | is a model of Binary Predicate. |
Example:
bolt::cl::pair< OutputIterator1, OutputIterator2 > bolt::cl::reduce_by_key | ( | control & | ctl, |
InputIterator1 | keys_first, | ||
InputIterator1 | keys_last, | ||
InputIterator2 | values_first, | ||
OutputIterator1 | keys_output, | ||
OutputIterator2 | values_output, | ||
BinaryPredicate | binary_pred, | ||
BinaryFunction | binary_op, | ||
const std::string & | user_code = "" |
||
) |
reduce_by_key
performs, on a sequence, a reduction of each sub-sequence as defined by equivalent keys; reduce_by_key is a generalization of reduce to key-value pairs. If the reduction operator is not commutative then bolt::reduce_by_key should not be used.
ctl | Optional Control structure to control command-queue, debug, tuning, etc. See bolt::cl::control. |
keys_first | The first element of the key sequence. |
keys_last | The last element of the key sequence. |
values_first | The first element of the value sequence. |
keys_output | The first element of the key output sequence. |
values_output | The first element of the value output sequence. |
binary_pred | Binary predicate which determines if two keys are equal. |
binary_op | Binary function for scanning transformed elements. |
user_code | A user-specified Optional tring that is preppended to the generated OpenCL kernel. |
InputIterator1 | is a model of Input Iterator. |
InputIterator2 | is a model of Input Iterator. |
OutputIterator | is a model of Output Iterator. |
BinaryPredicate | is a model of Binary Predicate. |
BinaryFunction | is a model of Binary Function whose return type is convertible to OutputIterator's value_type . |
Example: