graph
All Classes Namespaces Files Functions Variables Typedefs Enumerations Enumerator Friends Macros
Public Member Functions | Private Types | Private Attributes | List of all members
EdgeTC Class Reference

#include <edge_tc.hpp>

Inheritance diagram for EdgeTC:
Inheritance graph
[legend]
Collaboration diagram for EdgeTC:
Collaboration graph
[legend]

Public Member Functions

 EdgeTC (Config &c)
 
virtual ~EdgeTC ()
 
virtual void read_data (const std::string &path) override
 
virtual void setup_data () override
 
virtual size_t count () override
 
virtual uint64_t num_edges () override
 number of edges traversed during triangle counting More...
 
virtual size_t num_nodes ()
 
- Public Member Functions inherited from CUDATriangleCounter
 CUDATriangleCounter (Config &c)
 
std::vector< int > & gpus () const
 
std::set< int > & unique_gpus () const
 
- Public Member Functions inherited from TriangleCounter
virtual ~TriangleCounter ()
 

Private Types

enum  Kernel { Kernel::LINEAR, Kernel::BINARY }
 

Private Attributes

Kernel kernel_
 
std::vector< UnifiedMemoryCSRgraphs_
 
std::vector< CUDAManagedVector< Uint > > edgeSrc_
 
std::vector< CUDAManagedVector< uint64_t > > triangleCounts_
 
std::vector< const Uint * > rowOffsets_d_
 
std::vector< const Uint * > cols_d_
 
std::vector< const char * > isLocalCol_d_
 
std::vector< const Uint * > rows_d_
 
std::vector< uint64_t * > triangleCounts_d_
 
size_t numEdges_
 
size_t numNodes_
 

Additional Inherited Members

- Static Public Member Functions inherited from TriangleCounter
static TriangleCounterCreateTriangleCounter (Config &config)
 
- Protected Attributes inherited from CUDATriangleCounter
std::vector< int > gpus_
 
std::set< int > unique_gpus_
 
std::map< int, cudaDeviceProp > cudaDeviceProps_
 

Member Enumeration Documentation

◆ Kernel

enum EdgeTC::Kernel
strongprivate
Enumerator
LINEAR 
BINARY 

Constructor & Destructor Documentation

◆ EdgeTC()

EdgeTC::EdgeTC ( Config c)

◆ ~EdgeTC()

EdgeTC::~EdgeTC ( )
virtual

Member Function Documentation

◆ count()

size_t EdgeTC::count ( )
overridevirtual

Implements TriangleCounter.

◆ num_edges()

virtual uint64_t EdgeTC::num_edges ( )
inlineoverridevirtual

number of edges traversed during triangle counting

Implements TriangleCounter.

◆ num_nodes()

virtual size_t EdgeTC::num_nodes ( )
inlinevirtual

Implements CUDATriangleCounter.

◆ read_data()

void EdgeTC::read_data ( const std::string &  path)
overridevirtual

Implements TriangleCounter.

◆ setup_data()

void EdgeTC::setup_data ( )
overridevirtual

Reimplemented from TriangleCounter.

Member Data Documentation

◆ cols_d_

std::vector<const Uint *> EdgeTC::cols_d_
private

◆ edgeSrc_

std::vector<CUDAManagedVector<Uint> > EdgeTC::edgeSrc_
private

◆ graphs_

std::vector<UnifiedMemoryCSR> EdgeTC::graphs_
private

◆ isLocalCol_d_

std::vector<const char *> EdgeTC::isLocalCol_d_
private

◆ kernel_

Kernel EdgeTC::kernel_
private

◆ numEdges_

size_t EdgeTC::numEdges_
private

◆ numNodes_

size_t EdgeTC::numNodes_
private

◆ rowOffsets_d_

std::vector<const Uint *> EdgeTC::rowOffsets_d_
private

◆ rows_d_

std::vector<const Uint *> EdgeTC::rows_d_
private

◆ triangleCounts_

std::vector<CUDAManagedVector<uint64_t> > EdgeTC::triangleCounts_
private

◆ triangleCounts_d_

std::vector<uint64_t *> EdgeTC::triangleCounts_d_
private

The documentation for this class was generated from the following files: