#include <stdio.h>#include <iterator>#include "../../agent/single_pass_scan_operators.cuh"#include "../../agent/agent_segment_fixup.cuh"#include "../../agent/agent_spmv_orig.cuh"#include "../../util_type.cuh"#include "../../util_debug.cuh"#include "../../util_device.cuh"#include "../../thread/thread_search.cuh"#include "../../grid/grid_queue.cuh"#include "../../util_namespace.cuh"Go to the source code of this file.
Data Structures | |
| struct | cub::DispatchSpmv< ValueT, OffsetT > |
| < Signed integer type for global offsets More... | |
| struct | cub::DispatchSpmv< ValueT, OffsetT >::Policy110 |
| SM11. More... | |
| struct | cub::DispatchSpmv< ValueT, OffsetT >::Policy200 |
| SM20. More... | |
| struct | cub::DispatchSpmv< ValueT, OffsetT >::Policy300 |
| SM30. More... | |
| struct | cub::DispatchSpmv< ValueT, OffsetT >::Policy350 |
| SM35. More... | |
| struct | cub::DispatchSpmv< ValueT, OffsetT >::Policy370 |
| SM37. More... | |
| struct | cub::DispatchSpmv< ValueT, OffsetT >::Policy500 |
| SM50. More... | |
| struct | cub::DispatchSpmv< ValueT, OffsetT >::Policy600 |
| SM60. More... | |
| struct | cub::DispatchSpmv< ValueT, OffsetT >::PtxSpmvPolicyT |
| struct | cub::DispatchSpmv< ValueT, OffsetT >::PtxSegmentFixupPolicy |
| struct | cub::DispatchSpmv< ValueT, OffsetT >::KernelConfig |
Namespaces | |
| namespace | cub |
| Optional outer namespace(s) | |
Functions | |
| template<typename AgentSpmvPolicyT , typename ValueT , typename OffsetT > | |
| __global__ void | cub::DeviceSpmv1ColKernel (SpmvParams< ValueT, OffsetT > spmv_params) |
| < Signed integer type for sequence offsets | |
| template<typename SpmvPolicyT , typename OffsetT , typename CoordinateT , typename SpmvParamsT > | |
| __global__ void | cub::DeviceSpmvSearchKernel (int num_merge_tiles, CoordinateT *d_tile_coordinates, SpmvParamsT spmv_params) |
| < SpmvParams type | |
| template<typename SpmvPolicyT , typename ScanTileStateT , typename ValueT , typename OffsetT , typename CoordinateT , bool HAS_ALPHA, bool HAS_BETA> | |
| cub::__launch_bounds__ (int(SpmvPolicyT::BLOCK_THREADS)) __global__ void DeviceSpmvKernel(SpmvParams< ValueT | |
| < Whether the input parameter Beta is 0 | |
| cub::AgentSpmvT (temp_storage, spmv_params).ConsumeTile(d_tile_coordinates | |
| tile_state | cub::InitializeStatus (num_segment_fixup_tiles) |
| template<typename AgentSegmentFixupPolicyT , typename PairsInputIteratorT , typename AggregatesOutputIteratorT , typename OffsetT , typename ScanTileStateT > | |
| cub::__launch_bounds__ (int(AgentSegmentFixupPolicyT::BLOCK_THREADS)) __global__ void DeviceSegmentFixupKernel(PairsInputIteratorT d_pairs_in | |
| < Tile status interface type | |
| cub::AgentSegmentFixupT (temp_storage, d_pairs_in, d_aggregates_out, cub::Equality(), cub::Sum()).ConsumeRange(num_items | |
Variables | |
| OffsetT | cub::spmv_params |
| [in] SpMV input parameter bundle | |
| OffsetT CoordinateT * | cub::d_tile_coordinates |
| [in] Pointer to the temporary array of tile starting coordinates | |
| OffsetT CoordinateT KeyValuePair< OffsetT, ValueT > * | cub::d_tile_carry_pairs |
| [out] Pointer to the temporary array carry-out dot product row-ids, one per block | |
| OffsetT CoordinateT KeyValuePair< OffsetT, ValueT > int ScanTileStateT int | cub::num_segment_fixup_tiles |
| < [in] Number of reduce-by-key tiles (fixup grid size) | |
cub::DeviceSpmv provides device-wide parallel operations for performing sparse-matrix * vector multiplication (SpMV).
Definition in file dispatch_spmv_orig.cuh.