Bolt  1.3
C++ template library with support for OpenCL
Namespaces | Macros | Functions
transform_reduce.h File Reference

Fuses transform and reduce operations together. More...

#include "bolt/amp/bolt.h"
#include "bolt/amp/device_vector.h"
#include "bolt/amp/functional.h"
#include <string>
#include <iostream>
#include <bolt/amp/detail/transform_reduce.inl>

Go to the source code of this file.

Namespaces

namespace  bolt
 Defining namespace for the Bolt project.
 
namespace  bolt::amp
 Namespace containing AMP related data types and functions.
 

Functions

template<typename InputIterator , typename UnaryFunction , typename T , typename BinaryFunction >
bolt::amp::transform_reduce (InputIterator first, InputIterator last, UnaryFunction transform_op, T init, BinaryFunction reduce_op)
 transform_reduce fuses transform and reduce operations together, increasing performance by reducing memory passes.
 
template<typename InputIterator , typename UnaryFunction , typename T , typename BinaryFunction >
bolt::amp::transform_reduce (control &ctl, InputIterator first1, InputIterator last1, UnaryFunction transform_op, T init, BinaryFunction reduce_op)
 transform_reduce fuses transform and reduce operations together, increasing performance by reducing memory passes.
 

Detailed Description

Fuses transform and reduce operations together.