Bolt
1.3
C++ template library with support for OpenCL
|
Scan calculates a running sum over a range of values, inclusive or exclusive. More...
#include "bolt/cl/device_vector.h"
#include "bolt/cl/functional.h"
#include <bolt/cl/detail/scan.inl>
Go to the source code of this file.
Namespaces | |
namespace | bolt |
Defining namespace for the Bolt project. | |
namespace | bolt::cl |
Namespace containing OpenCL related data types and functions. | |
Functions | |
template<typename InputIterator , typename OutputIterator > | |
OutputIterator | bolt::cl::inclusive_scan (control &ctl, InputIterator first, InputIterator last, OutputIterator result, const std::string &user_code="") |
inclusive_scan calculates a running sum over a range of values, inclusive of the current value. The result value at iterator position i is the running sum of all values less than i in the input range. inclusive_scan requires associativity of the binary operation to parallelize the prefix sum. | |
template<typename InputIterator , typename OutputIterator > | |
OutputIterator | bolt::cl::inclusive_scan (InputIterator first, InputIterator last, OutputIterator result, const std::string &user_code="") |
template<typename InputIterator , typename OutputIterator , typename BinaryFunction > | |
OutputIterator | bolt::cl::inclusive_scan (control &ctl, InputIterator first, InputIterator last, OutputIterator result, BinaryFunction binary_op, const std::string &user_code="") |
inclusive_scan calculates a running sum over a range of values, inclusive of the current value. The result value at iterator position i is the running sum of all values less than i in the input range. inclusive_scan requires associativity of the binary operation to parallelize the prefix sum. | |
template<typename InputIterator , typename OutputIterator , typename BinaryFunction > | |
OutputIterator | bolt::cl::inclusive_scan (InputIterator first, InputIterator last, OutputIterator result, BinaryFunction binary_op, const std::string &user_code="") |
template<typename InputIterator , typename OutputIterator > | |
OutputIterator | bolt::cl::exclusive_scan (control &ctl, InputIterator first, InputIterator last, OutputIterator result, const std::string &user_code="") |
exclusive_scan calculates a running sum over a range of values, exclusive of the current value. The result value at iterator position i is the running sum of all values less than i in the input range. exclusive_scan requires associativity of the binary operation to parallelize it. | |
template<typename InputIterator , typename OutputIterator > | |
OutputIterator | bolt::cl::exclusive_scan (InputIterator first, InputIterator last, OutputIterator result, const std::string &user_code="") |
template<typename InputIterator , typename OutputIterator , typename T > | |
OutputIterator | bolt::cl::exclusive_scan (control &ctl, InputIterator first, InputIterator last, OutputIterator result, T init, const std::string &user_code="") |
exclusive_scan calculates a running sum over a range of values, exclusive of the current value. The result value at iterator position i is the running sum of all values less than i in the input range. exclusive_scan requires associativity of the binary operation to parallelize it. | |
template<typename InputIterator , typename OutputIterator , typename T > | |
OutputIterator | bolt::cl::exclusive_scan (InputIterator first, InputIterator last, OutputIterator result, T init, const std::string &user_code="") |
template<typename InputIterator , typename OutputIterator , typename T , typename BinaryFunction > | |
OutputIterator | bolt::cl::exclusive_scan (control &ctl, InputIterator first, InputIterator last, OutputIterator result, T init, BinaryFunction binary_op, const std::string &user_code="") |
exclusive_scan calculates a running sum over a range of values, exclusive of the current value. The result value at iterator position i is the running sum of all values less than i in the input range. exclusive_scan requires associativity of the binary operation to parallelize it. | |
template<typename InputIterator , typename OutputIterator , typename T , typename BinaryFunction > | |
OutputIterator | bolt::cl::exclusive_scan (InputIterator first, InputIterator last, OutputIterator result, T init, BinaryFunction binary_op, const std::string &user_code="") |
Scan calculates a running sum over a range of values, inclusive or exclusive.