|
CUB
|
#include <iterator>#include "../ns_wrapper.cuh"#include "../macro_utils.cuh"#include "../thread/thread_store.cuh"#include "../type_utils.cuh"#include "../vector_type.cuh"#include "block_exchange.cuh"Classes | |
| class | cub::BlockStore< OutputIterator, BLOCK_THREADS, ITEMS_PER_THREAD, POLICY, MODIFIER > |
BlockStore provides data movement operations for writing blocked-arranged data to global memory.
. | |
Namespaces | |
| namespace | cub |
| CUB namespace. | |
Enumerations | |
| enum | cub::BlockStorePolicy { cub::BLOCK_STORE_DIRECT, cub::BLOCK_STORE_VECTORIZE, cub::BLOCK_STORE_TRANSPOSE } |
| Tuning policy for cub::BlockStore. More... | |
Functions | |
Direct threadblock stores (blocked arrangement) | |
| template<PtxStoreModifier MODIFIER, typename T , int ITEMS_PER_THREAD, typename OutputIterator > | |
| __device__ __forceinline__ void | cub::BlockStoreDirect (OutputIterator block_itr, T(&items)[ITEMS_PER_THREAD]) |
| Store a tile of items across a threadblock directly using the specified cache modifier. More... | |
| template<typename T , int ITEMS_PER_THREAD, typename OutputIterator > | |
| __device__ __forceinline__ void | cub::BlockStoreDirect (OutputIterator block_itr, T(&items)[ITEMS_PER_THREAD]) |
| Store a tile of items across a threadblock directly. More... | |
| template<PtxStoreModifier MODIFIER, typename T , int ITEMS_PER_THREAD, typename OutputIterator , typename SizeT > | |
| __device__ __forceinline__ void | cub::BlockStoreDirect (OutputIterator block_itr, const SizeT &guarded_items, T(&items)[ITEMS_PER_THREAD]) |
| Store a tile of items across a threadblock directly using the specified cache modifier, guarded by range. More... | |
| template<typename T , int ITEMS_PER_THREAD, typename OutputIterator , typename SizeT > | |
| __device__ __forceinline__ void | cub::BlockStoreDirect (OutputIterator block_itr, const SizeT &guarded_items, T(&items)[ITEMS_PER_THREAD]) |
| Store a tile of items across a threadblock directly, guarded by range. More... | |
Direct threadblock stores (striped arrangement) | |
| template<PtxStoreModifier MODIFIER, typename T , int ITEMS_PER_THREAD, typename OutputIterator > | |
| __device__ __forceinline__ void | cub::BlockStoreDirectStriped (OutputIterator block_itr, T(&items)[ITEMS_PER_THREAD], int stride=blockDim.x) |
| Store striped tile directly using the specified cache modifier. More... | |
| template<typename T , int ITEMS_PER_THREAD, typename OutputIterator > | |
| __device__ __forceinline__ void | cub::BlockStoreDirectStriped (OutputIterator block_itr, T(&items)[ITEMS_PER_THREAD], int stride=blockDim.x) |
| Store striped tile directly. More... | |
| template<PtxStoreModifier MODIFIER, typename T , int ITEMS_PER_THREAD, typename OutputIterator , typename SizeT > | |
| __device__ __forceinline__ void | cub::BlockStoreDirectStriped (OutputIterator block_itr, const SizeT &guarded_items, T(&items)[ITEMS_PER_THREAD], int stride=blockDim.x) |
| template<typename T , int ITEMS_PER_THREAD, typename OutputIterator , typename SizeT > | |
| __device__ __forceinline__ void | cub::BlockStoreDirectStriped (OutputIterator block_itr, const SizeT &guarded_items, T(&items)[ITEMS_PER_THREAD], int stride=blockDim.x) |
| Store striped tile directly, guarded by range. More... | |
Threadblock vectorized stores (blocked arrangement) | |
| template<PtxStoreModifier MODIFIER, typename T , int ITEMS_PER_THREAD> | |
| __device__ __forceinline__ void | cub::BlockStoreVectorized (T *block_ptr, T(&items)[ITEMS_PER_THREAD]) |
| Store a tile of items across a threadblock directly using the specified cache modifier. More... | |
| template<typename T , int ITEMS_PER_THREAD> | |
| __device__ __forceinline__ void | cub::BlockStoreVectorized (T *block_ptr, T(&items)[ITEMS_PER_THREAD]) |
| Store a tile of items across a threadblock directly. More... | |
Operations for writing global tiles of data from the threadblock (in blocked arrangement across threads).
1.8.3.1