libgrape-lite
A C++ library for parallel graph processing
Loading...
Searching...
No Matches
Public Member Functions | Private Attributes | List of all members
grape::cuda::ParallelEngine Class Reference

Public Member Functions

template<typename FRAG_T , typename WORK_SOURCE_T , typename ASSIGN_OP , typename EDGE_OP , EdgeDirection ed>
void ForEachEdge (const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, ASSIGN_OP assign_op, EDGE_OP op, LoadBalancing lb)
 
template<typename FRAG_T , typename WORK_SOURCE_T , typename ASSIGN_OP , typename EDGE_OP >
void ForEachOutgoingEdge (const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, ASSIGN_OP assign_op, EDGE_OP op, LoadBalancing lb)
 
template<typename FRAG_T , typename WORK_SOURCE_T , typename EDGE_OP >
void ForEachOutgoingEdge (const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, EDGE_OP op, LoadBalancing lb)
 
template<typename FRAG_T , typename WORK_SOURCE_T , typename ASSIGN_OP , typename EDGE_OP >
void ForEachOutgoingInnerVertexEdge (const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, ASSIGN_OP assign_op, EDGE_OP op, LoadBalancing lb)
 
template<typename FRAG_T , typename WORK_SOURCE_T , typename EDGE_OP >
void ForEachOutgoingInnerVertexEdge (const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, EDGE_OP op, LoadBalancing lb)
 
template<typename FRAG_T , typename WORK_SOURCE_T , typename ASSIGN_OP , typename EDGE_OP >
void ForEachOutgoingOuterVertexEdge (const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, ASSIGN_OP assign_op, EDGE_OP op, LoadBalancing lb)
 
template<typename FRAG_T , typename WORK_SOURCE_T , typename EDGE_OP >
void ForEachOutgoingOuterVertexEdge (const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, EDGE_OP op, LoadBalancing lb)
 
template<typename FRAG_T , typename WORK_SOURCE_T , typename ASSIGN_OP , typename EDGE_OP >
void ForEachIncomingEdge (const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, ASSIGN_OP assign_op, EDGE_OP op, LoadBalancing lb)
 
template<typename FRAG_T , typename WORK_SOURCE_T , typename EDGE_OP >
void ForEachIncomingEdge (const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, EDGE_OP op, LoadBalancing lb)
 
template<typename FRAG_T , typename WORK_SOURCE_T , typename ASSIGN_OP , typename EDGE_OP >
void ForEachIncomingInnerVertexEdge (const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, ASSIGN_OP assign_op, EDGE_OP op, LoadBalancing lb)
 
template<typename FRAG_T , typename WORK_SOURCE_T , typename EDGE_OP >
void ForEachIncomingInnerVertexEdge (const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, EDGE_OP op, LoadBalancing lb)
 
template<typename FRAG_T , typename WORK_SOURCE_T , typename ASSIGN_OP , typename EDGE_OP >
void ForEachIncomingOuterVertexEdge (const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, ASSIGN_OP assign_op, EDGE_OP op, LoadBalancing lb)
 
template<typename FRAG_T , typename WORK_SOURCE_T , typename EDGE_OP >
void ForEachIncomingOuterVertexEdge (const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, EDGE_OP op, LoadBalancing lb)
 
template<typename FRAG_T , typename WORK_SOURCE_T , typename ASSIGN_OP , typename EDGE_OP , EdgeDirection ed>
void ForEachEdgeCM (const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, ASSIGN_OP assign_op, EDGE_OP op)
 
template<typename FRAG_T , typename WORK_SOURCE_T , typename ASSIGN_OP , typename EDGE_OP , EdgeDirection ed>
void ForEachEdgeCTA (const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, ASSIGN_OP assign_op, EDGE_OP op)
 
template<typename FRAG_T , typename WORK_SOURCE_T , typename ASSIGN_OP , typename EDGE_OP , EdgeDirection ed>
void ForEachEdgeCMOld (const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, ASSIGN_OP assign_op, EDGE_OP op)
 
template<typename FRAG_T , typename WORK_SOURCE_T , typename ASSIGN_OP , typename EDGE_OP , EdgeDirection ed>
void ForEachEdgeWarp (const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, ASSIGN_OP assign_op, EDGE_OP op)
 
template<typename FRAG_T , typename WORK_SOURCE_T , typename ASSIGN_OP , typename EDGE_OP , EdgeDirection ed>
void ForEachEdgeStrict (const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, ASSIGN_OP assign_op, EDGE_OP op)
 
template<typename FRAG_T , typename WORK_SOURCE_T , typename ASSIGN_OP , typename EDGE_OP , EdgeDirection ed>
void ForEachEdgeNone (const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, ASSIGN_OP assign_op, EDGE_OP op)
 
template<typename FRAG_T , typename WORK_SOURCE_T , EdgeDirection ed>
void __calc_prefix_sum__ (const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws)
 

Private Attributes

thrust::device_vector< uint32_t > degree_
 
thrust::device_vector< size_t > prefix_sum_