Flex  0.17.9
Public Member Functions | Private Attributes | List of all members
gs::DualCsr< RecordView > Class Reference

#include <dual_csr.h>

Inheritance diagram for gs::DualCsr< RecordView >:
Inheritance graph
[legend]
Collaboration diagram for gs::DualCsr< RecordView >:
Collaboration graph
[legend]

Public Member Functions

 DualCsr (EdgeStrategy oe_strategy, EdgeStrategy ie_strategy, const std::vector< std::string > &col_name, const std::vector< PropertyType > &property_types, const std::vector< StorageStrategy > &storage_strategies)
 
 ~DualCsr ()
 
void InitTable (const std::string &edata_name, const std::string &work_dir)
 
void BatchInit (const std::string &oe_name, const std::string &ie_name, const std::string &edata_name, const std::string &work_dir, const std::vector< int > &oe_degree, const std::vector< int > &ie_degree) override
 
void BatchInitInMemory (const std::string &edata_name, const std::string &work_dir, const std::vector< int > &oe_degree, const std::vector< int > &ie_degree) override
 
void Open (const std::string &oe_name, const std::string &ie_name, const std::string &edata_name, const std::string &snapshot_dir, const std::string &work_dir) override
 
void OpenInMemory (const std::string &oe_name, const std::string &ie_name, const std::string &edata_name, const std::string &snapshot_dir, size_t src_vertex_cap, size_t dst_vertex_cap) override
 
void OpenWithHugepages (const std::string &oe_name, const std::string &ie_name, const std::string &edata_name, const std::string &snapshot_dir, size_t src_vertex_cap, size_t dst_vertex_cap) override
 
void Dump (const std::string &oe_name, const std::string &ie_name, const std::string &edata_name, const std::string &new_snapshot_dir) override
 
CsrBaseGetInCsr () override
 
CsrBaseGetOutCsr () override
 
const CsrBaseGetInCsr () const override
 
const CsrBaseGetOutCsr () const override
 
void BatchPutEdge (vid_t src, vid_t dst, size_t row_id)
 
TableGetTable ()
 
const TableGetTable () const
 
void IngestEdge (vid_t src, vid_t dst, grape::OutArchive &oarc, timestamp_t ts, Allocator &alloc) override
 
void SortByEdgeData (timestamp_t ts) override
 
void UpdateEdge (vid_t src, vid_t dst, const Any &data, timestamp_t ts, Allocator &alloc) override
 
void Close () override
 
- Public Member Functions inherited from gs::DualCsrBase
 DualCsrBase ()=default
 
virtual ~DualCsrBase ()=default
 
void Resize (vid_t src_vertex_num, vid_t dst_vertex_num)
 
void Warmup (int thread_num)
 
size_t EdgeNum () const
 

Private Attributes

const std::vector< std::string > & col_name_
 
const std::vector< PropertyType > & property_types_
 
const std::vector< StorageStrategy > & storage_strategies_
 
TypedMutableCsrBase< RecordView > * in_csr_
 
TypedMutableCsrBase< RecordView > * out_csr_
 
std::atomic< size_t > table_idx_
 
Table table_
 

Constructor & Destructor Documentation

◆ DualCsr()

gs::DualCsr< RecordView >::DualCsr ( EdgeStrategy  oe_strategy,
EdgeStrategy  ie_strategy,
const std::vector< std::string > &  col_name,
const std::vector< PropertyType > &  property_types,
const std::vector< StorageStrategy > &  storage_strategies 
)
inline

◆ ~DualCsr()

gs::DualCsr< RecordView >::~DualCsr ( )
inline

Member Function Documentation

◆ BatchInit()

void gs::DualCsr< RecordView >::BatchInit ( const std::string &  oe_name,
const std::string &  ie_name,
const std::string &  edata_name,
const std::string &  work_dir,
const std::vector< int > &  oe_degree,
const std::vector< int > &  ie_degree 
)
inlineoverridevirtual

Implements gs::DualCsrBase.

◆ BatchInitInMemory()

void gs::DualCsr< RecordView >::BatchInitInMemory ( const std::string &  edata_name,
const std::string &  work_dir,
const std::vector< int > &  oe_degree,
const std::vector< int > &  ie_degree 
)
inlineoverridevirtual

Implements gs::DualCsrBase.

◆ BatchPutEdge()

void gs::DualCsr< RecordView >::BatchPutEdge ( vid_t  src,
vid_t  dst,
size_t  row_id 
)
inline

◆ Close()

void gs::DualCsr< RecordView >::Close ( )
inlineoverridevirtual

Implements gs::DualCsrBase.

◆ Dump()

void gs::DualCsr< RecordView >::Dump ( const std::string &  oe_name,
const std::string &  ie_name,
const std::string &  edata_name,
const std::string &  new_snapshot_dir 
)
inlineoverridevirtual

Implements gs::DualCsrBase.

◆ GetInCsr() [1/2]

const CsrBase* gs::DualCsr< RecordView >::GetInCsr ( ) const
inlineoverridevirtual

Implements gs::DualCsrBase.

◆ GetInCsr() [2/2]

CsrBase* gs::DualCsr< RecordView >::GetInCsr ( )
inlineoverridevirtual

Implements gs::DualCsrBase.

◆ GetOutCsr() [1/2]

const CsrBase* gs::DualCsr< RecordView >::GetOutCsr ( ) const
inlineoverridevirtual

Implements gs::DualCsrBase.

◆ GetOutCsr() [2/2]

CsrBase* gs::DualCsr< RecordView >::GetOutCsr ( )
inlineoverridevirtual

Implements gs::DualCsrBase.

◆ GetTable() [1/2]

Table& gs::DualCsr< RecordView >::GetTable ( )
inline

◆ GetTable() [2/2]

const Table& gs::DualCsr< RecordView >::GetTable ( ) const
inline

◆ IngestEdge()

void gs::DualCsr< RecordView >::IngestEdge ( vid_t  src,
vid_t  dst,
grape::OutArchive &  oarc,
timestamp_t  ts,
Allocator alloc 
)
inlineoverridevirtual

Implements gs::DualCsrBase.

◆ InitTable()

void gs::DualCsr< RecordView >::InitTable ( const std::string &  edata_name,
const std::string &  work_dir 
)
inline

◆ Open()

void gs::DualCsr< RecordView >::Open ( const std::string &  oe_name,
const std::string &  ie_name,
const std::string &  edata_name,
const std::string &  snapshot_dir,
const std::string &  work_dir 
)
inlineoverridevirtual

Implements gs::DualCsrBase.

◆ OpenInMemory()

void gs::DualCsr< RecordView >::OpenInMemory ( const std::string &  oe_name,
const std::string &  ie_name,
const std::string &  edata_name,
const std::string &  snapshot_dir,
size_t  src_vertex_cap,
size_t  dst_vertex_cap 
)
inlineoverridevirtual

Implements gs::DualCsrBase.

◆ OpenWithHugepages()

void gs::DualCsr< RecordView >::OpenWithHugepages ( const std::string &  oe_name,
const std::string &  ie_name,
const std::string &  edata_name,
const std::string &  snapshot_dir,
size_t  src_vertex_cap,
size_t  dst_vertex_cap 
)
inlineoverridevirtual

Implements gs::DualCsrBase.

◆ SortByEdgeData()

void gs::DualCsr< RecordView >::SortByEdgeData ( timestamp_t  ts)
inlineoverridevirtual

Implements gs::DualCsrBase.

◆ UpdateEdge()

void gs::DualCsr< RecordView >::UpdateEdge ( vid_t  src,
vid_t  dst,
const Any data,
timestamp_t  ts,
Allocator alloc 
)
inlineoverridevirtual

Implements gs::DualCsrBase.

Member Data Documentation

◆ col_name_

const std::vector<std::string>& gs::DualCsr< RecordView >::col_name_
private

◆ in_csr_

◆ out_csr_

◆ property_types_

const std::vector<PropertyType>& gs::DualCsr< RecordView >::property_types_
private

◆ storage_strategies_

const std::vector<StorageStrategy>& gs::DualCsr< RecordView >::storage_strategies_
private

◆ table_

Table gs::DualCsr< RecordView >::table_
private

◆ table_idx_

std::atomic<size_t> gs::DualCsr< RecordView >::table_idx_
private

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