35 #include "exec_plan.h"
76 template <
int tile_w
idth>
89 Tile(T* tile,
const LArray<T>& la,
int index)
95 _tile[tx] = la.data_gpu[index];
180 T
get(
int index)
const;
197 template <
int tile_w
idth>
199 Tile<tile_width> getTile(
int index, T* smem)
const
201 return Tile<tile_width>(smem, *
this, index*tile_width+threadIdx.x);
206 std::vector<GPUExecutionPlan<T> > plans;
209 T* data_cpu, *data_gpu;
210 int size_cpu, size_gpu, offset_cpu, offset_gpu;
215 #include "../src/larray.cpp"
MSL_USERFUNC int getSize() const
Returns the number of elements.
LArray(msl::DArray< T > &da, Distribution gpu_dist=Distribution::DIST)
Constructor. Gathers all pointers (CPU + GPUs) pointing to a local partition of a given DArray...
virtual void update()
Updates the pointer that is accessed within the get function to point to the correct memory...
Definition: distribution.h:39
Class DArray represents a distributed array.
Definition: darray.h:64
Definition: exec_plan.h:36
Class LArray represents a shallow copy of class DArray.
Definition: larray.h:57
MSL_USERFUNC T operator[](int index) const
Returns the element at index index. Uses local indices. Note that 0 <= index < getSize() must hold (n...
Base class for argument types of functors.
Definition: argtype.h:47