From 63c5230fe872a762314e6ca6b701a6a37a8099f8 Mon Sep 17 00:00:00 2001 From: github-actions Date: Thu, 8 Aug 2024 08:01:00 +0000 Subject: [PATCH] auto build from 8cb5b42ae9800597250e4fb4c070c1d95954e7a6. --- annotated.html | 323 +++ atomic__ops_8h.html | 137 ++ bc_s.png | Bin 0 -> 676 bytes bdwn.png | Bin 0 -> 147 bytes classThreadPool-members.html | 92 + classThreadPool.html | 136 ++ classes.html | 144 ++ classgrape_1_1AdjList-members.html | 100 + classgrape_1_1AdjList.html | 167 ++ ...1_1AdjList_1_1const__iterator-members.html | 96 + classgrape_1_1AdjList_1_1const__iterator.html | 133 ++ ...sgrape_1_1AdjList_1_1iterator-members.html | 96 + classgrape_1_1AdjList_1_1iterator.html | 133 ++ classgrape_1_1Array-members.html | 132 ++ classgrape_1_1Array.html | 269 +++ ...01EmptyType_00_01__Alloc_01_4-members.html | 123 ++ ...Array_3_01EmptyType_00_01__Alloc_01_4.html | 241 +++ classgrape_1_1AutoAppBase-members.html | 91 + classgrape_1_1AutoAppBase.html | 258 +++ ...1_1AutoParallelMessageManager-members.html | 134 ++ classgrape_1_1AutoParallelMessageManager.html | 309 +++ classgrape_1_1AutoParallelMessageManager.png | Bin 0 -> 1570 bytes ...sgrape_1_1BasicFragmentLoader-members.html | 119 ++ classgrape_1_1BasicFragmentLoader.html | 206 ++ ...grape_1_1BasicFragmentMutator-members.html | 143 ++ classgrape_1_1BasicFragmentMutator.html | 286 +++ ...sgrape_1_1BatchShuffleAppBase-members.html | 91 + classgrape_1_1BatchShuffleAppBase.html | 253 +++ ...1_1BatchShuffleMessageManager-members.html | 131 ++ classgrape_1_1BatchShuffleMessageManager.html | 353 ++++ classgrape_1_1BatchShuffleMessageManager.png | Bin 0 -> 869 bytes classgrape_1_1Bitset-members.html | 123 ++ classgrape_1_1Bitset.html | 222 ++ classgrape_1_1Bitset.png | Bin 0 -> 745 bytes classgrape_1_1BlockingQueue-members.html | 97 + classgrape_1_1BlockingQueue.html | 332 +++ ...ape_1_1CSREdgecutFragmentBase-members.html | 218 ++ classgrape_1_1CSREdgecutFragmentBase.html | 1280 ++++++++++++ classgrape_1_1CSREdgecutFragmentBase.png | Bin 0 -> 2551 bytes classgrape_1_1CommSpec-members.html | 97 + classgrape_1_1CommSpec.html | 142 ++ classgrape_1_1Communicator-members.html | 94 + classgrape_1_1Communicator.html | 135 ++ classgrape_1_1ConstAdjList-members.html | 96 + classgrape_1_1ConstAdjList.html | 153 ++ ...nstAdjList_1_1const__iterator-members.html | 96 + ...pe_1_1ConstAdjList_1_1const__iterator.html | 133 ++ classgrape_1_1ContextBase-members.html | 85 + classgrape_1_1ContextBase.html | 144 ++ classgrape_1_1ContextBase.png | Bin 0 -> 1751 bytes classgrape_1_1DeMutableCSR.html | 79 + classgrape_1_1DeMutableCSRBuilder.html | 79 + ...ID__T_00_01EDATA__T_01_4_01_4-members.html | 102 + ...br_3_01VID__T_00_01EDATA__T_01_4_01_4.html | 156 ++ ...ID__T_00_01EDATA__T_01_4_01_4-members.html | 143 ++ ...br_3_01VID__T_00_01EDATA__T_01_4_01_4.html | 290 +++ classgrape_1_1DefaultAllocator-members.html | 93 + classgrape_1_1DefaultAllocator.html | 144 ++ classgrape_1_1DefaultAllocator.png | Bin 0 -> 1406 bytes ...rape_1_1DefaultMessageManager-members.html | 121 ++ classgrape_1_1DefaultMessageManager.html | 646 ++++++ classgrape_1_1DefaultMessageManager.png | Bin 0 -> 1570 bytes classgrape_1_1DeltaVarintDecoder-members.html | 92 + classgrape_1_1DeltaVarintDecoder.html | 114 ++ classgrape_1_1DeltaVarintEncoder-members.html | 93 + classgrape_1_1DeltaVarintEncoder.html | 117 ++ classgrape_1_1DenseVertexSet.html | 95 + ...texRange_3_01VID__T_01_4_01_4-members.html | 114 ++ ...1DualVertexRange_3_01VID__T_01_4_01_4.html | 180 ++ ...texRange_3_01VID__T_01_4_01_4-members.html | 109 + ..._3_01VertexRange_3_01VID__T_01_4_01_4.html | 165 ++ ...exVector_3_01VID__T_01_4_01_4-members.html | 110 + ...3_01VertexVector_3_01VID__T_01_4_01_4.html | 168 ++ classgrape_1_1DualVertexRange-members.html | 100 + classgrape_1_1DualVertexRange.html | 155 ++ ..._1DualVertexRange_1_1iterator-members.html | 97 + ...sgrape_1_1DualVertexRange_1_1iterator.html | 136 ++ classgrape_1_1EVFragmentLoader-members.html | 98 + classgrape_1_1EVFragmentLoader.html | 161 ++ classgrape_1_1EVFragmentMutator-members.html | 93 + classgrape_1_1EVFragmentMutator.html | 124 ++ ..._1_1EVFragmentRebalanceLoader-members.html | 100 + classgrape_1_1EVFragmentRebalanceLoader.html | 171 ++ ...sgrape_1_1EdgecutFragmentBase-members.html | 178 ++ classgrape_1_1EdgecutFragmentBase.html | 1505 ++++++++++++++ classgrape_1_1EdgecutFragmentBase.png | Bin 0 -> 9707 bytes classgrape_1_1FilterAdjList-members.html | 95 + classgrape_1_1FilterAdjList.html | 138 ++ ...terAdjList_1_1const__iterator-members.html | 94 + ...e_1_1FilterAdjList_1_1const__iterator.html | 130 ++ ..._1_1FilterAdjList_1_1iterator-members.html | 94 + classgrape_1_1FilterAdjList_1_1iterator.html | 130 ++ classgrape_1_1FilterConstAdjList-members.html | 93 + classgrape_1_1FilterConstAdjList.html | 130 ++ ...nstAdjList_1_1const__iterator-members.html | 94 + ...FilterConstAdjList_1_1const__iterator.html | 130 ++ classgrape_1_1FixedInArchive-members.html | 112 + classgrape_1_1FixedInArchive.html | 182 ++ classgrape_1_1FixedInArchive.png | Bin 0 -> 764 bytes classgrape_1_1FragmentBase-members.html | 129 ++ classgrape_1_1FragmentBase.html | 1129 +++++++++++ classgrape_1_1FragmentBase.png | Bin 0 -> 9367 bytes classgrape_1_1GlobalVertexMap-members.html | 129 ++ classgrape_1_1GlobalVertexMap.html | 282 +++ classgrape_1_1GlobalVertexMap.png | Bin 0 -> 1332 bytes ...ape_1_1GlobalVertexMapBuilder-members.html | 93 + classgrape_1_1GlobalVertexMapBuilder.html | 133 ++ classgrape_1_1HashPartitioner-members.html | 92 + classgrape_1_1HashPartitioner.html | 135 ++ ...tioner_3_01std_1_1string_01_4-members.html | 97 + ...ashPartitioner_3_01std_1_1string_01_4.html | 138 ++ classgrape_1_1IOAdaptorBase-members.html | 96 + classgrape_1_1IOAdaptorBase.html | 182 ++ classgrape_1_1IOAdaptorBase.png | Bin 0 -> 694 bytes classgrape_1_1ISyncBuffer-members.html | 87 + classgrape_1_1ISyncBuffer.html | 115 ++ classgrape_1_1ISyncBuffer.png | Bin 0 -> 821 bytes classgrape_1_1IdIndexer-members.html | 120 ++ classgrape_1_1IdIndexer.html | 217 ++ classgrape_1_1IdParser-members.html | 90 + classgrape_1_1IdParser.html | 111 + classgrape_1_1ImmutableCSR-members.html | 105 + classgrape_1_1ImmutableCSR.html | 165 ++ classgrape_1_1ImmutableCSRBuild-members.html | 100 + classgrape_1_1ImmutableCSRBuild.html | 147 ++ ..._1_1ImmutableCSRStreamBuilder-members.html | 86 + classgrape_1_1ImmutableCSRStreamBuilder.html | 103 + ...e_1_1ImmutableEdgecutFragment-members.html | 259 +++ classgrape_1_1ImmutableEdgecutFragment.html | 1314 ++++++++++++ classgrape_1_1ImmutableEdgecutFragment.png | Bin 0 -> 5106 bytes classgrape_1_1InArchive-members.html | 98 + classgrape_1_1InArchive.html | 143 ++ classgrape_1_1IteratorPair-members.html | 92 + classgrape_1_1IteratorPair.html | 136 ++ classgrape_1_1LineParserBase-members.html | 86 + classgrape_1_1LineParserBase.html | 241 +++ classgrape_1_1LineParserBase.png | Bin 0 -> 2206 bytes classgrape_1_1LocalIOAdaptor-members.html | 115 ++ classgrape_1_1LocalIOAdaptor.html | 244 +++ classgrape_1_1LocalIOAdaptor.png | Bin 0 -> 682 bytes classgrape_1_1LocalVertexMap-members.html | 129 ++ classgrape_1_1LocalVertexMap.html | 260 +++ classgrape_1_1LocalVertexMap.png | Bin 0 -> 1328 bytes ...rape_1_1LocalVertexMapBuilder-members.html | 94 + classgrape_1_1LocalVertexMapBuilder.html | 136 ++ classgrape_1_1MessageBufferPool-members.html | 97 + classgrape_1_1MessageBufferPool.html | 129 ++ classgrape_1_1MessageInBuffer-members.html | 89 + classgrape_1_1MessageInBuffer.html | 117 ++ classgrape_1_1MessageManagerBase-members.html | 94 + classgrape_1_1MessageManagerBase.html | 334 +++ classgrape_1_1MessageManagerBase.png | Bin 0 -> 3032 bytes classgrape_1_1MutableCSR.html | 79 + classgrape_1_1MutableCSRBuilder.html | 79 + ...ID__T_00_01EDATA__T_01_4_01_4-members.html | 104 + ...br_3_01VID__T_00_01EDATA__T_01_4_01_4.html | 163 ++ ...ID__T_00_01EDATA__T_01_4_01_4-members.html | 132 ++ ...br_3_01VID__T_00_01EDATA__T_01_4_01_4.html | 256 +++ ...ape_1_1MutableEdgecutFragment-members.html | 162 ++ classgrape_1_1MutableEdgecutFragment.html | 532 +++++ classgrape_1_1MutableEdgecutFragment.png | Bin 0 -> 2546 bytes classgrape_1_1MutationContext-members.html | 128 ++ classgrape_1_1MutationContext.html | 236 +++ classgrape_1_1MutationContext.png | Bin 0 -> 794 bytes classgrape_1_1NonblockingQueue-members.html | 90 + classgrape_1_1NonblockingQueue.html | 237 +++ classgrape_1_1OutArchive-members.html | 103 + classgrape_1_1OutArchive.html | 155 ++ classgrape_1_1ParallelAppBase-members.html | 92 + classgrape_1_1ParallelAppBase.html | 273 +++ classgrape_1_1ParallelEngine-members.html | 110 + classgrape_1_1ParallelEngine.html | 822 ++++++++ ...ape_1_1ParallelMessageManager-members.html | 134 ++ classgrape_1_1ParallelMessageManager.html | 861 ++++++++ classgrape_1_1ParallelMessageManager.png | Bin 0 -> 816 bytes ..._1_1ParallelMessageManagerOpt-members.html | 140 ++ classgrape_1_1ParallelMessageManagerOpt.html | 880 ++++++++ classgrape_1_1ParallelMessageManagerOpt.png | Bin 0 -> 851 bytes classgrape_1_1RefBitset-members.html | 91 + classgrape_1_1RefBitset.html | 111 + ...grape_1_1SegmentedPartitioner-members.html | 93 + classgrape_1_1SegmentedPartitioner.html | 138 ++ ...tioner_3_01std_1_1string_01_4-members.html | 97 + ...tedPartitioner_3_01std_1_1string_01_4.html | 138 ++ classgrape_1_1ShuffleIn-members.html | 97 + classgrape_1_1ShuffleIn.html | 129 ++ classgrape_1_1ShuffleOut-members.html | 103 + classgrape_1_1ShuffleOut.html | 151 ++ classgrape_1_1SpinLock-members.html | 85 + classgrape_1_1SpinLock.html | 106 + classgrape_1_1StringViewVector-members.html | 96 + classgrape_1_1StringViewVector.html | 126 ++ classgrape_1_1SyncBuffer-members.html | 106 + classgrape_1_1SyncBuffer.html | 188 ++ classgrape_1_1SyncBuffer.png | Bin 0 -> 821 bytes classgrape_1_1TSVLineParser-members.html | 90 + classgrape_1_1TSVLineParser.html | 255 +++ classgrape_1_1TSVLineParser.png | Bin 0 -> 1165 bytes ...e_1_1ThreadLocalMessageBuffer-members.html | 99 + classgrape_1_1ThreadLocalMessageBuffer.html | 522 +++++ ..._1ThreadLocalMessageBufferOpt-members.html | 112 + ...sgrape_1_1ThreadLocalMessageBufferOpt.html | 563 ++++++ classgrape_1_1VarintDecoder-members.html | 93 + classgrape_1_1VarintDecoder.html | 120 ++ classgrape_1_1VarintEncoder-members.html | 92 + classgrape_1_1VarintEncoder.html | 114 ++ classgrape_1_1Vertex-members.html | 100 + classgrape_1_1Vertex.html | 158 ++ classgrape_1_1VertexArray.html | 79 + ...e_3_01VID__T_01_4_00_01T_01_4-members.html | 99 + ...rtexRange_3_01VID__T_01_4_00_01T_01_4.html | 139 ++ ...e_3_01VID__T_01_4_00_01T_01_4-members.html | 150 ++ ...rtexRange_3_01VID__T_01_4_00_01T_01_4.html | 268 +++ ...ertexRange_3_01VID__T_01_4_00_01T_01_4.png | Bin 0 -> 1033 bytes classgrape_1_1VertexDataContext-members.html | 94 + classgrape_1_1VertexDataContext.html | 138 ++ classgrape_1_1VertexDataContext.png | Bin 0 -> 974 bytes classgrape_1_1VertexMapBase-members.html | 112 + classgrape_1_1VertexMapBase.html | 210 ++ classgrape_1_1VertexRange-members.html | 98 + classgrape_1_1VertexRange.html | 149 ++ ...pe_1_1VertexRange_1_1iterator-members.html | 95 + classgrape_1_1VertexRange_1_1iterator.html | 130 ++ classgrape_1_1VoidContext-members.html | 90 + classgrape_1_1VoidContext.html | 122 ++ classgrape_1_1VoidContext.png | Bin 0 -> 756 bytes classgrape_1_1Worker-members.html | 108 + classgrape_1_1Worker.html | 199 ++ ..._manager__impl_1_1PostProcess-members.html | 90 + ...message__manager__impl_1_1PostProcess.html | 121 ++ ..._message__manager__impl_1_1PostProcess.png | Bin 0 -> 1498 bytes ...ager__impl_1_1PostProcessBase-members.html | 85 + ...age__manager__impl_1_1PostProcessBase.html | 98 + ...sage__manager__impl_1_1PostProcessBase.png | Bin 0 -> 1502 bytes classgrape_1_1cuda_1_1ArrayView-members.html | 99 + classgrape_1_1cuda_1_1ArrayView.html | 138 ++ ..._1cuda_1_1BatchShuffleAppBase-members.html | 91 + ...sgrape_1_1cuda_1_1BatchShuffleAppBase.html | 295 +++ ...1_1BatchShuffleMessageManager-members.html | 106 + ...1_1cuda_1_1BatchShuffleMessageManager.html | 340 ++++ classgrape_1_1cuda_1_1Bitset-members.html | 99 + classgrape_1_1cuda_1_1Bitset.html | 146 ++ ...sgrape_1_1cuda_1_1COOFragment-members.html | 93 + classgrape_1_1cuda_1_1COOFragment.html | 127 ++ ...grape_1_1cuda_1_1Communicator-members.html | 104 + classgrape_1_1cuda_1_1Communicator.html | 170 ++ ...ape_1_1cuda_1_1DenseVertexSet-members.html | 97 + classgrape_1_1cuda_1_1DenseVertexSet.html | 145 ++ ...grape_1_1cuda_1_1DeviceBuffer-members.html | 97 + classgrape_1_1cuda_1_1DeviceBuffer.html | 129 ++ classgrape_1_1cuda_1_1Event-members.html | 95 + classgrape_1_1cuda_1_1Event.html | 134 ++ ...sgrape_1_1cuda_1_1EventHolder-members.html | 91 + classgrape_1_1cuda_1_1EventHolder.html | 120 ++ classgrape_1_1cuda_1_1EventHolder.png | Bin 0 -> 666 bytes classgrape_1_1cuda_1_1GPUAppBase-members.html | 91 + classgrape_1_1cuda_1_1GPUAppBase.html | 295 +++ ...cuda_1_1GPUBatchShuffleWorker-members.html | 95 + ...rape_1_1cuda_1_1GPUBatchShuffleWorker.html | 134 ++ ..._1_1cuda_1_1GPUMessageManager-members.html | 118 ++ classgrape_1_1cuda_1_1GPUMessageManager.html | 356 ++++ classgrape_1_1cuda_1_1GPUWorker-members.html | 95 + classgrape_1_1cuda_1_1GPUWorker.html | 134 ++ ...grape_1_1cuda_1_1HostFragment-members.html | 306 +++ classgrape_1_1cuda_1_1HostFragment.html | 1013 ++++++++++ classgrape_1_1cuda_1_1HostFragment.png | Bin 0 -> 6452 bytes classgrape_1_1cuda_1_1InArchive-members.html | 97 + classgrape_1_1cuda_1_1InArchive.html | 136 ++ ...ape_1_1cuda_1_1InArchiveGroup-members.html | 95 + classgrape_1_1cuda_1_1InArchiveGroup.html | 130 ++ classgrape_1_1cuda_1_1OutArchive-members.html | 96 + classgrape_1_1cuda_1_1OutArchive.html | 129 ++ ...pe_1_1cuda_1_1OutArchiveGroup-members.html | 92 + classgrape_1_1cuda_1_1OutArchiveGroup.html | 117 ++ ...ape_1_1cuda_1_1ParallelEngine-members.html | 106 + classgrape_1_1cuda_1_1ParallelEngine.html | 176 ++ classgrape_1_1cuda_1_1Queue-members.html | 94 + classgrape_1_1cuda_1_1Queue.html | 130 ++ ...sgrape_1_1cuda_1_1SharedArray-members.html | 105 + classgrape_1_1cuda_1_1SharedArray.html | 160 ++ ...sgrape_1_1cuda_1_1SharedValue-members.html | 95 + classgrape_1_1cuda_1_1SharedValue.html | 126 ++ classgrape_1_1cuda_1_1Stream-members.html | 92 + classgrape_1_1cuda_1_1Stream.html | 117 ++ ...sgrape_1_1cuda_1_1VertexArray-members.html | 154 ++ classgrape_1_1cuda_1_1VertexArray.html | 279 +++ classgrape_1_1cuda_1_1VertexArray.png | Bin 0 -> 887 bytes classgrape_1_1cuda_1_1dev_1_1Bitset.html | 79 + ..._1_1Bitset_3_01uint32__t_01_4-members.html | 95 + ...a_1_1dev_1_1Bitset_3_01uint32__t_01_4.html | 137 ++ ..._1_1Bitset_3_01uint64__t_01_4-members.html | 95 + ...a_1_1dev_1_1Bitset_3_01uint64__t_01_4.html | 137 ++ ...1_1cuda_1_1dev_1_1COOFragment-members.html | 96 + classgrape_1_1cuda_1_1dev_1_1COOFragment.html | 133 ++ ...cuda_1_1dev_1_1DenseVertexSet-members.html | 89 + ...rape_1_1cuda_1_1dev_1_1DenseVertexSet.html | 111 + ...cuda_1_1dev_1_1DeviceFragment-members.html | 164 ++ ...rape_1_1cuda_1_1dev_1_1DeviceFragment.html | 764 +++++++ ...e_1_1cuda_1_1dev_1_1InArchive-members.html | 89 + classgrape_1_1cuda_1_1dev_1_1InArchive.html | 111 + ..._1_1cuda_1_1dev_1_1MFLCounter-members.html | 98 + classgrape_1_1cuda_1_1dev_1_1MFLCounter.html | 138 ++ ...cuda_1_1dev_1_1MessageManager-members.html | 94 + ...rape_1_1cuda_1_1dev_1_1MessageManager.html | 136 ++ ..._1_1cuda_1_1dev_1_1OutArchive-members.html | 91 + classgrape_1_1cuda_1_1dev_1_1OutArchive.html | 116 ++ classgrape_1_1cuda_1_1dev_1_1Queue.html | 79 + ...eue_3_01T_00_01uint32__t_01_4-members.html | 93 + ...ev_1_1Queue_3_01T_00_01uint32__t_01_4.html | 120 ++ ...eue_3_01T_00_01uint64__t_01_4-members.html | 93 + ...ev_1_1Queue_3_01T_00_01uint64__t_01_4.html | 120 ++ ..._1cuda_1_1dev_1_1ShmHashTable-members.html | 94 + ...sgrape_1_1cuda_1_1dev_1_1ShmHashTable.html | 126 ++ ...1_1cuda_1_1dev_1_1VertexArray-members.html | 91 + classgrape_1_1cuda_1_1dev_1_1VertexArray.html | 114 ++ ...1_1mutable__csr__impl_1_1Blob-members.html | 93 + classgrape_1_1mutable__csr__impl_1_1Blob.html | 117 ++ ...1sync__comm_1_1WorkerIterator-members.html | 91 + ...grape_1_1sync__comm_1_1WorkerIterator.html | 114 ++ closed.png | Bin 0 -> 132 bytes dir_0ac875d46873659b11df92ca15225f14.html | 79 + dir_188297b17b8c7e2f88ff5b95af01904c.html | 79 + dir_1f464a49fc50ae467988ae0658141bfa.html | 79 + dir_2f174c8db964414c11598a70facd9f09.html | 79 + dir_30f3908cde7d7cb566881e1add56dc6f.html | 79 + dir_31dedf82b84e375e6f8373268199e921.html | 79 + dir_3cdb14565d08ed562605462a5ea6b4a8.html | 79 + dir_4f287cebe9c73a478d2777c0d88e0498.html | 79 + dir_5ffe253db61b30379d175ada8bcca58c.html | 83 + dir_63f1f8eb9f6d3217afd8e8dfb74e7cbf.html | 79 + dir_6a28a02402b7ed57aa26456f71070f0e.html | 79 + dir_6e96519b469f3dcd4cc74fe05ae52155.html | 85 + dir_7cc9563f11a98ea309c2844e3e65fc87.html | 85 + dir_82e82516cffc8eee3f011f0572d55bd8.html | 79 + dir_ab9d625e1a973d380d9281b74aefd4f2.html | 79 + dir_bbb4e56976a3e714fa0f43ec99c1d102.html | 79 + dir_c0b548cf109dbac2657a6a4a50903ef5.html | 79 + dir_c1ff87c90977f1292b51b622879499fa.html | 79 + dir_c61c2ea1b93cc3c8a7d025c3375b558a.html | 79 + dir_df854676fb38863dcf4a7b22887d8d30.html | 79 + doc.png | Bin 0 -> 746 bytes doxygen.css | 1793 +++++++++++++++++ doxygen.svg | 26 + dynsections.js | 121 ++ files.html | 82 + folderclosed.png | Bin 0 -> 616 bytes folderopen.png | Bin 0 -> 597 bytes functions.html | 79 + functions_d.html | 84 + functions_f.html | 127 ++ functions_func.html | 79 + functions_func_d.html | 84 + functions_func_f.html | 127 ++ functions_func_g.html | 194 ++ functions_func_h.html | 83 + functions_func_i.html | 133 ++ functions_func_l.html | 83 + functions_func_o.html | 89 + functions_func_p.html | 96 + functions_func_r.html | 78 + functions_func_s.html | 154 ++ functions_func_t.html | 85 + functions_func_u.html | 81 + functions_func_v.html | 82 + functions_g.html | 194 ++ functions_h.html | 83 + functions_i.html | 133 ++ functions_l.html | 83 + functions_o.html | 89 + functions_p.html | 96 + functions_r.html | 78 + functions_s.html | 154 ++ functions_t.html | 85 + functions_u.html | 81 + functions_v.html | 82 + hierarchy.html | 368 ++++ index.html | 186 ++ jquery.js | 35 + logo.png | Bin 0 -> 48692 bytes menu.js | 51 + menudata.js | 70 + namespacegoogle.html | 79 + namespacegrape.html | 1224 +++++++++++ ...atch__shuffle__message__manager__impl.html | 105 + namespacemembers.html | 100 + namespacemembers_enum.html | 79 + namespacemembers_func.html | 91 + namespacemembers_type.html | 76 + namespaces.html | 324 +++ nav_f.png | Bin 0 -> 153 bytes nav_g.png | Bin 0 -> 95 bytes nav_h.png | Bin 0 -> 98 bytes open.png | Bin 0 -> 123 bytes search/all_0.html | 37 + search/all_0.js | 5 + search/all_1.html | 37 + search/all_1.js | 42 + search/all_10.html | 37 + search/all_10.js | 6 + search/all_11.html | 37 + search/all_11.js | 6 + search/all_12.html | 37 + search/all_12.js | 48 + search/all_13.html | 37 + search/all_13.js | 12 + search/all_14.html | 37 + search/all_14.js | 5 + search/all_15.html | 37 + search/all_15.js | 29 + search/all_16.html | 37 + search/all_16.js | 8 + search/all_2.html | 37 + search/all_2.js | 18 + search/all_3.html | 37 + search/all_3.js | 21 + search/all_4.html | 37 + search/all_4.js | 23 + search/all_5.html | 37 + search/all_5.js | 14 + search/all_6.html | 37 + search/all_6.js | 16 + search/all_7.html | 37 + search/all_7.js | 43 + search/all_8.html | 37 + search/all_8.js | 9 + search/all_9.html | 37 + search/all_9.js | 44 + search/all_a.html | 37 + search/all_a.js | 9 + search/all_b.html | 37 + search/all_b.js | 11 + search/all_c.html | 37 + search/all_c.js | 25 + search/all_d.html | 37 + search/all_d.js | 9 + search/all_e.html | 37 + search/all_e.js | 9 + search/all_f.html | 37 + search/all_f.js | 16 + search/classes_0.html | 37 + search/classes_0.js | 5 + search/classes_1.html | 37 + search/classes_1.js | 37 + search/classes_10.html | 37 + search/classes_10.js | 6 + search/classes_11.html | 37 + search/classes_11.js | 5 + search/classes_12.html | 37 + search/classes_12.js | 34 + search/classes_13.html | 37 + search/classes_13.js | 11 + search/classes_14.html | 37 + search/classes_14.js | 26 + search/classes_15.html | 37 + search/classes_15.js | 8 + search/classes_2.html | 37 + search/classes_2.js | 18 + search/classes_3.html | 37 + search/classes_3.js | 20 + search/classes_4.html | 37 + search/classes_4.js | 19 + search/classes_5.html | 37 + search/classes_5.js | 14 + search/classes_6.html | 37 + search/classes_6.js | 8 + search/classes_7.html | 37 + search/classes_7.js | 11 + search/classes_8.html | 37 + search/classes_8.js | 7 + search/classes_9.html | 37 + search/classes_9.js | 32 + search/classes_a.html | 37 + search/classes_a.js | 6 + search/classes_b.html | 37 + search/classes_b.js | 8 + search/classes_c.html | 37 + search/classes_c.js | 24 + search/classes_d.html | 37 + search/classes_d.js | 9 + search/classes_e.html | 37 + search/classes_e.js | 5 + search/classes_f.html | 37 + search/classes_f.js | 12 + search/close.svg | 31 + search/enums_0.html | 37 + search/enums_0.js | 4 + search/enums_1.html | 37 + search/enums_1.js | 4 + search/enumvalues_0.html | 37 + search/enumvalues_0.js | 6 + search/files_0.html | 37 + search/files_0.js | 4 + search/functions_0.html | 37 + search/functions_0.js | 7 + search/functions_1.html | 37 + search/functions_1.js | 4 + search/functions_2.html | 37 + search/functions_2.js | 7 + search/functions_3.html | 37 + search/functions_3.js | 11 + search/functions_4.html | 37 + search/functions_4.js | 32 + search/functions_5.html | 37 + search/functions_5.js | 5 + search/functions_6.html | 37 + search/functions_6.js | 15 + search/functions_7.html | 37 + search/functions_7.js | 5 + search/functions_8.html | 37 + search/functions_8.js | 7 + search/functions_9.html | 37 + search/functions_9.js | 7 + search/functions_a.html | 37 + search/functions_a.js | 4 + search/functions_b.html | 37 + search/functions_b.js | 17 + search/functions_c.html | 37 + search/functions_c.js | 4 + search/functions_d.html | 37 + search/functions_d.js | 5 + search/functions_e.html | 37 + search/functions_e.js | 5 + search/mag_sel.svg | 74 + search/namespaces_0.html | 37 + search/namespaces_0.js | 6 + search/nomatches.html | 13 + search/search.css | 257 +++ search/search.js | 816 ++++++++ search/search_l.png | Bin 0 -> 567 bytes search/search_m.png | Bin 0 -> 158 bytes search/search_r.png | Bin 0 -> 553 bytes search/searchdata.js | 36 + search/typedefs_0.html | 37 + search/typedefs_0.js | 4 + splitbar.png | Bin 0 -> 314 bytes ...s_3_01grape_1_1Vertex_3_01T_01_4_01_4.html | 85 + ...ts_3_01grape_1_1Vertex_3_01T_01_4_01_4.png | Bin 0 -> 898 bytes ...ray_1_1__ConstructTransaction-members.html | 89 + ...pe_1_1Array_1_1__ConstructTransaction.html | 112 + ...e_1_1Array_1_1____Array__base-members.html | 89 + structgrape_1_1Array_1_1____Array__base.html | 114 ++ structgrape_1_1Array_1_1____Array__base.png | Bin 0 -> 687 bytes ...Alloc_01_4_1_1____Array__base-members.html | 85 + ..._00_01__Alloc_01_4_1_1____Array__base.html | 98 + ...e_00_01__Alloc_01_4_1_1____Array__base.png | Bin 0 -> 868 bytes ...Alloc_01_4_1_1const__iterator-members.html | 94 + ..._00_01__Alloc_01_4_1_1const__iterator.html | 127 ++ ...00_01__Alloc_01_4_1_1iterator-members.html | 94 + ...ptyType_00_01__Alloc_01_4_1_1iterator.html | 127 ++ ...elMessageManager_1_1ap__event-members.html | 87 + ...toParallelMessageManager_1_1ap__event.html | 105 + structgrape_1_1DestList-members.html | 87 + structgrape_1_1DestList.html | 112 + structgrape_1_1Edge-members.html | 96 + structgrape_1_1Edge.html | 143 ++ ..._01VID__T_00_01EmptyType_01_4-members.html | 93 + ..._1Edge_3_01VID__T_00_01EmptyType_01_4.html | 136 ++ structgrape_1_1EmptyType.html | 86 + structgrape_1_1IdHasher.html | 79 + ..._1IdHasher_3_01uint32__t_01_4-members.html | 83 + ...tgrape_1_1IdHasher_3_01uint32__t_01_4.html | 89 + ..._1IdHasher_3_01uint64__t_01_4-members.html | 83 + ...tgrape_1_1IdHasher_3_01uint64__t_01_4.html | 89 + structgrape_1_1IdenticalHasher.html | 79 + ...icalHasher_3_01uint32__t_01_4-members.html | 83 + ...1_1IdenticalHasher_3_01uint32__t_01_4.html | 89 + ...icalHasher_3_01uint64__t_01_4-members.html | 83 + ...1_1IdenticalHasher_3_01uint64__t_01_4.html | 89 + ...mmutableEdgecutFragmentTraits-members.html | 92 + ...ape_1_1ImmutableEdgecutFragmentTraits.html | 116 ++ structgrape_1_1InternalOID-members.html | 85 + structgrape_1_1InternalOID.html | 99 + ...nalOID_3_01std_1_1string_01_4-members.html | 85 + ...1_1InternalOID_3_01std_1_1string_01_4.html | 99 + structgrape_1_1LoadGraphSpec-members.html | 93 + structgrape_1_1LoadGraphSpec.html | 130 ++ structgrape_1_1MessageBuffer-members.html | 103 + structgrape_1_1MessageBuffer.html | 155 ++ structgrape_1_1MessageBuffer.png | Bin 0 -> 779 bytes structgrape_1_1MicroBuffer-members.html | 87 + structgrape_1_1MicroBuffer.html | 99 + ...1MutableEdgecutFragmentTraits-members.html | 92 + ...grape_1_1MutableEdgecutFragmentTraits.html | 116 ++ structgrape_1_1Mutation-members.html | 88 + structgrape_1_1Mutation.html | 104 + structgrape_1_1Nbr-members.html | 98 + structgrape_1_1Nbr.html | 150 ++ ..._01VID__T_00_01EmptyType_01_4-members.html | 95 + ...1_1Nbr_3_01VID__T_00_01EmptyType_01_4.html | 142 ++ ...ctgrape_1_1ParallelEngineSpec-members.html | 85 + structgrape_1_1ParallelEngineSpec.html | 95 + structgrape_1_1PrepareConf-members.html | 87 + structgrape_1_1PrepareConf.html | 101 + structgrape_1_1SerializedSize-members.html | 83 + structgrape_1_1SerializedSize.html | 89 + ...VarintEncoder_3_01T_01_4_01_4-members.html | 83 + ..._01DeltaVarintEncoder_3_01T_01_4_01_4.html | 89 + ...alizedSize_3_01EmptyType_01_4-members.html | 83 + ..._1_1SerializedSize_3_01EmptyType_01_4.html | 89 + ...edSize_3_01VarintEncoder_01_4-members.html | 83 + ...SerializedSize_3_01VarintEncoder_01_4.html | 89 + ...01nonstd_1_1string__view_01_4-members.html | 83 + ...dSize_3_01nonstd_1_1string__view_01_4.html | 89 + ...edSize_3_01std_1_1string_01_4-members.html | 83 + ...SerializedSize_3_01std_1_1string_01_4.html | 89 + structgrape_1_1ShuffleBuffer-members.html | 85 + structgrape_1_1ShuffleBuffer.html | 99 + ...ctgrape_1_1ShuffleBufferTuple-members.html | 99 + structgrape_1_1ShuffleBufferTuple.html | 168 ++ ...fleBufferTuple_3_01First_01_4-members.html | 99 + ..._1_1ShuffleBufferTuple_3_01First_01_4.html | 142 ++ ...tgrape_1_1ShuffleBufferTuple__element.html | 79 + ...rst_00_01Rest_8_8_8_01_4_01_4-members.html | 83 + ...e_3_01First_00_01Rest_8_8_8_01_4_01_4.html | 89 + ...e_3_01First_00_01Tail_8_8_8_01_4_01_4.html | 88 + ...le_3_01First_00_01Tail_8_8_8_01_4_01_4.png | Bin 0 -> 1403 bytes ...01nonstd_1_1string__view_01_4-members.html | 85 + ...uffer_3_01nonstd_1_1string__view_01_4.html | 99 + structgrape_1_1TerminateInfo-members.html | 85 + structgrape_1_1TerminateInfo.html | 99 + structgrape_1_1VarintUtil-members.html | 85 + structgrape_1_1VarintUtil.html | 95 + ...VarintUtil_3_01uint32__t_01_4-members.html | 87 + ...rape_1_1VarintUtil_3_01uint32__t_01_4.html | 101 + ...VarintUtil_3_01uint64__t_01_4-members.html | 88 + ...rape_1_1VarintUtil_3_01uint64__t_01_4.html | 104 + structgrape_1_1add__const__ref-members.html | 83 + structgrape_1_1add__const__ref.html | 89 + ...d__const__ref_3_01T_01_6_01_4-members.html | 83 + ...pe_1_1add__const__ref_3_01T_01_6_01_4.html | 89 + ...__ref_3_01const_01T_01_6_01_4-members.html | 83 + ...d__const__ref_3_01const_01T_01_6_01_4.html | 89 + structgrape_1_1add__ref-members.html | 83 + structgrape_1_1add__ref.html | 89 + ...e_1_1add__ref_3_01T_01_6_01_4-members.html | 83 + structgrape_1_1add__ref_3_01T_01_6_01_4.html | 89 + ...nager__impl_1_1ArchiveShuffle-members.html | 83 + ...sage__manager__impl_1_1ArchiveShuffle.html | 89 + ...age__manager__impl_1_1IsRange-members.html | 85 + ...le__message__manager__impl_1_1IsRange.html | 125 ++ ...__manager__impl_1_1PodShuffle-members.html | 83 + ..._message__manager__impl_1_1PodShuffle.html | 115 ++ ...nager__impl_1_1ShuffleInplace-members.html | 83 + ...sage__manager__impl_1_1ShuffleInplace.html | 115 ++ ...e_1_1cuda_1_1CTAWorkScheduler-members.html | 83 + structgrape_1_1cuda_1_1CTAWorkScheduler.html | 90 + structgrape_1_1cuda_1_1IEvent-members.html | 87 + structgrape_1_1cuda_1_1IEvent.html | 107 + structgrape_1_1cuda_1_1IEvent.png | Bin 0 -> 672 bytes ..._1cuda_1_1IntervalRangeMarker-members.html | 91 + ...tgrape_1_1cuda_1_1IntervalRangeMarker.html | 121 ++ ...ctgrape_1_1cuda_1_1IntervalRangeMarker.png | Bin 0 -> 848 bytes structgrape_1_1cuda_1_1Marker-members.html | 88 + structgrape_1_1cuda_1_1Marker.html | 104 + ...tgrape_1_1cuda_1_1RangeMarker-members.html | 89 + structgrape_1_1cuda_1_1RangeMarker.html | 117 ++ structgrape_1_1cuda_1_1RangeMarker.png | Bin 0 -> 847 bytes ...ape_1_1cuda_1_1VertexMetadata-members.html | 88 + structgrape_1_1cuda_1_1VertexMetadata.html | 102 + ..._00_01grape_1_1EmptyType_01_4-members.html | 90 + ...01VID__T_00_01grape_1_1EmptyType_01_4.html | 111 + ...pe_1_1cuda_1_1WorkSourceArray-members.html | 87 + structgrape_1_1cuda_1_1WorkSourceArray.html | 105 + ...pe_1_1cuda_1_1WorkSourceRange-members.html | 87 + structgrape_1_1cuda_1_1WorkSourceRange.html | 105 + structgrape_1_1cuda_1_1empty__np.html | 79 + structgrape_1_1cuda_1_1np__local-members.html | 88 + structgrape_1_1cuda_1_1np__local.html | 102 + structgrape_1_1cuda_1_1tb__np-members.html | 86 + structgrape_1_1cuda_1_1tb__np.html | 98 + structgrape_1_1cuda_1_1warp__np-members.html | 86 + structgrape_1_1cuda_1_1warp__np.html | 98 + ...rape_1_1frag__shuffle__header-members.html | 87 + structgrape_1_1frag__shuffle__header.html | 99 + ...tgrape_1_1get__buffer__helper-members.html | 84 + structgrape_1_1get__buffer__helper.html | 92 + ..._01First_00_01Rest_8_8_8_01_4-members.html | 84 + ...3_010_00_01First_00_01Rest_8_8_8_01_4.html | 92 + ...d__indexer__impl_1_1KeyBuffer-members.html | 87 + ...ape_1_1id__indexer__impl_1_1KeyBuffer.html | 107 + ...01nonstd_1_1string__view_01_4-members.html | 87 + ...uffer_3_01nonstd_1_1string__view_01_4.html | 107 + structgrape_1_1integer__sequence-members.html | 84 + structgrape_1_1integer__sequence.html | 96 + ...ctgrape_1_1internal_1_1Vertex-members.html | 92 + structgrape_1_1internal_1_1Vertex.html | 131 ++ ..._01VID__T_00_01EmptyType_01_4-members.html | 90 + ...Vertex_3_01VID__T_00_01EmptyType_01_4.html | 121 ++ structgrape_1_1make__integer__sequence.html | 79 + ...01T_00_010_00_01Is_8_8_8_01_4-members.html | 84 + ...uence_3_01T_00_010_00_01Is_8_8_8_01_4.html | 102 + ...quence_3_01T_00_010_00_01Is_8_8_8_01_4.png | Bin 0 -> 956 bytes ...mutable__csr__impl_1_1AdjList-members.html | 87 + ...rape_1_1mutable__csr__impl_1_1AdjList.html | 102 + ...ape_1_1sync__comm_1_1CommImpl-members.html | 86 + structgrape_1_1sync__comm_1_1CommImpl.html | 99 + ...1OID__T_00_01VID__T_01_4_01_4-members.html | 84 + ...exer_3_01OID__T_00_01VID__T_01_4_01_4.html | 92 + ..._3_01InArchive_00_01void_01_4-members.html | 86 + ...CommImpl_3_01InArchive_00_01void_01_4.html | 99 + ...3_01OutArchive_00_01void_01_4-members.html | 86 + ...ommImpl_3_01OutArchive_00_01void_01_4.html | 99 + ...ringViewVector_00_01void_01_4-members.html | 86 + ...l_3_01StringViewVector_00_01void_01_4.html | 99 + ...__pode5fa600bd20ba7ca5d785a935cc31699.html | 99 + ...__pode6dff351d91a6e3b33b0af04b848cf91.html | 86 + ...nable2a9ea80b9ef55b079f3ffd5acf231cc0.html | 88 + ...nable5716673ed5b278549fa76606b2611c4b.html | 88 + ...nablec0367c4b99ee92a0913180271fe39555.html | 105 + ...nablefbdb3f21ced368a4a4b248c9347984b5.html | 105 + ...ape_1_1Vertex_3_01T_01_4_01_4-members.html | 83 + ...h_3_01grape_1_1Vertex_3_01T_01_4_01_4.html | 89 + sync_off.png | Bin 0 -> 853 bytes sync_on.png | Bin 0 -> 845 bytes tab_a.png | Bin 0 -> 142 bytes tab_b.png | Bin 0 -> 169 bytes tab_h.png | Bin 0 -> 177 bytes tab_s.png | Bin 0 -> 184 bytes tabs.css | 1 + uniongrape_1_1cuda_1_1np__shared-members.html | 88 + uniongrape_1_1cuda_1_1np__shared.html | 98 + 721 files changed, 78739 insertions(+) create mode 100644 annotated.html create mode 100644 atomic__ops_8h.html create mode 100644 bc_s.png create mode 100644 bdwn.png create mode 100644 classThreadPool-members.html create mode 100644 classThreadPool.html create mode 100644 classes.html create mode 100644 classgrape_1_1AdjList-members.html create mode 100644 classgrape_1_1AdjList.html create mode 100644 classgrape_1_1AdjList_1_1const__iterator-members.html create mode 100644 classgrape_1_1AdjList_1_1const__iterator.html create mode 100644 classgrape_1_1AdjList_1_1iterator-members.html create mode 100644 classgrape_1_1AdjList_1_1iterator.html create mode 100644 classgrape_1_1Array-members.html create mode 100644 classgrape_1_1Array.html create mode 100644 classgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4-members.html create mode 100644 classgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4.html create mode 100644 classgrape_1_1AutoAppBase-members.html create mode 100644 classgrape_1_1AutoAppBase.html create mode 100644 classgrape_1_1AutoParallelMessageManager-members.html create mode 100644 classgrape_1_1AutoParallelMessageManager.html create mode 100644 classgrape_1_1AutoParallelMessageManager.png create mode 100644 classgrape_1_1BasicFragmentLoader-members.html create mode 100644 classgrape_1_1BasicFragmentLoader.html create mode 100644 classgrape_1_1BasicFragmentMutator-members.html create mode 100644 classgrape_1_1BasicFragmentMutator.html create mode 100644 classgrape_1_1BatchShuffleAppBase-members.html create mode 100644 classgrape_1_1BatchShuffleAppBase.html create mode 100644 classgrape_1_1BatchShuffleMessageManager-members.html create mode 100644 classgrape_1_1BatchShuffleMessageManager.html create mode 100644 classgrape_1_1BatchShuffleMessageManager.png create mode 100644 classgrape_1_1Bitset-members.html create mode 100644 classgrape_1_1Bitset.html create mode 100644 classgrape_1_1Bitset.png create mode 100644 classgrape_1_1BlockingQueue-members.html create mode 100644 classgrape_1_1BlockingQueue.html create mode 100644 classgrape_1_1CSREdgecutFragmentBase-members.html create mode 100644 classgrape_1_1CSREdgecutFragmentBase.html create mode 100644 classgrape_1_1CSREdgecutFragmentBase.png create mode 100644 classgrape_1_1CommSpec-members.html create mode 100644 classgrape_1_1CommSpec.html create mode 100644 classgrape_1_1Communicator-members.html create mode 100644 classgrape_1_1Communicator.html create mode 100644 classgrape_1_1ConstAdjList-members.html create mode 100644 classgrape_1_1ConstAdjList.html create mode 100644 classgrape_1_1ConstAdjList_1_1const__iterator-members.html create mode 100644 classgrape_1_1ConstAdjList_1_1const__iterator.html create mode 100644 classgrape_1_1ContextBase-members.html create mode 100644 classgrape_1_1ContextBase.html create mode 100644 classgrape_1_1ContextBase.png create mode 100644 classgrape_1_1DeMutableCSR.html create mode 100644 classgrape_1_1DeMutableCSRBuilder.html create mode 100644 classgrape_1_1DeMutableCSRBuilder_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4-members.html create mode 100644 classgrape_1_1DeMutableCSRBuilder_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4.html create mode 100644 classgrape_1_1DeMutableCSR_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4-members.html create mode 100644 classgrape_1_1DeMutableCSR_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4.html create mode 100644 classgrape_1_1DefaultAllocator-members.html create mode 100644 classgrape_1_1DefaultAllocator.html create mode 100644 classgrape_1_1DefaultAllocator.png create mode 100644 classgrape_1_1DefaultMessageManager-members.html create mode 100644 classgrape_1_1DefaultMessageManager.html create mode 100644 classgrape_1_1DefaultMessageManager.png create mode 100644 classgrape_1_1DeltaVarintDecoder-members.html create mode 100644 classgrape_1_1DeltaVarintDecoder.html create mode 100644 classgrape_1_1DeltaVarintEncoder-members.html create mode 100644 classgrape_1_1DeltaVarintEncoder.html create mode 100644 classgrape_1_1DenseVertexSet.html create mode 100644 classgrape_1_1DenseVertexSet_3_01DualVertexRange_3_01VID__T_01_4_01_4-members.html create mode 100644 classgrape_1_1DenseVertexSet_3_01DualVertexRange_3_01VID__T_01_4_01_4.html create mode 100644 classgrape_1_1DenseVertexSet_3_01VertexRange_3_01VID__T_01_4_01_4-members.html create mode 100644 classgrape_1_1DenseVertexSet_3_01VertexRange_3_01VID__T_01_4_01_4.html create mode 100644 classgrape_1_1DenseVertexSet_3_01VertexVector_3_01VID__T_01_4_01_4-members.html create mode 100644 classgrape_1_1DenseVertexSet_3_01VertexVector_3_01VID__T_01_4_01_4.html create mode 100644 classgrape_1_1DualVertexRange-members.html create mode 100644 classgrape_1_1DualVertexRange.html create mode 100644 classgrape_1_1DualVertexRange_1_1iterator-members.html create mode 100644 classgrape_1_1DualVertexRange_1_1iterator.html create mode 100644 classgrape_1_1EVFragmentLoader-members.html create mode 100644 classgrape_1_1EVFragmentLoader.html create mode 100644 classgrape_1_1EVFragmentMutator-members.html create mode 100644 classgrape_1_1EVFragmentMutator.html create mode 100644 classgrape_1_1EVFragmentRebalanceLoader-members.html create mode 100644 classgrape_1_1EVFragmentRebalanceLoader.html create mode 100644 classgrape_1_1EdgecutFragmentBase-members.html create mode 100644 classgrape_1_1EdgecutFragmentBase.html create mode 100644 classgrape_1_1EdgecutFragmentBase.png create mode 100644 classgrape_1_1FilterAdjList-members.html create mode 100644 classgrape_1_1FilterAdjList.html create mode 100644 classgrape_1_1FilterAdjList_1_1const__iterator-members.html create mode 100644 classgrape_1_1FilterAdjList_1_1const__iterator.html create mode 100644 classgrape_1_1FilterAdjList_1_1iterator-members.html create mode 100644 classgrape_1_1FilterAdjList_1_1iterator.html create mode 100644 classgrape_1_1FilterConstAdjList-members.html create mode 100644 classgrape_1_1FilterConstAdjList.html create mode 100644 classgrape_1_1FilterConstAdjList_1_1const__iterator-members.html create mode 100644 classgrape_1_1FilterConstAdjList_1_1const__iterator.html create mode 100644 classgrape_1_1FixedInArchive-members.html create mode 100644 classgrape_1_1FixedInArchive.html create mode 100644 classgrape_1_1FixedInArchive.png create mode 100644 classgrape_1_1FragmentBase-members.html create mode 100644 classgrape_1_1FragmentBase.html create mode 100644 classgrape_1_1FragmentBase.png create mode 100644 classgrape_1_1GlobalVertexMap-members.html create mode 100644 classgrape_1_1GlobalVertexMap.html create mode 100644 classgrape_1_1GlobalVertexMap.png create mode 100644 classgrape_1_1GlobalVertexMapBuilder-members.html create mode 100644 classgrape_1_1GlobalVertexMapBuilder.html create mode 100644 classgrape_1_1HashPartitioner-members.html create mode 100644 classgrape_1_1HashPartitioner.html create mode 100644 classgrape_1_1HashPartitioner_3_01std_1_1string_01_4-members.html create mode 100644 classgrape_1_1HashPartitioner_3_01std_1_1string_01_4.html create mode 100644 classgrape_1_1IOAdaptorBase-members.html create mode 100644 classgrape_1_1IOAdaptorBase.html create mode 100644 classgrape_1_1IOAdaptorBase.png create mode 100644 classgrape_1_1ISyncBuffer-members.html create mode 100644 classgrape_1_1ISyncBuffer.html create mode 100644 classgrape_1_1ISyncBuffer.png create mode 100644 classgrape_1_1IdIndexer-members.html create mode 100644 classgrape_1_1IdIndexer.html create mode 100644 classgrape_1_1IdParser-members.html create mode 100644 classgrape_1_1IdParser.html create mode 100644 classgrape_1_1ImmutableCSR-members.html create mode 100644 classgrape_1_1ImmutableCSR.html create mode 100644 classgrape_1_1ImmutableCSRBuild-members.html create mode 100644 classgrape_1_1ImmutableCSRBuild.html create mode 100644 classgrape_1_1ImmutableCSRStreamBuilder-members.html create mode 100644 classgrape_1_1ImmutableCSRStreamBuilder.html create mode 100644 classgrape_1_1ImmutableEdgecutFragment-members.html create mode 100644 classgrape_1_1ImmutableEdgecutFragment.html create mode 100644 classgrape_1_1ImmutableEdgecutFragment.png create mode 100644 classgrape_1_1InArchive-members.html create mode 100644 classgrape_1_1InArchive.html create mode 100644 classgrape_1_1IteratorPair-members.html create mode 100644 classgrape_1_1IteratorPair.html create mode 100644 classgrape_1_1LineParserBase-members.html create mode 100644 classgrape_1_1LineParserBase.html create mode 100644 classgrape_1_1LineParserBase.png create mode 100644 classgrape_1_1LocalIOAdaptor-members.html create mode 100644 classgrape_1_1LocalIOAdaptor.html create mode 100644 classgrape_1_1LocalIOAdaptor.png create mode 100644 classgrape_1_1LocalVertexMap-members.html create mode 100644 classgrape_1_1LocalVertexMap.html create mode 100644 classgrape_1_1LocalVertexMap.png create mode 100644 classgrape_1_1LocalVertexMapBuilder-members.html create mode 100644 classgrape_1_1LocalVertexMapBuilder.html create mode 100644 classgrape_1_1MessageBufferPool-members.html create mode 100644 classgrape_1_1MessageBufferPool.html create mode 100644 classgrape_1_1MessageInBuffer-members.html create mode 100644 classgrape_1_1MessageInBuffer.html create mode 100644 classgrape_1_1MessageManagerBase-members.html create mode 100644 classgrape_1_1MessageManagerBase.html create mode 100644 classgrape_1_1MessageManagerBase.png create mode 100644 classgrape_1_1MutableCSR.html create mode 100644 classgrape_1_1MutableCSRBuilder.html create mode 100644 classgrape_1_1MutableCSRBuilder_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4-members.html create mode 100644 classgrape_1_1MutableCSRBuilder_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4.html create mode 100644 classgrape_1_1MutableCSR_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4-members.html create mode 100644 classgrape_1_1MutableCSR_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4.html create mode 100644 classgrape_1_1MutableEdgecutFragment-members.html create mode 100644 classgrape_1_1MutableEdgecutFragment.html create mode 100644 classgrape_1_1MutableEdgecutFragment.png create mode 100644 classgrape_1_1MutationContext-members.html create mode 100644 classgrape_1_1MutationContext.html create mode 100644 classgrape_1_1MutationContext.png create mode 100644 classgrape_1_1NonblockingQueue-members.html create mode 100644 classgrape_1_1NonblockingQueue.html create mode 100644 classgrape_1_1OutArchive-members.html create mode 100644 classgrape_1_1OutArchive.html create mode 100644 classgrape_1_1ParallelAppBase-members.html create mode 100644 classgrape_1_1ParallelAppBase.html create mode 100644 classgrape_1_1ParallelEngine-members.html create mode 100644 classgrape_1_1ParallelEngine.html create mode 100644 classgrape_1_1ParallelMessageManager-members.html create mode 100644 classgrape_1_1ParallelMessageManager.html create mode 100644 classgrape_1_1ParallelMessageManager.png create mode 100644 classgrape_1_1ParallelMessageManagerOpt-members.html create mode 100644 classgrape_1_1ParallelMessageManagerOpt.html create mode 100644 classgrape_1_1ParallelMessageManagerOpt.png create mode 100644 classgrape_1_1RefBitset-members.html create mode 100644 classgrape_1_1RefBitset.html create mode 100644 classgrape_1_1SegmentedPartitioner-members.html create mode 100644 classgrape_1_1SegmentedPartitioner.html create mode 100644 classgrape_1_1SegmentedPartitioner_3_01std_1_1string_01_4-members.html create mode 100644 classgrape_1_1SegmentedPartitioner_3_01std_1_1string_01_4.html create mode 100644 classgrape_1_1ShuffleIn-members.html create mode 100644 classgrape_1_1ShuffleIn.html create mode 100644 classgrape_1_1ShuffleOut-members.html create mode 100644 classgrape_1_1ShuffleOut.html create mode 100644 classgrape_1_1SpinLock-members.html create mode 100644 classgrape_1_1SpinLock.html create mode 100644 classgrape_1_1StringViewVector-members.html create mode 100644 classgrape_1_1StringViewVector.html create mode 100644 classgrape_1_1SyncBuffer-members.html create mode 100644 classgrape_1_1SyncBuffer.html create mode 100644 classgrape_1_1SyncBuffer.png create mode 100644 classgrape_1_1TSVLineParser-members.html create mode 100644 classgrape_1_1TSVLineParser.html create mode 100644 classgrape_1_1TSVLineParser.png create mode 100644 classgrape_1_1ThreadLocalMessageBuffer-members.html create mode 100644 classgrape_1_1ThreadLocalMessageBuffer.html create mode 100644 classgrape_1_1ThreadLocalMessageBufferOpt-members.html create mode 100644 classgrape_1_1ThreadLocalMessageBufferOpt.html create mode 100644 classgrape_1_1VarintDecoder-members.html create mode 100644 classgrape_1_1VarintDecoder.html create mode 100644 classgrape_1_1VarintEncoder-members.html create mode 100644 classgrape_1_1VarintEncoder.html create mode 100644 classgrape_1_1Vertex-members.html create mode 100644 classgrape_1_1Vertex.html create mode 100644 classgrape_1_1VertexArray.html create mode 100644 classgrape_1_1VertexArray_3_01DualVertexRange_3_01VID__T_01_4_00_01T_01_4-members.html create mode 100644 classgrape_1_1VertexArray_3_01DualVertexRange_3_01VID__T_01_4_00_01T_01_4.html create mode 100644 classgrape_1_1VertexArray_3_01VertexRange_3_01VID__T_01_4_00_01T_01_4-members.html create mode 100644 classgrape_1_1VertexArray_3_01VertexRange_3_01VID__T_01_4_00_01T_01_4.html create mode 100644 classgrape_1_1VertexArray_3_01VertexRange_3_01VID__T_01_4_00_01T_01_4.png create mode 100644 classgrape_1_1VertexDataContext-members.html create mode 100644 classgrape_1_1VertexDataContext.html create mode 100644 classgrape_1_1VertexDataContext.png create mode 100644 classgrape_1_1VertexMapBase-members.html create mode 100644 classgrape_1_1VertexMapBase.html create mode 100644 classgrape_1_1VertexRange-members.html create mode 100644 classgrape_1_1VertexRange.html create mode 100644 classgrape_1_1VertexRange_1_1iterator-members.html create mode 100644 classgrape_1_1VertexRange_1_1iterator.html create mode 100644 classgrape_1_1VoidContext-members.html create mode 100644 classgrape_1_1VoidContext.html create mode 100644 classgrape_1_1VoidContext.png create mode 100644 classgrape_1_1Worker-members.html create mode 100644 classgrape_1_1Worker.html create mode 100644 classgrape_1_1batch__shuffle__message__manager__impl_1_1PostProcess-members.html create mode 100644 classgrape_1_1batch__shuffle__message__manager__impl_1_1PostProcess.html create mode 100644 classgrape_1_1batch__shuffle__message__manager__impl_1_1PostProcess.png create mode 100644 classgrape_1_1batch__shuffle__message__manager__impl_1_1PostProcessBase-members.html create mode 100644 classgrape_1_1batch__shuffle__message__manager__impl_1_1PostProcessBase.html create mode 100644 classgrape_1_1batch__shuffle__message__manager__impl_1_1PostProcessBase.png create mode 100644 classgrape_1_1cuda_1_1ArrayView-members.html create mode 100644 classgrape_1_1cuda_1_1ArrayView.html create mode 100644 classgrape_1_1cuda_1_1BatchShuffleAppBase-members.html create mode 100644 classgrape_1_1cuda_1_1BatchShuffleAppBase.html create mode 100644 classgrape_1_1cuda_1_1BatchShuffleMessageManager-members.html create mode 100644 classgrape_1_1cuda_1_1BatchShuffleMessageManager.html create mode 100644 classgrape_1_1cuda_1_1Bitset-members.html create mode 100644 classgrape_1_1cuda_1_1Bitset.html create mode 100644 classgrape_1_1cuda_1_1COOFragment-members.html create mode 100644 classgrape_1_1cuda_1_1COOFragment.html create mode 100644 classgrape_1_1cuda_1_1Communicator-members.html create mode 100644 classgrape_1_1cuda_1_1Communicator.html create mode 100644 classgrape_1_1cuda_1_1DenseVertexSet-members.html create mode 100644 classgrape_1_1cuda_1_1DenseVertexSet.html create mode 100644 classgrape_1_1cuda_1_1DeviceBuffer-members.html create mode 100644 classgrape_1_1cuda_1_1DeviceBuffer.html create mode 100644 classgrape_1_1cuda_1_1Event-members.html create mode 100644 classgrape_1_1cuda_1_1Event.html create mode 100644 classgrape_1_1cuda_1_1EventHolder-members.html create mode 100644 classgrape_1_1cuda_1_1EventHolder.html create mode 100644 classgrape_1_1cuda_1_1EventHolder.png create mode 100644 classgrape_1_1cuda_1_1GPUAppBase-members.html create mode 100644 classgrape_1_1cuda_1_1GPUAppBase.html create mode 100644 classgrape_1_1cuda_1_1GPUBatchShuffleWorker-members.html create mode 100644 classgrape_1_1cuda_1_1GPUBatchShuffleWorker.html create mode 100644 classgrape_1_1cuda_1_1GPUMessageManager-members.html create mode 100644 classgrape_1_1cuda_1_1GPUMessageManager.html create mode 100644 classgrape_1_1cuda_1_1GPUWorker-members.html create mode 100644 classgrape_1_1cuda_1_1GPUWorker.html create mode 100644 classgrape_1_1cuda_1_1HostFragment-members.html create mode 100644 classgrape_1_1cuda_1_1HostFragment.html create mode 100644 classgrape_1_1cuda_1_1HostFragment.png create mode 100644 classgrape_1_1cuda_1_1InArchive-members.html create mode 100644 classgrape_1_1cuda_1_1InArchive.html create mode 100644 classgrape_1_1cuda_1_1InArchiveGroup-members.html create mode 100644 classgrape_1_1cuda_1_1InArchiveGroup.html create mode 100644 classgrape_1_1cuda_1_1OutArchive-members.html create mode 100644 classgrape_1_1cuda_1_1OutArchive.html create mode 100644 classgrape_1_1cuda_1_1OutArchiveGroup-members.html create mode 100644 classgrape_1_1cuda_1_1OutArchiveGroup.html create mode 100644 classgrape_1_1cuda_1_1ParallelEngine-members.html create mode 100644 classgrape_1_1cuda_1_1ParallelEngine.html create mode 100644 classgrape_1_1cuda_1_1Queue-members.html create mode 100644 classgrape_1_1cuda_1_1Queue.html create mode 100644 classgrape_1_1cuda_1_1SharedArray-members.html create mode 100644 classgrape_1_1cuda_1_1SharedArray.html create mode 100644 classgrape_1_1cuda_1_1SharedValue-members.html create mode 100644 classgrape_1_1cuda_1_1SharedValue.html create mode 100644 classgrape_1_1cuda_1_1Stream-members.html create mode 100644 classgrape_1_1cuda_1_1Stream.html create mode 100644 classgrape_1_1cuda_1_1VertexArray-members.html create mode 100644 classgrape_1_1cuda_1_1VertexArray.html create mode 100644 classgrape_1_1cuda_1_1VertexArray.png create mode 100644 classgrape_1_1cuda_1_1dev_1_1Bitset.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1Bitset_3_01uint32__t_01_4-members.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1Bitset_3_01uint32__t_01_4.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1Bitset_3_01uint64__t_01_4-members.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1Bitset_3_01uint64__t_01_4.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1COOFragment-members.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1COOFragment.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1DenseVertexSet-members.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1DenseVertexSet.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1DeviceFragment-members.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1InArchive-members.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1InArchive.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1MFLCounter-members.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1MFLCounter.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1MessageManager-members.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1MessageManager.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1OutArchive-members.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1OutArchive.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1Queue.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1Queue_3_01T_00_01uint32__t_01_4-members.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1Queue_3_01T_00_01uint32__t_01_4.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1Queue_3_01T_00_01uint64__t_01_4-members.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1Queue_3_01T_00_01uint64__t_01_4.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1ShmHashTable-members.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1ShmHashTable.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1VertexArray-members.html create mode 100644 classgrape_1_1cuda_1_1dev_1_1VertexArray.html create mode 100644 classgrape_1_1mutable__csr__impl_1_1Blob-members.html create mode 100644 classgrape_1_1mutable__csr__impl_1_1Blob.html create mode 100644 classgrape_1_1sync__comm_1_1WorkerIterator-members.html create mode 100644 classgrape_1_1sync__comm_1_1WorkerIterator.html create mode 100644 closed.png create mode 100644 dir_0ac875d46873659b11df92ca15225f14.html create mode 100644 dir_188297b17b8c7e2f88ff5b95af01904c.html create mode 100644 dir_1f464a49fc50ae467988ae0658141bfa.html create mode 100644 dir_2f174c8db964414c11598a70facd9f09.html create mode 100644 dir_30f3908cde7d7cb566881e1add56dc6f.html create mode 100644 dir_31dedf82b84e375e6f8373268199e921.html create mode 100644 dir_3cdb14565d08ed562605462a5ea6b4a8.html create mode 100644 dir_4f287cebe9c73a478d2777c0d88e0498.html create mode 100644 dir_5ffe253db61b30379d175ada8bcca58c.html create mode 100644 dir_63f1f8eb9f6d3217afd8e8dfb74e7cbf.html create mode 100644 dir_6a28a02402b7ed57aa26456f71070f0e.html create mode 100644 dir_6e96519b469f3dcd4cc74fe05ae52155.html create mode 100644 dir_7cc9563f11a98ea309c2844e3e65fc87.html create mode 100644 dir_82e82516cffc8eee3f011f0572d55bd8.html create mode 100644 dir_ab9d625e1a973d380d9281b74aefd4f2.html create mode 100644 dir_bbb4e56976a3e714fa0f43ec99c1d102.html create mode 100644 dir_c0b548cf109dbac2657a6a4a50903ef5.html create mode 100644 dir_c1ff87c90977f1292b51b622879499fa.html create mode 100644 dir_c61c2ea1b93cc3c8a7d025c3375b558a.html create mode 100644 dir_df854676fb38863dcf4a7b22887d8d30.html create mode 100644 doc.png create mode 100644 doxygen.css create mode 100644 doxygen.svg create mode 100644 dynsections.js create mode 100644 files.html create mode 100644 folderclosed.png create mode 100644 folderopen.png create mode 100644 functions.html create mode 100644 functions_d.html create mode 100644 functions_f.html create mode 100644 functions_func.html create mode 100644 functions_func_d.html create mode 100644 functions_func_f.html create mode 100644 functions_func_g.html create mode 100644 functions_func_h.html create mode 100644 functions_func_i.html create mode 100644 functions_func_l.html create mode 100644 functions_func_o.html create mode 100644 functions_func_p.html create mode 100644 functions_func_r.html create mode 100644 functions_func_s.html create mode 100644 functions_func_t.html create mode 100644 functions_func_u.html create mode 100644 functions_func_v.html create mode 100644 functions_g.html create mode 100644 functions_h.html create mode 100644 functions_i.html create mode 100644 functions_l.html create mode 100644 functions_o.html create mode 100644 functions_p.html create mode 100644 functions_r.html create mode 100644 functions_s.html create mode 100644 functions_t.html create mode 100644 functions_u.html create mode 100644 functions_v.html create mode 100644 hierarchy.html create mode 100644 index.html create mode 100644 jquery.js create mode 100644 logo.png create mode 100644 menu.js create mode 100644 menudata.js create mode 100644 namespacegoogle.html create mode 100644 namespacegrape.html create mode 100644 namespacegrape_1_1batch__shuffle__message__manager__impl.html create mode 100644 namespacemembers.html create mode 100644 namespacemembers_enum.html create mode 100644 namespacemembers_func.html create mode 100644 namespacemembers_type.html create mode 100644 namespaces.html create mode 100644 nav_f.png create mode 100644 nav_g.png create mode 100644 nav_h.png create mode 100644 open.png create mode 100644 search/all_0.html create mode 100644 search/all_0.js create mode 100644 search/all_1.html create mode 100644 search/all_1.js create mode 100644 search/all_10.html create mode 100644 search/all_10.js create mode 100644 search/all_11.html create mode 100644 search/all_11.js create mode 100644 search/all_12.html create mode 100644 search/all_12.js create mode 100644 search/all_13.html create mode 100644 search/all_13.js create mode 100644 search/all_14.html create mode 100644 search/all_14.js create mode 100644 search/all_15.html create mode 100644 search/all_15.js create mode 100644 search/all_16.html create mode 100644 search/all_16.js create mode 100644 search/all_2.html create mode 100644 search/all_2.js create mode 100644 search/all_3.html create mode 100644 search/all_3.js create mode 100644 search/all_4.html create mode 100644 search/all_4.js create mode 100644 search/all_5.html create mode 100644 search/all_5.js create mode 100644 search/all_6.html create mode 100644 search/all_6.js create mode 100644 search/all_7.html create mode 100644 search/all_7.js create mode 100644 search/all_8.html create mode 100644 search/all_8.js create mode 100644 search/all_9.html create mode 100644 search/all_9.js create mode 100644 search/all_a.html create mode 100644 search/all_a.js create mode 100644 search/all_b.html create mode 100644 search/all_b.js create mode 100644 search/all_c.html create mode 100644 search/all_c.js create mode 100644 search/all_d.html create mode 100644 search/all_d.js create mode 100644 search/all_e.html create mode 100644 search/all_e.js create mode 100644 search/all_f.html create mode 100644 search/all_f.js create mode 100644 search/classes_0.html create mode 100644 search/classes_0.js create mode 100644 search/classes_1.html create mode 100644 search/classes_1.js create mode 100644 search/classes_10.html create mode 100644 search/classes_10.js create mode 100644 search/classes_11.html create mode 100644 search/classes_11.js create mode 100644 search/classes_12.html create mode 100644 search/classes_12.js create mode 100644 search/classes_13.html create mode 100644 search/classes_13.js create mode 100644 search/classes_14.html create mode 100644 search/classes_14.js create mode 100644 search/classes_15.html create mode 100644 search/classes_15.js create mode 100644 search/classes_2.html create mode 100644 search/classes_2.js create mode 100644 search/classes_3.html create mode 100644 search/classes_3.js create mode 100644 search/classes_4.html create mode 100644 search/classes_4.js create mode 100644 search/classes_5.html create mode 100644 search/classes_5.js create mode 100644 search/classes_6.html create mode 100644 search/classes_6.js create mode 100644 search/classes_7.html create mode 100644 search/classes_7.js create mode 100644 search/classes_8.html create mode 100644 search/classes_8.js create mode 100644 search/classes_9.html create mode 100644 search/classes_9.js create mode 100644 search/classes_a.html create mode 100644 search/classes_a.js create mode 100644 search/classes_b.html create mode 100644 search/classes_b.js create mode 100644 search/classes_c.html create mode 100644 search/classes_c.js create mode 100644 search/classes_d.html create mode 100644 search/classes_d.js create mode 100644 search/classes_e.html create mode 100644 search/classes_e.js create mode 100644 search/classes_f.html create mode 100644 search/classes_f.js create mode 100644 search/close.svg create mode 100644 search/enums_0.html create mode 100644 search/enums_0.js create mode 100644 search/enums_1.html create mode 100644 search/enums_1.js create mode 100644 search/enumvalues_0.html create mode 100644 search/enumvalues_0.js create mode 100644 search/files_0.html create mode 100644 search/files_0.js create mode 100644 search/functions_0.html create mode 100644 search/functions_0.js create mode 100644 search/functions_1.html create mode 100644 search/functions_1.js create mode 100644 search/functions_2.html create mode 100644 search/functions_2.js create mode 100644 search/functions_3.html create mode 100644 search/functions_3.js create mode 100644 search/functions_4.html create mode 100644 search/functions_4.js create mode 100644 search/functions_5.html create mode 100644 search/functions_5.js create mode 100644 search/functions_6.html create mode 100644 search/functions_6.js create mode 100644 search/functions_7.html create mode 100644 search/functions_7.js create mode 100644 search/functions_8.html create mode 100644 search/functions_8.js create mode 100644 search/functions_9.html create mode 100644 search/functions_9.js create mode 100644 search/functions_a.html create mode 100644 search/functions_a.js create mode 100644 search/functions_b.html create mode 100644 search/functions_b.js create mode 100644 search/functions_c.html create mode 100644 search/functions_c.js create mode 100644 search/functions_d.html create mode 100644 search/functions_d.js create mode 100644 search/functions_e.html create mode 100644 search/functions_e.js create mode 100644 search/mag_sel.svg create mode 100644 search/namespaces_0.html create mode 100644 search/namespaces_0.js create mode 100644 search/nomatches.html create mode 100644 search/search.css create mode 100644 search/search.js create mode 100644 search/search_l.png create mode 100644 search/search_m.png create mode 100644 search/search_r.png create mode 100644 search/searchdata.js create mode 100644 search/typedefs_0.html create mode 100644 search/typedefs_0.js create mode 100644 splitbar.png create mode 100644 structcub_1_1Traits_3_01grape_1_1Vertex_3_01T_01_4_01_4.html create mode 100644 structcub_1_1Traits_3_01grape_1_1Vertex_3_01T_01_4_01_4.png create mode 100644 structgrape_1_1Array_1_1__ConstructTransaction-members.html create mode 100644 structgrape_1_1Array_1_1__ConstructTransaction.html create mode 100644 structgrape_1_1Array_1_1____Array__base-members.html create mode 100644 structgrape_1_1Array_1_1____Array__base.html create mode 100644 structgrape_1_1Array_1_1____Array__base.png create mode 100644 structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1____Array__base-members.html create mode 100644 structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1____Array__base.html create mode 100644 structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1____Array__base.png create mode 100644 structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1const__iterator-members.html create mode 100644 structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1const__iterator.html create mode 100644 structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1iterator-members.html create mode 100644 structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1iterator.html create mode 100644 structgrape_1_1AutoParallelMessageManager_1_1ap__event-members.html create mode 100644 structgrape_1_1AutoParallelMessageManager_1_1ap__event.html create mode 100644 structgrape_1_1DestList-members.html create mode 100644 structgrape_1_1DestList.html create mode 100644 structgrape_1_1Edge-members.html create mode 100644 structgrape_1_1Edge.html create mode 100644 structgrape_1_1Edge_3_01VID__T_00_01EmptyType_01_4-members.html create mode 100644 structgrape_1_1Edge_3_01VID__T_00_01EmptyType_01_4.html create mode 100644 structgrape_1_1EmptyType.html create mode 100644 structgrape_1_1IdHasher.html create mode 100644 structgrape_1_1IdHasher_3_01uint32__t_01_4-members.html create mode 100644 structgrape_1_1IdHasher_3_01uint32__t_01_4.html create mode 100644 structgrape_1_1IdHasher_3_01uint64__t_01_4-members.html create mode 100644 structgrape_1_1IdHasher_3_01uint64__t_01_4.html create mode 100644 structgrape_1_1IdenticalHasher.html create mode 100644 structgrape_1_1IdenticalHasher_3_01uint32__t_01_4-members.html create mode 100644 structgrape_1_1IdenticalHasher_3_01uint32__t_01_4.html create mode 100644 structgrape_1_1IdenticalHasher_3_01uint64__t_01_4-members.html create mode 100644 structgrape_1_1IdenticalHasher_3_01uint64__t_01_4.html create mode 100644 structgrape_1_1ImmutableEdgecutFragmentTraits-members.html create mode 100644 structgrape_1_1ImmutableEdgecutFragmentTraits.html create mode 100644 structgrape_1_1InternalOID-members.html create mode 100644 structgrape_1_1InternalOID.html create mode 100644 structgrape_1_1InternalOID_3_01std_1_1string_01_4-members.html create mode 100644 structgrape_1_1InternalOID_3_01std_1_1string_01_4.html create mode 100644 structgrape_1_1LoadGraphSpec-members.html create mode 100644 structgrape_1_1LoadGraphSpec.html create mode 100644 structgrape_1_1MessageBuffer-members.html create mode 100644 structgrape_1_1MessageBuffer.html create mode 100644 structgrape_1_1MessageBuffer.png create mode 100644 structgrape_1_1MicroBuffer-members.html create mode 100644 structgrape_1_1MicroBuffer.html create mode 100644 structgrape_1_1MutableEdgecutFragmentTraits-members.html create mode 100644 structgrape_1_1MutableEdgecutFragmentTraits.html create mode 100644 structgrape_1_1Mutation-members.html create mode 100644 structgrape_1_1Mutation.html create mode 100644 structgrape_1_1Nbr-members.html create mode 100644 structgrape_1_1Nbr.html create mode 100644 structgrape_1_1Nbr_3_01VID__T_00_01EmptyType_01_4-members.html create mode 100644 structgrape_1_1Nbr_3_01VID__T_00_01EmptyType_01_4.html create mode 100644 structgrape_1_1ParallelEngineSpec-members.html create mode 100644 structgrape_1_1ParallelEngineSpec.html create mode 100644 structgrape_1_1PrepareConf-members.html create mode 100644 structgrape_1_1PrepareConf.html create mode 100644 structgrape_1_1SerializedSize-members.html create mode 100644 structgrape_1_1SerializedSize.html create mode 100644 structgrape_1_1SerializedSize_3_01DeltaVarintEncoder_3_01T_01_4_01_4-members.html create mode 100644 structgrape_1_1SerializedSize_3_01DeltaVarintEncoder_3_01T_01_4_01_4.html create mode 100644 structgrape_1_1SerializedSize_3_01EmptyType_01_4-members.html create mode 100644 structgrape_1_1SerializedSize_3_01EmptyType_01_4.html create mode 100644 structgrape_1_1SerializedSize_3_01VarintEncoder_01_4-members.html create mode 100644 structgrape_1_1SerializedSize_3_01VarintEncoder_01_4.html create mode 100644 structgrape_1_1SerializedSize_3_01nonstd_1_1string__view_01_4-members.html create mode 100644 structgrape_1_1SerializedSize_3_01nonstd_1_1string__view_01_4.html create mode 100644 structgrape_1_1SerializedSize_3_01std_1_1string_01_4-members.html create mode 100644 structgrape_1_1SerializedSize_3_01std_1_1string_01_4.html create mode 100644 structgrape_1_1ShuffleBuffer-members.html create mode 100644 structgrape_1_1ShuffleBuffer.html create mode 100644 structgrape_1_1ShuffleBufferTuple-members.html create mode 100644 structgrape_1_1ShuffleBufferTuple.html create mode 100644 structgrape_1_1ShuffleBufferTuple_3_01First_01_4-members.html create mode 100644 structgrape_1_1ShuffleBufferTuple_3_01First_01_4.html create mode 100644 structgrape_1_1ShuffleBufferTuple__element.html create mode 100644 structgrape_1_1ShuffleBufferTuple__element_3_010_00_01ShuffleBufferTuple_3_01First_00_01Rest_8_8_8_01_4_01_4-members.html create mode 100644 structgrape_1_1ShuffleBufferTuple__element_3_010_00_01ShuffleBufferTuple_3_01First_00_01Rest_8_8_8_01_4_01_4.html create mode 100644 structgrape_1_1ShuffleBufferTuple__element_3_01index_00_01ShuffleBufferTuple_3_01First_00_01Tail_8_8_8_01_4_01_4.html create mode 100644 structgrape_1_1ShuffleBufferTuple__element_3_01index_00_01ShuffleBufferTuple_3_01First_00_01Tail_8_8_8_01_4_01_4.png create mode 100644 structgrape_1_1ShuffleBuffer_3_01nonstd_1_1string__view_01_4-members.html create mode 100644 structgrape_1_1ShuffleBuffer_3_01nonstd_1_1string__view_01_4.html create mode 100644 structgrape_1_1TerminateInfo-members.html create mode 100644 structgrape_1_1TerminateInfo.html create mode 100644 structgrape_1_1VarintUtil-members.html create mode 100644 structgrape_1_1VarintUtil.html create mode 100644 structgrape_1_1VarintUtil_3_01uint32__t_01_4-members.html create mode 100644 structgrape_1_1VarintUtil_3_01uint32__t_01_4.html create mode 100644 structgrape_1_1VarintUtil_3_01uint64__t_01_4-members.html create mode 100644 structgrape_1_1VarintUtil_3_01uint64__t_01_4.html create mode 100644 structgrape_1_1add__const__ref-members.html create mode 100644 structgrape_1_1add__const__ref.html create mode 100644 structgrape_1_1add__const__ref_3_01T_01_6_01_4-members.html create mode 100644 structgrape_1_1add__const__ref_3_01T_01_6_01_4.html create mode 100644 structgrape_1_1add__const__ref_3_01const_01T_01_6_01_4-members.html create mode 100644 structgrape_1_1add__const__ref_3_01const_01T_01_6_01_4.html create mode 100644 structgrape_1_1add__ref-members.html create mode 100644 structgrape_1_1add__ref.html create mode 100644 structgrape_1_1add__ref_3_01T_01_6_01_4-members.html create mode 100644 structgrape_1_1add__ref_3_01T_01_6_01_4.html create mode 100644 structgrape_1_1batch__shuffle__message__manager__impl_1_1ArchiveShuffle-members.html create mode 100644 structgrape_1_1batch__shuffle__message__manager__impl_1_1ArchiveShuffle.html create mode 100644 structgrape_1_1batch__shuffle__message__manager__impl_1_1IsRange-members.html create mode 100644 structgrape_1_1batch__shuffle__message__manager__impl_1_1IsRange.html create mode 100644 structgrape_1_1batch__shuffle__message__manager__impl_1_1PodShuffle-members.html create mode 100644 structgrape_1_1batch__shuffle__message__manager__impl_1_1PodShuffle.html create mode 100644 structgrape_1_1batch__shuffle__message__manager__impl_1_1ShuffleInplace-members.html create mode 100644 structgrape_1_1batch__shuffle__message__manager__impl_1_1ShuffleInplace.html create mode 100644 structgrape_1_1cuda_1_1CTAWorkScheduler-members.html create mode 100644 structgrape_1_1cuda_1_1CTAWorkScheduler.html create mode 100644 structgrape_1_1cuda_1_1IEvent-members.html create mode 100644 structgrape_1_1cuda_1_1IEvent.html create mode 100644 structgrape_1_1cuda_1_1IEvent.png create mode 100644 structgrape_1_1cuda_1_1IntervalRangeMarker-members.html create mode 100644 structgrape_1_1cuda_1_1IntervalRangeMarker.html create mode 100644 structgrape_1_1cuda_1_1IntervalRangeMarker.png create mode 100644 structgrape_1_1cuda_1_1Marker-members.html create mode 100644 structgrape_1_1cuda_1_1Marker.html create mode 100644 structgrape_1_1cuda_1_1RangeMarker-members.html create mode 100644 structgrape_1_1cuda_1_1RangeMarker.html create mode 100644 structgrape_1_1cuda_1_1RangeMarker.png create mode 100644 structgrape_1_1cuda_1_1VertexMetadata-members.html create mode 100644 structgrape_1_1cuda_1_1VertexMetadata.html create mode 100644 structgrape_1_1cuda_1_1VertexMetadata_3_01VID__T_00_01grape_1_1EmptyType_01_4-members.html create mode 100644 structgrape_1_1cuda_1_1VertexMetadata_3_01VID__T_00_01grape_1_1EmptyType_01_4.html create mode 100644 structgrape_1_1cuda_1_1WorkSourceArray-members.html create mode 100644 structgrape_1_1cuda_1_1WorkSourceArray.html create mode 100644 structgrape_1_1cuda_1_1WorkSourceRange-members.html create mode 100644 structgrape_1_1cuda_1_1WorkSourceRange.html create mode 100644 structgrape_1_1cuda_1_1empty__np.html create mode 100644 structgrape_1_1cuda_1_1np__local-members.html create mode 100644 structgrape_1_1cuda_1_1np__local.html create mode 100644 structgrape_1_1cuda_1_1tb__np-members.html create mode 100644 structgrape_1_1cuda_1_1tb__np.html create mode 100644 structgrape_1_1cuda_1_1warp__np-members.html create mode 100644 structgrape_1_1cuda_1_1warp__np.html create mode 100644 structgrape_1_1frag__shuffle__header-members.html create mode 100644 structgrape_1_1frag__shuffle__header.html create mode 100644 structgrape_1_1get__buffer__helper-members.html create mode 100644 structgrape_1_1get__buffer__helper.html create mode 100644 structgrape_1_1get__buffer__helper_3_010_00_01First_00_01Rest_8_8_8_01_4-members.html create mode 100644 structgrape_1_1get__buffer__helper_3_010_00_01First_00_01Rest_8_8_8_01_4.html create mode 100644 structgrape_1_1id__indexer__impl_1_1KeyBuffer-members.html create mode 100644 structgrape_1_1id__indexer__impl_1_1KeyBuffer.html create mode 100644 structgrape_1_1id__indexer__impl_1_1KeyBuffer_3_01nonstd_1_1string__view_01_4-members.html create mode 100644 structgrape_1_1id__indexer__impl_1_1KeyBuffer_3_01nonstd_1_1string__view_01_4.html create mode 100644 structgrape_1_1integer__sequence-members.html create mode 100644 structgrape_1_1integer__sequence.html create mode 100644 structgrape_1_1internal_1_1Vertex-members.html create mode 100644 structgrape_1_1internal_1_1Vertex.html create mode 100644 structgrape_1_1internal_1_1Vertex_3_01VID__T_00_01EmptyType_01_4-members.html create mode 100644 structgrape_1_1internal_1_1Vertex_3_01VID__T_00_01EmptyType_01_4.html create mode 100644 structgrape_1_1make__integer__sequence.html create mode 100644 structgrape_1_1make__integer__sequence_3_01T_00_010_00_01Is_8_8_8_01_4-members.html create mode 100644 structgrape_1_1make__integer__sequence_3_01T_00_010_00_01Is_8_8_8_01_4.html create mode 100644 structgrape_1_1make__integer__sequence_3_01T_00_010_00_01Is_8_8_8_01_4.png create mode 100644 structgrape_1_1mutable__csr__impl_1_1AdjList-members.html create mode 100644 structgrape_1_1mutable__csr__impl_1_1AdjList.html create mode 100644 structgrape_1_1sync__comm_1_1CommImpl-members.html create mode 100644 structgrape_1_1sync__comm_1_1CommImpl.html create mode 100644 structgrape_1_1sync__comm_1_1CommImpl_3_01IdIndexer_3_01OID__T_00_01VID__T_01_4_01_4-members.html create mode 100644 structgrape_1_1sync__comm_1_1CommImpl_3_01IdIndexer_3_01OID__T_00_01VID__T_01_4_01_4.html create mode 100644 structgrape_1_1sync__comm_1_1CommImpl_3_01InArchive_00_01void_01_4-members.html create mode 100644 structgrape_1_1sync__comm_1_1CommImpl_3_01InArchive_00_01void_01_4.html create mode 100644 structgrape_1_1sync__comm_1_1CommImpl_3_01OutArchive_00_01void_01_4-members.html create mode 100644 structgrape_1_1sync__comm_1_1CommImpl_3_01OutArchive_00_01void_01_4.html create mode 100644 structgrape_1_1sync__comm_1_1CommImpl_3_01StringViewVector_00_01void_01_4-members.html create mode 100644 structgrape_1_1sync__comm_1_1CommImpl_3_01StringViewVector_00_01void_01_4.html create mode 100644 structgrape_1_1sync__comm_1_1CommImpl_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__pode5fa600bd20ba7ca5d785a935cc31699.html create mode 100644 structgrape_1_1sync__comm_1_1CommImpl_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__pode6dff351d91a6e3b33b0af04b848cf91.html create mode 100644 structgrape_1_1sync__comm_1_1CommImpl_3_01std_1_1vector_3_01T_01_4_00_01typename_01std_1_1enable2a9ea80b9ef55b079f3ffd5acf231cc0.html create mode 100644 structgrape_1_1sync__comm_1_1CommImpl_3_01std_1_1vector_3_01T_01_4_00_01typename_01std_1_1enable5716673ed5b278549fa76606b2611c4b.html create mode 100644 structgrape_1_1sync__comm_1_1CommImpl_3_01std_1_1vector_3_01T_01_4_00_01typename_01std_1_1enablec0367c4b99ee92a0913180271fe39555.html create mode 100644 structgrape_1_1sync__comm_1_1CommImpl_3_01std_1_1vector_3_01T_01_4_00_01typename_01std_1_1enablefbdb3f21ced368a4a4b248c9347984b5.html create mode 100644 structstd_1_1hash_3_01grape_1_1Vertex_3_01T_01_4_01_4-members.html create mode 100644 structstd_1_1hash_3_01grape_1_1Vertex_3_01T_01_4_01_4.html create mode 100644 sync_off.png create mode 100644 sync_on.png create mode 100644 tab_a.png create mode 100644 tab_b.png create mode 100644 tab_h.png create mode 100644 tab_s.png create mode 100644 tabs.css create mode 100644 uniongrape_1_1cuda_1_1np__shared-members.html create mode 100644 uniongrape_1_1cuda_1_1np__shared.html diff --git a/annotated.html b/annotated.html new file mode 100644 index 00000000..f3860946 --- /dev/null +++ b/annotated.html @@ -0,0 +1,323 @@ + + + + + + + +libgrape-lite: Class List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
+
Class List
+
+
+
Here are the classes, structs, unions and interfaces with brief descriptions:
+
[detail level 1234]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 Ncub
 Ngrape
 Nstd
 CThreadPool
+
+
+ + + + diff --git a/atomic__ops_8h.html b/atomic__ops_8h.html new file mode 100644 index 00000000..4f0d700b --- /dev/null +++ b/atomic__ops_8h.html @@ -0,0 +1,137 @@ + + + + + + + +libgrape-lite: /home/runner/work/libgrape-lite/libgrape-lite/grape/utils/atomic_ops.h File Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
atomic_ops.h File Reference
+
+
+
#include <stdint.h>
+
+ + + +

+Namespaces

 grape
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Functions

template<typename T >
bool grape::atomic_compare_and_swap (T &val, T old_val, T new_val)
 Atomic compare and swap operation. Equavalent to: More...
 
+template<>
bool grape::atomic_compare_and_swap (float &val, float old_val, float new_val)
 
+template<>
bool grape::atomic_compare_and_swap (double &val, double old_val, double new_val)
 
template<typename T >
bool grape::atomic_min (T &a, T b)
 Atomic compare and store the minimum value. Equavalent to: More...
 
template<typename T >
void grape::atomic_add (T &a, T b)
 Atomic add a value. Equavalent to: More...
 
+template<>
void grape::atomic_add (float &a, float b)
 
+template<>
void grape::atomic_add (double &a, double b)
 
template<typename T >
void grape::atomic_sub (T &a, T b)
 Atomic sub a value. Equavalent to: More...
 
+template<>
void grape::atomic_sub (float &a, float b)
 
+template<>
void grape::atomic_sub (double &a, double b)
 
+

Detailed Description

+

Copyright 2020 Alibaba Group Holding Limited.

+

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0
+

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

+

Some atomic instructions.

+
+ + + + diff --git a/bc_s.png b/bc_s.png new file mode 100644 index 0000000000000000000000000000000000000000..224b29aa9847d5a4b3902efd602b7ddf7d33e6c2 GIT binary patch literal 676 zcmV;V0$crwP)y__>=_9%My z{n931IS})GlGUF8K#6VIbs%684A^L3@%PlP2>_sk`UWPq@f;rU*V%rPy_ekbhXT&s z(GN{DxFv}*vZp`F>S!r||M`I*nOwwKX+BC~3P5N3-)Y{65c;ywYiAh-1*hZcToLHK ztpl1xomJ+Yb}K(cfbJr2=GNOnT!UFA7Vy~fBz8?J>XHsbZoDad^8PxfSa0GDgENZS zuLCEqzb*xWX2CG*b&5IiO#NzrW*;`VC9455M`o1NBh+(k8~`XCEEoC1Ybwf;vr4K3 zg|EB<07?SOqHp9DhLpS&bzgo70I+ghB_#)K7H%AMU3v}xuyQq9&Bm~++VYhF09a+U zl7>n7Jjm$K#b*FONz~fj;I->Bf;ule1prFN9FovcDGBkpg>)O*-}eLnC{6oZHZ$o% zXKW$;0_{8hxHQ>l;_*HATI(`7t#^{$(zLe}h*mqwOc*nRY9=?Sx4OOeVIfI|0V(V2 zBrW#G7Ss9wvzr@>H*`r>zE z+e8bOBgqIgldUJlG(YUDviMB`9+DH8n-s9SXRLyJHO1!=wY^79WYZMTa(wiZ!zP66 zA~!21vmF3H2{ngD;+`6j#~6j;$*f*G_2ZD1E;9(yaw7d-QnSCpK(cR1zU3qU0000< KMNUMnLSTYoA~SLT literal 0 HcmV?d00001 diff --git a/bdwn.png b/bdwn.png new file mode 100644 index 0000000000000000000000000000000000000000..940a0b950443a0bb1b216ac03c45b8a16c955452 GIT binary patch literal 147 zcmeAS@N?(olHy`uVBq!ia0vp^>_E)H!3HEvS)PKZC{Gv1kP61Pb5HX&C2wk~_T + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+
+
ThreadPool Member List
+
+
+ +

This is the complete list of members for ThreadPool, including all inherited members.

+ + + + + + + + + + + + + + + +
condition (defined in ThreadPool)ThreadPoolprivate
enqueue(F &&f, Args &&... args) -> std::future< grape::result_of_t< F, Args... >> (defined in ThreadPool)ThreadPool
GetThreadNum() (defined in ThreadPool)ThreadPoolinline
InitThreadPool(const grape::ParallelEngineSpec &) (defined in ThreadPool)ThreadPoolinline
operator=(ThreadPool const &)=delete (defined in ThreadPool)ThreadPool
queue_mutex (defined in ThreadPool)ThreadPoolprivate
stop (defined in ThreadPool)ThreadPoolprivate
tasks (defined in ThreadPool)ThreadPoolprivate
thread_num_ (defined in ThreadPool)ThreadPoolprivate
ThreadPool(ThreadPool const &)=delete (defined in ThreadPool)ThreadPool
ThreadPool() (defined in ThreadPool)ThreadPoolinline
WaitEnd(std::vector< std::future< void >> &results) (defined in ThreadPool)ThreadPoolinline
workers (defined in ThreadPool)ThreadPoolprivate
~ThreadPool() (defined in ThreadPool)ThreadPoolinline
+ + + + diff --git a/classThreadPool.html b/classThreadPool.html new file mode 100644 index 00000000..b7a7735f --- /dev/null +++ b/classThreadPool.html @@ -0,0 +1,136 @@ + + + + + + + +libgrape-lite: ThreadPool Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ +
+
+ +
+
ThreadPool Class Reference
+
+
+ +

#include <thread_pool.h>

+ + + + + + + + + + + + + + + +

+Public Member Functions

ThreadPool (ThreadPool const &)=delete
 
+ThreadPooloperator= (ThreadPool const &)=delete
 
+void InitThreadPool (const grape::ParallelEngineSpec &)
 
+template<class F , class... Args>
auto enqueue (F &&f, Args &&... args) -> std::future< grape::result_of_t< F, Args... >>
 
+int GetThreadNum ()
 
+void WaitEnd (std::vector< std::future< void >> &results)
 
+ + + + + + + + + + + + + +

+Private Attributes

+std::vector< std::thread > workers
 
+std::queue< std::function< void()> > tasks
 
+std::mutex queue_mutex
 
+std::condition_variable condition
 
+bool stop {false}
 
+size_t thread_num_ {1}
 
+

Detailed Description

+

Credits to Jakob Progsch (@progschj) https://github.com/progschj/ThreadPool

+

Copyright (c) 2012 Jakob Progsch, Václav Zeman

+

This software is provided 'as-is', without any express or implied warranty. In no event will the authors be held liable for any damages arising from the use of this software.

+

Permission is granted to anyone to use this software for any purpose, including commercial applications, and to alter it and redistribute it freely, subject to the following restrictions:

+
    +
  1. The origin of this software must not be misrepresented; you must not claim that you wrote the original software. If you use this software in a product, an acknowledgment in the product documentation would be appreciated but is not required.
  2. +
  3. Altered source versions must be plainly marked as such, and must not be misrepresented as being the original software.
  4. +
  5. This notice may not be removed or altered from any source distribution.
  6. +
+

Modified by Binrui Li at Alibaba Group, 2021.

+
+ + + + diff --git a/classes.html b/classes.html new file mode 100644 index 00000000..bdf613b6 --- /dev/null +++ b/classes.html @@ -0,0 +1,144 @@ + + + + + + + +libgrape-lite: Class Index + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
+
Class Index
+
+
+
A | B | C | D | E | F | G | H | I | K | L | M | N | O | P | Q | R | S | T | V | W | _
+
+
+
A
+
add_const_ref (grape)
add_const_ref< const T & > (grape)
add_const_ref< T & > (grape)
add_ref (grape)
add_ref< T & > (grape)
AdjList (grape)
AdjList (grape::mutable_csr_impl)
AutoParallelMessageManager::ap_event (grape)
ArchiveShuffle (grape::batch_shuffle_message_manager_impl)
Array (grape)
Array< EmptyType, _Alloc > (grape)
ArrayView (grape::cuda)
AutoAppBase (grape)
AutoParallelMessageManager (grape)
+
+
B
+
BasicFragmentLoader (grape)
BasicFragmentMutator (grape)
BatchShuffleAppBase (grape)
BatchShuffleAppBase (grape::cuda)
BatchShuffleMessageManager (grape)
BatchShuffleMessageManager (grape::cuda)
Bitset (grape)
Bitset (grape::cuda)
Bitset (grape::cuda::dev)
Bitset< uint32_t > (grape::cuda::dev)
Bitset< uint64_t > (grape::cuda::dev)
Blob (grape::mutable_csr_impl)
BlockingQueue (grape)
+
+
C
+
CommImpl (grape::sync_comm)
CommImpl< IdIndexer< OID_T, VID_T > > (grape::sync_comm)
CommImpl< InArchive, void > (grape::sync_comm)
CommImpl< OutArchive, void > (grape::sync_comm)
CommImpl< std::vector< T >, typename std::enable_if< std::is_pod< T >::value >::type > (grape::sync_comm)
CommImpl< std::vector< T >, typename std::enable_if<!std::is_pod< T >::value >::type > (grape::sync_comm)
CommImpl< StringViewVector, void > (grape::sync_comm)
CommImpl< T, typename std::enable_if< std::is_pod< T >::value >::type > (grape::sync_comm)
CommSpec (grape)
Communicator (grape)
Communicator (grape::cuda)
AdjList::const_iterator (grape)
FilterConstAdjList::const_iterator (grape)
FilterAdjList::const_iterator (grape)
ConstAdjList::const_iterator (grape)
Array< EmptyType, _Alloc >::const_iterator (grape)
ConstAdjList (grape)
ContextBase (grape)
COOFragment (grape::cuda)
COOFragment (grape::cuda::dev)
CSREdgecutFragmentBase (grape)
CTAWorkScheduler (grape::cuda)
+
+
D
+
DefaultAllocator (grape)
DefaultMessageManager (grape)
DeltaVarintDecoder (grape)
DeltaVarintEncoder (grape)
DeMutableCSR (grape)
DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > > (grape)
DeMutableCSRBuilder (grape)
DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > > (grape)
DenseVertexSet (grape::cuda::dev)
DenseVertexSet (grape)
DenseVertexSet (grape::cuda)
DenseVertexSet< DualVertexRange< VID_T > > (grape)
DenseVertexSet< VertexRange< VID_T > > (grape)
DenseVertexSet< VertexVector< VID_T > > (grape)
DestList (grape)
DeviceBuffer (grape::cuda)
DeviceFragment (grape::cuda::dev)
DualVertexRange (grape)
+
+
E
+
Edge (grape)
Edge< VID_T, EmptyType > (grape)
EdgecutFragmentBase (grape)
empty_np (grape::cuda)
EmptyType (grape)
Event (grape::cuda)
EventHolder (grape::cuda)
EVFragmentLoader (grape)
EVFragmentMutator (grape)
EVFragmentRebalanceLoader (grape)
+
+
F
+
FilterAdjList (grape)
FilterConstAdjList (grape)
FixedInArchive (grape)
frag_shuffle_header (grape)
FragmentBase (grape)
+
+
G
+
get_buffer_helper (grape)
get_buffer_helper< 0, First, Rest... > (grape)
GlobalVertexMap (grape)
GlobalVertexMapBuilder (grape)
GPUAppBase (grape::cuda)
GPUBatchShuffleWorker (grape::cuda)
GPUMessageManager (grape::cuda)
GPUWorker (grape::cuda)
+
+
H
+
hash< grape::Vertex< T > > (std)
HashPartitioner (grape)
HashPartitioner< std::string > (grape)
HostFragment (grape::cuda)
+
+
I
+
IdenticalHasher (grape)
IdenticalHasher< uint32_t > (grape)
IdenticalHasher< uint64_t > (grape)
IdHasher (grape)
IdHasher< uint32_t > (grape)
IdHasher< uint64_t > (grape)
IdIndexer (grape)
IdParser (grape)
IEvent (grape::cuda)
ImmutableCSR (grape)
ImmutableCSRBuild (grape)
ImmutableCSRStreamBuilder (grape)
ImmutableEdgecutFragment (grape)
ImmutableEdgecutFragmentTraits (grape)
InArchive (grape::cuda)
InArchive (grape)
InArchive (grape::cuda::dev)
InArchiveGroup (grape::cuda)
integer_sequence (grape)
InternalOID (grape)
InternalOID< std::string > (grape)
IntervalRangeMarker (grape::cuda)
IOAdaptorBase (grape)
IsRange (grape::batch_shuffle_message_manager_impl)
ISyncBuffer (grape)
AdjList::iterator (grape)
Array< EmptyType, _Alloc >::iterator (grape)
DualVertexRange::iterator (grape)
FilterAdjList::iterator (grape)
VertexRange::iterator (grape)
IteratorPair (grape)
+
+
K
+
KeyBuffer (grape::id_indexer_impl)
KeyBuffer< nonstd::string_view > (grape::id_indexer_impl)
+
+
L
+
LineParserBase (grape)
LoadGraphSpec (grape)
LocalIOAdaptor (grape)
LocalVertexMap (grape)
LocalVertexMapBuilder (grape)
+
+
M
+
make_integer_sequence (grape)
make_integer_sequence< T, 0, Is... > (grape)
Marker (grape::cuda)
MessageBuffer (grape)
MessageBufferPool (grape)
MessageInBuffer (grape)
MessageManager (grape::cuda::dev)
MessageManagerBase (grape)
MFLCounter (grape::cuda::dev)
MicroBuffer (grape)
MutableCSR (grape)
MutableCSR< VID_T, Nbr< VID_T, EDATA_T > > (grape)
MutableCSRBuilder (grape)
MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > > (grape)
MutableEdgecutFragment (grape)
MutableEdgecutFragmentTraits (grape)
Mutation (grape)
MutationContext (grape)
+
+
N
+
Nbr (grape)
Nbr< VID_T, EmptyType > (grape)
NonblockingQueue (grape)
np_local (grape::cuda)
np_shared (grape::cuda)
+
+
O
+
OutArchive (grape::cuda::dev)
OutArchive (grape::cuda)
OutArchive (grape)
OutArchiveGroup (grape::cuda)
+
+
P
+
ParallelAppBase (grape)
ParallelEngine (grape::cuda)
ParallelEngine (grape)
ParallelEngineSpec (grape)
ParallelMessageManager (grape)
ParallelMessageManagerOpt (grape)
PodShuffle (grape::batch_shuffle_message_manager_impl)
PostProcess (grape::batch_shuffle_message_manager_impl)
PostProcessBase (grape::batch_shuffle_message_manager_impl)
PrepareConf (grape)
+
+
Q
+
Queue (grape::cuda::dev)
Queue (grape::cuda)
Queue< T, uint32_t > (grape::cuda::dev)
Queue< T, uint64_t > (grape::cuda::dev)
+
+
R
+
RangeMarker (grape::cuda)
RefBitset (grape)
+
+
S
+
SegmentedPartitioner (grape)
SegmentedPartitioner< std::string > (grape)
SerializedSize (grape)
SerializedSize< DeltaVarintEncoder< T > > (grape)
SerializedSize< EmptyType > (grape)
SerializedSize< nonstd::string_view > (grape)
SerializedSize< std::string > (grape)
SerializedSize< VarintEncoder > (grape)
SharedArray (grape::cuda)
SharedValue (grape::cuda)
ShmHashTable (grape::cuda::dev)
ShuffleBuffer (grape)
ShuffleBuffer< nonstd::string_view > (grape)
ShuffleBufferTuple (grape)
ShuffleBufferTuple< First > (grape)
ShuffleBufferTuple_element (grape)
ShuffleBufferTuple_element< 0, ShuffleBufferTuple< First, Rest... > > (grape)
ShuffleBufferTuple_element< index, ShuffleBufferTuple< First, Tail... > > (grape)
ShuffleIn (grape)
ShuffleInplace (grape::batch_shuffle_message_manager_impl)
ShuffleOut (grape)
SpinLock (grape)
Stream (grape::cuda)
StringViewVector (grape)
SyncBuffer (grape)
+
+
T
+
tb_np (grape::cuda)
TerminateInfo (grape)
ThreadLocalMessageBuffer (grape)
ThreadLocalMessageBufferOpt (grape)
ThreadPool
Traits< grape::Vertex< T > > (cub)
TSVLineParser (grape)
+
+
V
+
VarintDecoder (grape)
VarintEncoder (grape)
VarintUtil (grape)
VarintUtil< uint32_t > (grape)
VarintUtil< uint64_t > (grape)
Vertex (grape::internal)
Vertex (grape)
Vertex< VID_T, EmptyType > (grape::internal)
VertexArray (grape::cuda)
VertexArray (grape)
VertexArray (grape::cuda::dev)
VertexArray< DualVertexRange< VID_T >, T > (grape)
VertexArray< VertexRange< VID_T >, T > (grape)
VertexDataContext (grape)
VertexMapBase (grape)
VertexMetadata (grape::cuda)
VertexMetadata< VID_T, grape::EmptyType > (grape::cuda)
VertexRange (grape)
VoidContext (grape)
+
+
W
+
warp_np (grape::cuda)
Worker (grape)
WorkerIterator (grape::sync_comm)
WorkSourceArray (grape::cuda)
WorkSourceRange (grape::cuda)
+
+
_
+
Array::__Array_base (grape)
Array< EmptyType, _Alloc >::__Array_base (grape)
Array::_ConstructTransaction (grape)
+
+
+ + + + diff --git a/classgrape_1_1AdjList-members.html b/classgrape_1_1AdjList-members.html new file mode 100644 index 00000000..a1503341 --- /dev/null +++ b/classgrape_1_1AdjList-members.html @@ -0,0 +1,100 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::AdjList< VID_T, EDATA_T > Member List
+
+
+ +

This is the complete list of members for grape::AdjList< VID_T, EDATA_T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
AdjList() (defined in grape::AdjList< VID_T, EDATA_T >)grape::AdjList< VID_T, EDATA_T >inline
AdjList(NbrT *b, NbrT *e) (defined in grape::AdjList< VID_T, EDATA_T >)grape::AdjList< VID_T, EDATA_T >inline
begin() (defined in grape::AdjList< VID_T, EDATA_T >)grape::AdjList< VID_T, EDATA_T >inline
begin() const (defined in grape::AdjList< VID_T, EDATA_T >)grape::AdjList< VID_T, EDATA_T >inline
begin_ (defined in grape::AdjList< VID_T, EDATA_T >)grape::AdjList< VID_T, EDATA_T >private
begin_pointer() (defined in grape::AdjList< VID_T, EDATA_T >)grape::AdjList< VID_T, EDATA_T >inline
begin_pointer() const (defined in grape::AdjList< VID_T, EDATA_T >)grape::AdjList< VID_T, EDATA_T >inline
Empty() const (defined in grape::AdjList< VID_T, EDATA_T >)grape::AdjList< VID_T, EDATA_T >inline
empty() const (defined in grape::AdjList< VID_T, EDATA_T >)grape::AdjList< VID_T, EDATA_T >inline
end() (defined in grape::AdjList< VID_T, EDATA_T >)grape::AdjList< VID_T, EDATA_T >inline
end() const (defined in grape::AdjList< VID_T, EDATA_T >)grape::AdjList< VID_T, EDATA_T >inline
end_ (defined in grape::AdjList< VID_T, EDATA_T >)grape::AdjList< VID_T, EDATA_T >private
end_pointer() (defined in grape::AdjList< VID_T, EDATA_T >)grape::AdjList< VID_T, EDATA_T >inline
end_pointer() const (defined in grape::AdjList< VID_T, EDATA_T >)grape::AdjList< VID_T, EDATA_T >inline
NbrT typedef (defined in grape::AdjList< VID_T, EDATA_T >)grape::AdjList< VID_T, EDATA_T >private
NotEmpty() const (defined in grape::AdjList< VID_T, EDATA_T >)grape::AdjList< VID_T, EDATA_T >inline
Size() const (defined in grape::AdjList< VID_T, EDATA_T >)grape::AdjList< VID_T, EDATA_T >inline
~AdjList() (defined in grape::AdjList< VID_T, EDATA_T >)grape::AdjList< VID_T, EDATA_T >inline
+ + + + diff --git a/classgrape_1_1AdjList.html b/classgrape_1_1AdjList.html new file mode 100644 index 00000000..232cdbf8 --- /dev/null +++ b/classgrape_1_1AdjList.html @@ -0,0 +1,167 @@ + + + + + + + +libgrape-lite: grape::AdjList< VID_T, EDATA_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::AdjList< VID_T, EDATA_T > Class Template Reference
+
+
+ +

A iteratable adjencent list of a vertex. The list contains all neighbors in format of Nbr, which contains the other Node and the data on the Edge. + More...

+ +

#include <adj_list.h>

+ + + + + + +

+Classes

class  const_iterator
 
class  iterator
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+DEV_HOST AdjList (NbrT *b, NbrT *e)
 
+DEV_HOST_INLINE bool Empty () const
 
+DEV_HOST_INLINE bool NotEmpty () const
 
+DEV_HOST_INLINE size_t Size () const
 
+DEV_HOST iterator begin ()
 
+DEV_HOST iterator end ()
 
+DEV_HOST const_iterator begin () const
 
+DEV_HOST const_iterator end () const
 
+DEV_HOST NbrTbegin_pointer ()
 
+DEV_HOST const NbrTbegin_pointer () const
 
+DEV_HOST NbrTend_pointer ()
 
+DEV_HOST const NbrTend_pointer () const
 
+DEV_HOST bool empty () const
 
+ + + +

+Private Types

+using NbrT = Nbr< VID_T, EDATA_T >
 
+ + + + + +

+Private Attributes

+NbrTbegin_
 
+NbrTend_
 
+

Detailed Description

+

template<typename VID_T, typename EDATA_T>
+class grape::AdjList< VID_T, EDATA_T >

+ +

A iteratable adjencent list of a vertex. The list contains all neighbors in format of Nbr, which contains the other Node and the data on the Edge.

+
Template Parameters
+ + + +
VID_T
EDATA_T
+
+
+
+ + + + diff --git a/classgrape_1_1AdjList_1_1const__iterator-members.html b/classgrape_1_1AdjList_1_1const__iterator-members.html new file mode 100644 index 00000000..27e1eb93 --- /dev/null +++ b/classgrape_1_1AdjList_1_1const__iterator-members.html @@ -0,0 +1,96 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::AdjList< VID_T, EDATA_T >::const_iterator Member List
+
+
+ +

This is the complete list of members for grape::AdjList< VID_T, EDATA_T >::const_iterator, including all inherited members.

+ + + + + + + + + + + + + + + +
const_iterator() noexcept (defined in grape::AdjList< VID_T, EDATA_T >::const_iterator)grape::AdjList< VID_T, EDATA_T >::const_iteratorinline
const_iterator(const pointer_type &c) noexcept (defined in grape::AdjList< VID_T, EDATA_T >::const_iterator)grape::AdjList< VID_T, EDATA_T >::const_iteratorinlineexplicit
current_ (defined in grape::AdjList< VID_T, EDATA_T >::const_iterator)grape::AdjList< VID_T, EDATA_T >::const_iteratorprivate
operator!=(const const_iterator &rhs) noexcept (defined in grape::AdjList< VID_T, EDATA_T >::const_iterator)grape::AdjList< VID_T, EDATA_T >::const_iteratorinline
operator*() const noexcept (defined in grape::AdjList< VID_T, EDATA_T >::const_iterator)grape::AdjList< VID_T, EDATA_T >::const_iteratorinline
operator+(size_t offset) noexcept (defined in grape::AdjList< VID_T, EDATA_T >::const_iterator)grape::AdjList< VID_T, EDATA_T >::const_iteratorinline
operator++() noexcept (defined in grape::AdjList< VID_T, EDATA_T >::const_iterator)grape::AdjList< VID_T, EDATA_T >::const_iteratorinline
operator++(int) noexcept (defined in grape::AdjList< VID_T, EDATA_T >::const_iterator)grape::AdjList< VID_T, EDATA_T >::const_iteratorinline
operator--() noexcept (defined in grape::AdjList< VID_T, EDATA_T >::const_iterator)grape::AdjList< VID_T, EDATA_T >::const_iteratorinline
operator--(int) noexcept (defined in grape::AdjList< VID_T, EDATA_T >::const_iterator)grape::AdjList< VID_T, EDATA_T >::const_iteratorinline
operator->() const noexcept (defined in grape::AdjList< VID_T, EDATA_T >::const_iterator)grape::AdjList< VID_T, EDATA_T >::const_iteratorinline
operator==(const const_iterator &rhs) noexcept (defined in grape::AdjList< VID_T, EDATA_T >::const_iterator)grape::AdjList< VID_T, EDATA_T >::const_iteratorinline
pointer_type typedef (defined in grape::AdjList< VID_T, EDATA_T >::const_iterator)grape::AdjList< VID_T, EDATA_T >::const_iteratorprivate
reference_type typedef (defined in grape::AdjList< VID_T, EDATA_T >::const_iterator)grape::AdjList< VID_T, EDATA_T >::const_iteratorprivate
+ + + + diff --git a/classgrape_1_1AdjList_1_1const__iterator.html b/classgrape_1_1AdjList_1_1const__iterator.html new file mode 100644 index 00000000..0e5522e6 --- /dev/null +++ b/classgrape_1_1AdjList_1_1const__iterator.html @@ -0,0 +1,133 @@ + + + + + + + +libgrape-lite: grape::AdjList< VID_T, EDATA_T >::const_iterator Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::AdjList< VID_T, EDATA_T >::const_iterator Class Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+DEV_HOST const_iterator (const pointer_type &c) noexcept
 
+DEV_HOST reference_type operator* () const noexcept
 
+DEV_HOST pointer_type operator-> () const noexcept
 
+DEV_HOST const_iteratoroperator++ () noexcept
 
+DEV_HOST const_iterator operator++ (int) noexcept
 
+DEV_HOST const_iteratoroperator-- () noexcept
 
+DEV_HOST const_iterator operator-- (int) noexcept
 
+DEV_HOST const_iterator operator+ (size_t offset) noexcept
 
+DEV_HOST bool operator== (const const_iterator &rhs) noexcept
 
+DEV_HOST bool operator!= (const const_iterator &rhs) noexcept
 
+ + + + + +

+Private Types

+using pointer_type = const NbrT *
 
+using reference_type = const NbrT &
 
+ + + +

+Private Attributes

+const NbrTcurrent_
 
+
+ + + + diff --git a/classgrape_1_1AdjList_1_1iterator-members.html b/classgrape_1_1AdjList_1_1iterator-members.html new file mode 100644 index 00000000..58012c1d --- /dev/null +++ b/classgrape_1_1AdjList_1_1iterator-members.html @@ -0,0 +1,96 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::AdjList< VID_T, EDATA_T >::iterator Member List
+
+
+ +

This is the complete list of members for grape::AdjList< VID_T, EDATA_T >::iterator, including all inherited members.

+ + + + + + + + + + + + + + + +
current_ (defined in grape::AdjList< VID_T, EDATA_T >::iterator)grape::AdjList< VID_T, EDATA_T >::iteratorprivate
iterator() noexcept (defined in grape::AdjList< VID_T, EDATA_T >::iterator)grape::AdjList< VID_T, EDATA_T >::iteratorinline
iterator(const pointer_type &c) noexcept (defined in grape::AdjList< VID_T, EDATA_T >::iterator)grape::AdjList< VID_T, EDATA_T >::iteratorinlineexplicit
operator!=(const iterator &rhs) noexcept (defined in grape::AdjList< VID_T, EDATA_T >::iterator)grape::AdjList< VID_T, EDATA_T >::iteratorinline
operator*() const noexcept (defined in grape::AdjList< VID_T, EDATA_T >::iterator)grape::AdjList< VID_T, EDATA_T >::iteratorinline
operator+(size_t offset) noexcept (defined in grape::AdjList< VID_T, EDATA_T >::iterator)grape::AdjList< VID_T, EDATA_T >::iteratorinline
operator++() noexcept (defined in grape::AdjList< VID_T, EDATA_T >::iterator)grape::AdjList< VID_T, EDATA_T >::iteratorinline
operator++(int) noexcept (defined in grape::AdjList< VID_T, EDATA_T >::iterator)grape::AdjList< VID_T, EDATA_T >::iteratorinline
operator--() noexcept (defined in grape::AdjList< VID_T, EDATA_T >::iterator)grape::AdjList< VID_T, EDATA_T >::iteratorinline
operator--(int) noexcept (defined in grape::AdjList< VID_T, EDATA_T >::iterator)grape::AdjList< VID_T, EDATA_T >::iteratorinline
operator->() const noexcept (defined in grape::AdjList< VID_T, EDATA_T >::iterator)grape::AdjList< VID_T, EDATA_T >::iteratorinline
operator==(const iterator &rhs) noexcept (defined in grape::AdjList< VID_T, EDATA_T >::iterator)grape::AdjList< VID_T, EDATA_T >::iteratorinline
pointer_type typedef (defined in grape::AdjList< VID_T, EDATA_T >::iterator)grape::AdjList< VID_T, EDATA_T >::iteratorprivate
reference_type typedef (defined in grape::AdjList< VID_T, EDATA_T >::iterator)grape::AdjList< VID_T, EDATA_T >::iteratorprivate
+ + + + diff --git a/classgrape_1_1AdjList_1_1iterator.html b/classgrape_1_1AdjList_1_1iterator.html new file mode 100644 index 00000000..71093184 --- /dev/null +++ b/classgrape_1_1AdjList_1_1iterator.html @@ -0,0 +1,133 @@ + + + + + + + +libgrape-lite: grape::AdjList< VID_T, EDATA_T >::iterator Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::AdjList< VID_T, EDATA_T >::iterator Class Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+DEV_HOST iterator (const pointer_type &c) noexcept
 
+DEV_HOST reference_type operator* () const noexcept
 
+DEV_HOST pointer_type operator-> () const noexcept
 
+DEV_HOST iteratoroperator++ () noexcept
 
+DEV_HOST iterator operator++ (int) noexcept
 
+DEV_HOST iteratoroperator-- () noexcept
 
+DEV_HOST iterator operator-- (int) noexcept
 
+DEV_HOST iterator operator+ (size_t offset) noexcept
 
+DEV_HOST bool operator== (const iterator &rhs) noexcept
 
+DEV_HOST bool operator!= (const iterator &rhs) noexcept
 
+ + + + + +

+Private Types

+using pointer_type = NbrT *
 
+using reference_type = NbrT &
 
+ + + +

+Private Attributes

+NbrTcurrent_
 
+
+ + + + diff --git a/classgrape_1_1Array-members.html b/classgrape_1_1Array-members.html new file mode 100644 index 00000000..bff03081 --- /dev/null +++ b/classgrape_1_1Array-members.html @@ -0,0 +1,132 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::Array< _Tp, _Alloc > Member List
+
+
+ +

This is the complete list of members for grape::Array< _Tp, _Alloc >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
__alloc() noexcept (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inlineprivate
__alloc() const noexcept (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inlineprivate
__alloc_traits typedef (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >
__base (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >private
__construct_at_end(size_type __n) (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inlineprivate
__construct_at_end(size_type __n, const_reference __x) (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inlineprivate
__construct_at_end(_ForwardIterator __first, _ForwardIterator __last, size_type __n) (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inlineprivate
__destruct_at_end(pointer __new_last) (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inlineprivate
__destruct_at_end(pointer __new_last, pointer __end) (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inlineprivate
__range_check(size_type __n) const noexcept (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inlineprivate
__vallocate(size_type __n) (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inlineprivate
__vdeallocate() (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inlineprivate
__vdeallocate(pointer __begin, size_type __size) (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inlineprivate
allocator_type typedef (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >
Array() noexcept (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inline
Array(const allocator_type &__a) noexcept (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inlineexplicit
Array(size_type __n, const allocator_type &__a=allocator_type()) (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inlineexplicit
Array(size_type __n, const value_type &__x, const allocator_type &__a=allocator_type()) (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inline
Array(const Array &__x) (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inline
Array(Array &&__x) noexcept (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inline
Array(const Array &__x, const allocator_type &__a) (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inline
Array(Array &&__x, const allocator_type &__a) (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inline
at(size_type __n) noexcept (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inline
at(size_type __n) const noexcept (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inline
begin() noexcept (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inline
begin() const noexcept (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inline
clear() noexcept (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inline
const_iterator typedef (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >
const_pointer typedef (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >
const_reference typedef (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >
data() noexcept (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inline
data() const noexcept (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inline
empty() const noexcept (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inline
end() noexcept (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inline
end() const noexcept (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inline
get_allocator() const noexcept (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inline
iterator typedef (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >
operator=(const Array &__x) (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inline
operator=(Array &&__x) (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inline
operator[](size_type __n) noexcept (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inline
operator[](size_type __n) const noexcept (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inline
pointer typedef (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >
reference typedef (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >
resize(size_type __new_size) (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inline
resize(size_type __new_size, const value_type &__x) (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inline
size() const noexcept (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inline
size_type typedef (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >
swap(Array &__x) noexcept (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inline
value_type typedef (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >
~Array() noexcept (defined in grape::Array< _Tp, _Alloc >)grape::Array< _Tp, _Alloc >inline
+ + + + diff --git a/classgrape_1_1Array.html b/classgrape_1_1Array.html new file mode 100644 index 00000000..4d997d74 --- /dev/null +++ b/classgrape_1_1Array.html @@ -0,0 +1,269 @@ + + + + + + + +libgrape-lite: grape::Array< _Tp, _Alloc > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::Array< _Tp, _Alloc > Class Template Reference
+
+
+ +

Array a std::vector-like container type without reserving memory. + More...

+ +

#include <gcontainer.h>

+ + + + + + +

+Classes

struct  __Array_base
 
struct  _ConstructTransaction
 
+ + + + + + + + + + + + + + + + + + + + + +

+Public Types

+using pointer = _Tp *
 
+using const_pointer = const _Tp *
 
+using reference = _Tp &
 
+using const_reference = const _Tp &
 
+using size_type = size_t
 
+using value_type = _Tp
 
+using allocator_type = _Alloc
 
+using iterator = pointer
 
+using const_iterator = const_pointer
 
+using __alloc_traits = std::allocator_traits< _Alloc >
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+allocator_type get_allocator () const noexcept
 
Array (const allocator_type &__a) noexcept
 
Array (size_type __n, const allocator_type &__a=allocator_type())
 
Array (size_type __n, const value_type &__x, const allocator_type &__a=allocator_type())
 
Array (const Array &__x)
 
Array (Array &&__x) noexcept
 
Array (const Array &__x, const allocator_type &__a)
 
Array (Array &&__x, const allocator_type &__a)
 
+Arrayoperator= (const Array &__x)
 
+Arrayoperator= (Array &&__x)
 
+size_type size () const noexcept
 
+void resize (size_type __new_size)
 
+void resize (size_type __new_size, const value_type &__x)
 
+bool empty () const noexcept
 
+reference operator[] (size_type __n) noexcept
 
+const_reference operator[] (size_type __n) const noexcept
 
+reference at (size_type __n) noexcept
 
+const_reference at (size_type __n) const noexcept
 
+pointer data () noexcept
 
+const_pointer data () const noexcept
 
+iterator begin () noexcept
 
+const_iterator begin () const noexcept
 
+iterator end () noexcept
 
+const_iterator end () const noexcept
 
+void swap (Array &__x) noexcept
 
+void clear () noexcept
 
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Private Member Functions

+allocator_type & __alloc () noexcept
 
+const allocator_type & __alloc () const noexcept
 
+void __vallocate (size_type __n)
 
+void __vdeallocate ()
 
+void __vdeallocate (pointer __begin, size_type __size)
 
+void __construct_at_end (size_type __n)
 
+void __construct_at_end (size_type __n, const_reference __x)
 
+template<class _ForwardIterator >
void __construct_at_end (_ForwardIterator __first, _ForwardIterator __last, size_type __n)
 
+void __destruct_at_end (pointer __new_last)
 
+void __destruct_at_end (pointer __new_last, pointer __end)
 
+void __range_check (size_type __n) const noexcept
 
+ + + +

+Private Attributes

+__Array_base __base
 
+

Detailed Description

+

template<typename _Tp, typename _Alloc = Allocator<_Tp>>
+class grape::Array< _Tp, _Alloc >

+ +

Array a std::vector-like container type without reserving memory.

+

Unlike std::array, Array is resizable, and unlike std::vector, Array takes exactly memory for elements without reserving spaces for further insertions.

+
Template Parameters
+ + + +
_TpType of elements in the array.
_AllocAllocator type that will be used for memory allocation.
+
+
+
+ + + + diff --git a/classgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4-members.html b/classgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4-members.html new file mode 100644 index 00000000..dffe2920 --- /dev/null +++ b/classgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4-members.html @@ -0,0 +1,123 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::Array< EmptyType, _Alloc > Member List
+
+
+ +

This is the complete list of members for grape::Array< EmptyType, _Alloc >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
__alloc() noexcept (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inlineprivate
__alloc() const noexcept (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inlineprivate
__base (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >private
__range_check(size_type __n) const noexcept (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inlineprivate
__size (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >private
__val (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >private
allocator_type typedef (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >
Array() noexcept (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inline
Array(const allocator_type &__a) noexcept (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inlineexplicit
Array(size_type __n, const allocator_type &__a=allocator_type()) (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inlineexplicit
Array(size_type __n, const value_type &__value, const allocator_type &__a=allocator_type()) (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inline
Array(const Array &__x) (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inline
Array(Array &&__x) noexcept (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inline
Array(const Array &__x, const allocator_type &__a) (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inline
Array(Array &&__x, const allocator_type &__m) (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inline
at(size_type __n) noexcept (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inline
at(size_type __n) const noexcept (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inline
begin() noexcept (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inline
begin() const noexcept (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inline
clear() noexcept (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inline
const_pointer typedef (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >
const_reference typedef (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >
data() noexcept (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inline
data() const noexcept (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inline
empty() const noexcept (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inline
end() noexcept (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inline
end() const noexcept (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inline
get_allocator() const noexcept (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inline
operator=(const Array &__x) (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inline
operator=(Array &&__x) (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inline
operator[](size_type) noexcept (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inline
operator[](size_type) const noexcept (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inline
pointer typedef (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >
reference typedef (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >
resize(size_type __new_size) (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inline
resize(size_type __new_size, const value_type &) (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inline
size() const noexcept (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inline
size_type typedef (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >
swap(Array &__x) noexcept (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inline
value_type typedef (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >
~Array() noexcept (defined in grape::Array< EmptyType, _Alloc >)grape::Array< EmptyType, _Alloc >inline
+ + + + diff --git a/classgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4.html b/classgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4.html new file mode 100644 index 00000000..426acd85 --- /dev/null +++ b/classgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4.html @@ -0,0 +1,241 @@ + + + + + + + +libgrape-lite: grape::Array< EmptyType, _Alloc > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::Array< EmptyType, _Alloc > Class Template Reference
+
+
+ +

Template specialization of Array for EmptyType, without consuming extra memory for EmptyType but provides same interfaces with Array of usual data types. + More...

+ +

#include <gcontainer.h>

+ + + + + + + + +

+Classes

struct  __Array_base
 
struct  const_iterator
 
struct  iterator
 
+ + + + + + + + + + + + + + + +

+Public Types

+using pointer = EmptyType *
 
+using const_pointer = const EmptyType *
 
+using reference = EmptyType &
 
+using const_reference = const EmptyType &
 
+using size_type = size_t
 
+using value_type = EmptyType
 
+using allocator_type = _Alloc
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+allocator_type get_allocator () const noexcept
 
Array (const allocator_type &__a) noexcept
 
Array (size_type __n, const allocator_type &__a=allocator_type())
 
Array (size_type __n, const value_type &__value, const allocator_type &__a=allocator_type())
 
Array (const Array &__x)
 
Array (Array &&__x) noexcept
 
Array (const Array &__x, const allocator_type &__a)
 
Array (Array &&__x, const allocator_type &__m)
 
+Arrayoperator= (const Array &__x)
 
+Arrayoperator= (Array &&__x)
 
+size_type size () const noexcept
 
+void resize (size_type __new_size)
 
+void resize (size_type __new_size, const value_type &)
 
+bool empty () const noexcept
 
+reference operator[] (size_type) noexcept
 
+const_reference operator[] (size_type) const noexcept
 
+reference at (size_type __n) noexcept
 
+const_reference at (size_type __n) const noexcept
 
+pointer data () noexcept
 
+const_pointer data () const noexcept
 
+iterator begin () noexcept
 
+const_iterator begin () const noexcept
 
+iterator end () noexcept
 
+const_iterator end () const noexcept
 
+void swap (Array &__x) noexcept
 
+void clear () noexcept
 
+ + + + + + + +

+Private Member Functions

+allocator_type & __alloc () noexcept
 
+const allocator_type & __alloc () const noexcept
 
+void __range_check (size_type __n) const noexcept
 
+ + + + + + + +

+Private Attributes

+__Array_base __base
 
+EmptyType __val
 
+size_type __size
 
+

Detailed Description

+

template<typename _Alloc>
+class grape::Array< EmptyType, _Alloc >

+ +

Template specialization of Array for EmptyType, without consuming extra memory for EmptyType but provides same interfaces with Array of usual data types.

+
Template Parameters
+ + +
_AllocAllocator type that will be used for memory allocation.
+
+
+
+ + + + diff --git a/classgrape_1_1AutoAppBase-members.html b/classgrape_1_1AutoAppBase-members.html new file mode 100644 index 00000000..234d15b8 --- /dev/null +++ b/classgrape_1_1AutoAppBase-members.html @@ -0,0 +1,91 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::AutoAppBase< FRAG_T, CONTEXT_T > Member List
+
+
+ +

This is the complete list of members for grape::AutoAppBase< FRAG_T, CONTEXT_T >, including all inherited members.

+ + + + + + + + + + +
AutoAppBase()=default (defined in grape::AutoAppBase< FRAG_T, CONTEXT_T >)grape::AutoAppBase< FRAG_T, CONTEXT_T >
IncEval(const FRAG_T &graph, CONTEXT_T &context)=0grape::AutoAppBase< FRAG_T, CONTEXT_T >pure virtual
load_strategy (defined in grape::AutoAppBase< FRAG_T, CONTEXT_T >)grape::AutoAppBase< FRAG_T, CONTEXT_T >static
message_manager_t typedef (defined in grape::AutoAppBase< FRAG_T, CONTEXT_T >)grape::AutoAppBase< FRAG_T, CONTEXT_T >
message_strategy (defined in grape::AutoAppBase< FRAG_T, CONTEXT_T >)grape::AutoAppBase< FRAG_T, CONTEXT_T >static
need_split_edges (defined in grape::AutoAppBase< FRAG_T, CONTEXT_T >)grape::AutoAppBase< FRAG_T, CONTEXT_T >static
need_split_edges_by_fragment (defined in grape::AutoAppBase< FRAG_T, CONTEXT_T >)grape::AutoAppBase< FRAG_T, CONTEXT_T >static
PEval(const FRAG_T &graph, CONTEXT_T &context)=0grape::AutoAppBase< FRAG_T, CONTEXT_T >pure virtual
~AutoAppBase()=default (defined in grape::AutoAppBase< FRAG_T, CONTEXT_T >)grape::AutoAppBase< FRAG_T, CONTEXT_T >virtual
+ + + + diff --git a/classgrape_1_1AutoAppBase.html b/classgrape_1_1AutoAppBase.html new file mode 100644 index 00000000..af34a41b --- /dev/null +++ b/classgrape_1_1AutoAppBase.html @@ -0,0 +1,258 @@ + + + + + + + +libgrape-lite: grape::AutoAppBase< FRAG_T, CONTEXT_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::AutoAppBase< FRAG_T, CONTEXT_T > Class Template Referenceabstract
+
+
+ +

AutoAppBase is a base class for auto-parallel apps. It contains an AutoParallelMessageManager to process messages implicitly during the computation. + More...

+ +

#include <auto_app_base.h>

+ + + + +

+Public Types

+using message_manager_t = AutoParallelMessageManager< FRAG_T >
 
+ + + + + + + +

+Public Member Functions

virtual void PEval (const FRAG_T &graph, CONTEXT_T &context)=0
 Partial evaluation to implement. More...
 
virtual void IncEval (const FRAG_T &graph, CONTEXT_T &context)=0
 Incremental evaluation to implement. More...
 
+ + + + + + + + + +

+Static Public Attributes

+static constexpr bool need_split_edges = false
 
+static constexpr bool need_split_edges_by_fragment = false
 
static constexpr MessageStrategy message_strategy
 
+static constexpr LoadStrategy load_strategy = LoadStrategy::kOnlyOut
 
+

Detailed Description

+

template<typename FRAG_T, typename CONTEXT_T>
+class grape::AutoAppBase< FRAG_T, CONTEXT_T >

+ +

AutoAppBase is a base class for auto-parallel apps. It contains an AutoParallelMessageManager to process messages implicitly during the computation.

+
Template Parameters
+ + + +
FRAG_T
CONTEXT_T
+
+
+

Member Function Documentation

+ +

◆ IncEval()

+ +
+
+
+template<typename FRAG_T , typename CONTEXT_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
virtual void grape::AutoAppBase< FRAG_T, CONTEXT_T >::IncEval (const FRAG_T & graph,
CONTEXT_T & context 
)
+
+pure virtual
+
+ +

Incremental evaluation to implement.

+
Note
: This pure virtual function works as an interface, instructing users to implement in the specific app. The IncEval in the inherited apps would be invoked directly, not via virtual functions.
+
Parameters
+ + + + +
graph
context
messages
+
+
+ +
+
+ +

◆ PEval()

+ +
+
+
+template<typename FRAG_T , typename CONTEXT_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
virtual void grape::AutoAppBase< FRAG_T, CONTEXT_T >::PEval (const FRAG_T & graph,
CONTEXT_T & context 
)
+
+pure virtual
+
+ +

Partial evaluation to implement.

+
Note
: This pure virtual function works as an interface, instructing users to implement in the specific app. The PEval in the inherited apps would be invoked directly, not via virtual functions.
+
Parameters
+ + + + +
graph
context
messages
+
+
+ +
+
+

Member Data Documentation

+ +

◆ message_strategy

+ +
+
+
+template<typename FRAG_T , typename CONTEXT_T >
+ + + + + +
+ + + + +
constexpr MessageStrategy grape::AutoAppBase< FRAG_T, CONTEXT_T >::message_strategy
+
+staticconstexpr
+
+Initial value: +
+
+
+ + + + diff --git a/classgrape_1_1AutoParallelMessageManager-members.html b/classgrape_1_1AutoParallelMessageManager-members.html new file mode 100644 index 00000000..1b43adc4 --- /dev/null +++ b/classgrape_1_1AutoParallelMessageManager-members.html @@ -0,0 +1,134 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::AutoParallelMessageManager< FRAG_T > Member List
+
+
+ +

This is the complete list of members for grape::AutoParallelMessageManager< FRAG_T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
aggregateAutoMessages() (defined in grape::AutoParallelMessageManager< FRAG_T >)grape::AutoParallelMessageManager< FRAG_T >inlineprivate
auto_parallel_events_ (defined in grape::AutoParallelMessageManager< FRAG_T >)grape::AutoParallelMessageManager< FRAG_T >private
AutoParallelMessageManager() (defined in grape::AutoParallelMessageManager< FRAG_T >)grape::AutoParallelMessageManager< FRAG_T >inline
Base typedef (defined in grape::AutoParallelMessageManager< FRAG_T >)grape::AutoParallelMessageManager< FRAG_T >private
comm_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
comm_spec_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
cur_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
DefaultMessageManager() (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerinline
fid() const (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerinlineprotected
fid_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
Finalize() overridegrape::AutoParallelMessageManager< FRAG_T >inlinevirtual
FinishARound() overridegrape::AutoParallelMessageManager< FRAG_T >inlinevirtual
fnum() const (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerinlineprotected
fnum_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
force_continue_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
force_terminate_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
ForceContinue() overridegrape::AutoParallelMessageManager< FRAG_T >inlinevirtual
ForceTerminate(const std::string &terminate_info) overridegrape::DefaultMessageManagerinlinevirtual
generateAutoMessages() (defined in grape::AutoParallelMessageManager< FRAG_T >)grape::AutoParallelMessageManager< FRAG_T >inlineprivate
GetMessage(MESSAGE_T &msg)grape::DefaultMessageManagerinline
GetMessage(const GRAPH_T &frag, typename GRAPH_T::vertex_t &v, MESSAGE_T &msg)grape::DefaultMessageManagerinline
GetMsgSize() const overridegrape::AutoParallelMessageManager< FRAG_T >inline
grape::DefaultMessageManager::GetMsgSize() const overridegrape::DefaultMessageManagerinlinevirtual
GetTerminateInfo() const overridegrape::DefaultMessageManagerinlinevirtual
Init(MPI_Comm comm) overridegrape::AutoParallelMessageManager< FRAG_T >inline
grape::DefaultMessageManager::Init(MPI_Comm comm) overridegrape::DefaultMessageManagerinlinevirtual
lengths_in_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
lengths_out_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
MessageManagerBase() (defined in grape::MessageManagerBase)grape::MessageManagerBaseinline
RegisterSyncBuffer(const FRAG_T &frag, ISyncBuffer *buffer, MessageStrategy strategy)grape::AutoParallelMessageManager< FRAG_T >inline
reqs_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
SendMsgThroughEdges(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)grape::DefaultMessageManagerinline
SendMsgThroughIEdges(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)grape::DefaultMessageManagerinline
SendMsgThroughOEdges(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)grape::DefaultMessageManagerinline
SendToFragment(fid_t dst_fid, const MESSAGE_T &msg)grape::DefaultMessageManagerinline
sent_size_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
Start() overridegrape::AutoParallelMessageManager< FRAG_T >inlinevirtual
StartARound() overridegrape::AutoParallelMessageManager< FRAG_T >inlinevirtual
syncLengths() (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerinlineprivate
syncOnInnerVertexSend(const FRAG_T &frag, ISyncBuffer *buffer, int event_id, MessageStrategy message_strategy) (defined in grape::AutoParallelMessageManager< FRAG_T >)grape::AutoParallelMessageManager< FRAG_T >inlineprivate
syncOnOuterVertexSend(const FRAG_T &frag, ISyncBuffer *buffer, int event_id) (defined in grape::AutoParallelMessageManager< FRAG_T >)grape::AutoParallelMessageManager< FRAG_T >inlineprivate
syncOnVertexRecv(const FRAG_T &frag, ISyncBuffer *buffer) (defined in grape::AutoParallelMessageManager< FRAG_T >)grape::AutoParallelMessageManager< FRAG_T >inlineprivate
SyncStateOnOuterVertex(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)grape::DefaultMessageManagerinline
terminate_info_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
to_recv_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
to_send_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprotected
to_terminate_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
ToTerminate() overridegrape::AutoParallelMessageManager< FRAG_T >inlinevirtual
vid_t typedef (defined in grape::AutoParallelMessageManager< FRAG_T >)grape::AutoParallelMessageManager< FRAG_T >private
~AutoParallelMessageManager() override (defined in grape::AutoParallelMessageManager< FRAG_T >)grape::AutoParallelMessageManager< FRAG_T >inline
~DefaultMessageManager() override (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerinline
~MessageManagerBase() (defined in grape::MessageManagerBase)grape::MessageManagerBaseinlinevirtual
+ + + + diff --git a/classgrape_1_1AutoParallelMessageManager.html b/classgrape_1_1AutoParallelMessageManager.html new file mode 100644 index 00000000..fe6a6268 --- /dev/null +++ b/classgrape_1_1AutoParallelMessageManager.html @@ -0,0 +1,309 @@ + + + + + + + +libgrape-lite: grape::AutoParallelMessageManager< FRAG_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::AutoParallelMessageManager< FRAG_T > Class Template Reference
+
+
+ +

A kind of message manager supporting auto parallelism. + More...

+ +

#include <auto_parallel_message_manager.h>

+
+Inheritance diagram for grape::AutoParallelMessageManager< FRAG_T >:
+
+
+ + +grape::DefaultMessageManager +grape::MessageManagerBase + +
+ + + + +

+Classes

struct  ap_event
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+void StartARound () override
 Inherit.
 
+void FinishARound () override
 Inherit.
 
void RegisterSyncBuffer (const FRAG_T &frag, ISyncBuffer *buffer, MessageStrategy strategy)
 Register a buffer to be sync automatically between rounds. More...
 
+void Init (MPI_Comm comm) override
 Inherit.
 
+void Start () override
 Inherit.
 
+bool ToTerminate () override
 Inherit.
 
+void Finalize () override
 Inherit.
 
+size_t GetMsgSize () const override
 Inherit.
 
+void ForceContinue () override
 Inherit.
 
- Public Member Functions inherited from grape::DefaultMessageManager
+void Init (MPI_Comm comm) override
 Inherit.
 
+void StartARound () override
 Inherit.
 
+void FinishARound () override
 Inherit.
 
+size_t GetMsgSize () const override
 Inherit.
 
+void ForceTerminate (const std::string &terminate_info) override
 Inherit.
 
+const TerminateInfoGetTerminateInfo () const override
 Inherit.
 
template<typename MESSAGE_T >
void SendToFragment (fid_t dst_fid, const MESSAGE_T &msg)
 Send message to a fragment. More...
 
template<typename GRAPH_T , typename MESSAGE_T >
void SyncStateOnOuterVertex (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)
 Communication by synchronizing the status on outer vertices, for edge-cut fragments. More...
 
template<typename GRAPH_T , typename MESSAGE_T >
void SendMsgThroughIEdges (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)
 Communication via a crossing edge a<-c. It sends message from a to c. More...
 
template<typename GRAPH_T , typename MESSAGE_T >
void SendMsgThroughOEdges (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)
 Communication via a crossing edge a->b. It sends message from a to b. More...
 
template<typename GRAPH_T , typename MESSAGE_T >
void SendMsgThroughEdges (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)
 Communication via crossing edges a->b and a<-c. It sends message from a to b and c. More...
 
template<typename MESSAGE_T >
bool GetMessage (MESSAGE_T &msg)
 Get a message from message buffer. More...
 
template<typename GRAPH_T , typename MESSAGE_T >
bool GetMessage (const GRAPH_T &frag, typename GRAPH_T::vertex_t &v, MESSAGE_T &msg)
 Get a message and its target vertex from message buffer. More...
 
+ + + + + +

+Private Types

+using Base = DefaultMessageManager
 
+using vid_t = typename FRAG_T::vid_t
 
+ + + + + + + + + + + + + + +

+Private Member Functions

+void aggregateAutoMessages ()
 
+void generateAutoMessages ()
 
+template<typename T >
void syncOnInnerVertexSend (const FRAG_T &frag, ISyncBuffer *buffer, int event_id, MessageStrategy message_strategy)
 
+template<typename T >
void syncOnOuterVertexSend (const FRAG_T &frag, ISyncBuffer *buffer, int event_id)
 
+template<typename T >
void syncOnVertexRecv (const FRAG_T &frag, ISyncBuffer *buffer)
 
+ + + +

+Private Attributes

+std::vector< ap_eventauto_parallel_events_
 
+ + + + + + + + + +

+Additional Inherited Members

- Protected Member Functions inherited from grape::DefaultMessageManager
+fid_t fid () const
 
+fid_t fnum () const
 
- Protected Attributes inherited from grape::DefaultMessageManager
+std::vector< InArchiveto_send_
 
+

Detailed Description

+

template<typename FRAG_T>
+class grape::AutoParallelMessageManager< FRAG_T >

+ +

A kind of message manager supporting auto parallelism.

+

After registering the vertex array and message strategy as a sync buffer, message generation and ingestion can be applied by message manager automatically.

+

Member Function Documentation

+ +

◆ RegisterSyncBuffer()

+ +
+
+
+template<typename FRAG_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void grape::AutoParallelMessageManager< FRAG_T >::RegisterSyncBuffer (const FRAG_T & frag,
ISyncBufferbuffer,
MessageStrategy strategy 
)
+
+inline
+
+ +

Register a buffer to be sync automatically between rounds.

+
Parameters
+ + + + +
frag
buffer
strategy
+
+
+ +
+
+
+ + + + diff --git a/classgrape_1_1AutoParallelMessageManager.png b/classgrape_1_1AutoParallelMessageManager.png new file mode 100644 index 0000000000000000000000000000000000000000..889e629851e469ca7ee050fdf2ba974c7912c3aa GIT binary patch literal 1570 zcmcJPe>~H99LK*SLfpl=M>&s@T7(OSnYtU@kbOPOYG_v$Jvw3&>B1cnhf69y`fi=f zufkTyLL%0(%TaO>Uo6H}k{=DDF^1XA{dL{H_qfmF@&3G@@5lT7$NTYqy+5Cf!#_+$Z22h0eYvd zlYL3%8(S6wVvt@KZUMbe)Z$(gXjTqFI1(N8YneHyr?4itEi|LFD7p%T1xS>IGTBpI z-XmVm!76Cpa1oseFM(4^EU#m3oN+(zcA@OTaFT6im756(`+DJ`MK!JB(xZr(dUiv> z{!*${M;8m7AJbmX%t;kVq@v9Y&(@hT?mu>jms6@5DmmA| z>2!l^W`{({c4{j}v09`&2aF^BicP@iqZlHWlLL0A;-5^QouAe0gU zvTgTIuDT3`d-aSLY`R!-3uQS{!<)<)>bmg^*@^;-XWhH|8UwqOl(=sXdqeZO*;@)x z$_9`CZGo65OB5O;;b~A=&JkZr7K+9A5#Tq>Y2bk@JOMDgPmb5nS%*^A{DvrRn#NKx zW5Z^M3E)V`gLs;T4oCpZ%5`_5(1^4$^W>b~|C0Qe$@H?^W65Id-U~7CJud%LbG_S- zE6hv9Noy&n6=NYBN(Fl?C_2~6Hm&}`rtO+8I8A^v50#*%qs-hPnWukmODkO4Ll9?{!KM}mip$HJ2yp+M z4>R6*OBEALg!koUF>zch==D3o3pq<(yc!AjejcfP7nilhjoax`gUO5I7F5zXTug*v z`m$Wkew7_?3X0D3^l4Jq#i{aA+sHXs(b$X(*>75ZI^Lpi^84mnXoQgFa{z4mV>@B` zImYOES(h{Bxq~IP8lz;f&p$l>pl645(}8qx5MlZzRQIe=1l6^?ETNaFH2*zFdzuxC zQN|#B1}r%R0=j%dwSprHUPJ()hEsKnA|Okxt7#7OzsS74Jx`9ncKUAi`Yll#G!JT2 z6F=P~%BxY0`nKqufaA4XLUYx*Qxluarq9hll;SWruoKNs>`U_- zXcWB^iu-y4oPjSSvfrk}GSMJgOVeQHiPSHBuuYDu*s%shpv^Y&@>>OAwZPa9*435m ztqR4;;D>N~k71X+{eIaao*1(}$;23~pDlD2poSeQXjHF6BK%nVP=?WrCDR9x%GCPt zZN6h~{kzen`J0oPizP<~rfJ8Yy>^#M2_3al)QX^BSx%s3f1abwaAgpBJGL>4)+Uq; zbJ!IVLnl|5O_l8&sD4@4?#Ok!S3dC0MVyawjm$v9L*2nY)e`0G>9YLF1!ZWb(TaRL z)V4A2Jy&~Wqrb%o?$^B*!}DQV-{b0o6L|TBaY3+=>Mbak>^1t<8 literal 0 HcmV?d00001 diff --git a/classgrape_1_1BasicFragmentLoader-members.html b/classgrape_1_1BasicFragmentLoader-members.html new file mode 100644 index 00000000..0263d334 --- /dev/null +++ b/classgrape_1_1BasicFragmentLoader-members.html @@ -0,0 +1,119 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T > Member List
+
+
+ +

This is the complete list of members for grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AddEdge(const oid_t &src, const oid_t &dst, const edata_t &data) (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >inline
AddVertex(const oid_t &id, const vdata_t &data) (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >inline
BasicFragmentLoader(const CommSpec &comm_spec) (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >inlineexplicit
comm_spec_ (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >private
ConstructFragment(std::shared_ptr< fragment_t > &fragment, bool directed) (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >inline
DeserializeFragment(std::shared_ptr< fragment_t > &fragment, const std::string &deserialization_prefix) (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >inline
edata_t typedef (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >private
edge_recv_thread_ (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >private
edge_tag (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >privatestatic
edgeRecvRoutine() (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >inline
edges_to_frag_ (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >private
existSerializationFile(const std::string &prefix) (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >inline
fragment_t typedef (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >private
got_edges_ (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >private
got_vertices_ (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >private
initOuterVertexData(std::shared_ptr< fragment_t > fragment) (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >inline
internal_oid_t typedef (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >private
load_strategy (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >privatestatic
oid_t typedef (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >private
partitioner_t typedef (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >private
processed_edges_ (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >private
processed_vertices_ (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >private
recv_thread_running_ (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >private
SerializeFragment(std::shared_ptr< fragment_t > &fragment, const std::string &serialization_prefix) (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >inline
SetPartitioner(const partitioner_t &partitioner) (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >inline
SetPartitioner(partitioner_t &&partitioner) (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >inline
Start() (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >inline
Stop() (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >inline
vdata_t typedef (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >private
vertex_map_t typedef (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >private
vertex_recv_thread_ (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >private
vertex_tag (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >privatestatic
vertexRecvRoutine() (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >inline
vertices_to_frag_ (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >private
vid_t typedef (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >private
vm_ptr_ (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >private
~BasicFragmentLoader() (defined in grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >)grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >inline
+ + + + diff --git a/classgrape_1_1BasicFragmentLoader.html b/classgrape_1_1BasicFragmentLoader.html new file mode 100644 index 00000000..c588de84 --- /dev/null +++ b/classgrape_1_1BasicFragmentLoader.html @@ -0,0 +1,206 @@ + + + + + + + +libgrape-lite: grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T > Class Template Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

BasicFragmentLoader (const CommSpec &comm_spec)
 
+void SetPartitioner (const partitioner_t &partitioner)
 
+void SetPartitioner (partitioner_t &&partitioner)
 
+void Start ()
 
+void Stop ()
 
+void AddVertex (const oid_t &id, const vdata_t &data)
 
+void AddEdge (const oid_t &src, const oid_t &dst, const edata_t &data)
 
+bool SerializeFragment (std::shared_ptr< fragment_t > &fragment, const std::string &serialization_prefix)
 
+bool existSerializationFile (const std::string &prefix)
 
+bool DeserializeFragment (std::shared_ptr< fragment_t > &fragment, const std::string &deserialization_prefix)
 
+void ConstructFragment (std::shared_ptr< fragment_t > &fragment, bool directed)
 
+void vertexRecvRoutine ()
 
+void edgeRecvRoutine ()
 
+void initOuterVertexData (std::shared_ptr< fragment_t > fragment)
 
+ + + + + + + + + + + + + + + + + +

+Private Types

+using fragment_t = FRAG_T
 
+using oid_t = typename fragment_t::oid_t
 
+using internal_oid_t = typename InternalOID< oid_t >::type
 
+using vid_t = typename fragment_t::vid_t
 
+using vdata_t = typename fragment_t::vdata_t
 
+using edata_t = typename fragment_t::edata_t
 
+using vertex_map_t = typename fragment_t::vertex_map_t
 
+using partitioner_t = typename vertex_map_t::partitioner_t
 
+ + + + + + + + + + + + + + + + + + + + + + + +

+Private Attributes

+CommSpec comm_spec_
 
+std::shared_ptr< vertex_map_t > vm_ptr_
 
+std::vector< ShuffleOut< internal_oid_t, vdata_t > > vertices_to_frag_
 
+std::vector< ShuffleOut< internal_oid_t, internal_oid_t, edata_t > > edges_to_frag_
 
+std::thread vertex_recv_thread_
 
+std::thread edge_recv_thread_
 
+bool recv_thread_running_
 
+std::vector< ShuffleBufferTuple< internal_oid_t, vdata_t > > got_vertices_
 
+std::vector< ShuffleBufferTuple< internal_oid_t, internal_oid_t, edata_t > > got_edges_
 
+std::vector< internal::Vertex< vid_t, vdata_t > > processed_vertices_
 
+std::vector< Edge< vid_t, edata_t > > processed_edges_
 
+ + + + + + + +

+Static Private Attributes

+static constexpr LoadStrategy load_strategy = fragment_t::load_strategy
 
+static constexpr int vertex_tag = 5
 
+static constexpr int edge_tag = 6
 
+
+ + + + diff --git a/classgrape_1_1BasicFragmentMutator-members.html b/classgrape_1_1BasicFragmentMutator-members.html new file mode 100644 index 00000000..6f4fd1b2 --- /dev/null +++ b/classgrape_1_1BasicFragmentMutator-members.html @@ -0,0 +1,143 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::BasicFragmentMutator< FRAG_T > Member List
+
+
+ +

This is the complete list of members for grape::BasicFragmentMutator< FRAG_T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AddEdge(const internal_oid_t &src, const internal_oid_t &dst, const edata_t &data) (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >inline
AddEdges(std::vector< typename ShuffleBuffer< internal_oid_t >::type > &&src_lists, std::vector< typename ShuffleBuffer< internal_oid_t >::type > &&dst_lists, std::vector< typename ShuffleBuffer< edata_t >::type > &&data_lists) (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >inline
AddVertex(const internal_oid_t &id, const vdata_t &data) (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >inline
AddVertices(std::vector< typename ShuffleBuffer< internal_oid_t >::type > &&id_lists, std::vector< typename ShuffleBuffer< vdata_t >::type > &&data_lists) (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >inline
AddVerticesToRemove(const std::vector< vid_t > &id_vec) (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >inline
AddVerticesToRemove(std::vector< vid_t > &&id_vec) (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >inline
AddVerticesToUpdate(const std::vector< internal::Vertex< vid_t, vdata_t >> &v_vec) (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >inline
AddVerticesToUpdate(std::vector< internal::Vertex< vid_t, vdata_t >> &&v_vec) (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >inline
BasicFragmentMutator(const CommSpec &comm_spec, std::shared_ptr< fragment_t > fragment) (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >inlineexplicit
comm_spec_ (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
ea_tag (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >privatestatic
edata_t typedef (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
edges_to_add_ (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
edges_to_remove_ (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
edges_to_update_ (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
er_tag (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >privatestatic
eu_tag (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >privatestatic
fragment_ (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
fragment_t typedef (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
got_edges_to_add_ (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
got_edges_to_remove_ (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
got_edges_to_update_ (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
got_vertices_to_add_ (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
got_vertices_to_remove_ (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
got_vertices_to_update_ (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
internal_oid_t typedef (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
load_strategy (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >privatestatic
MutateFragment() (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >inline
mutation_ (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
mutation_t typedef (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
oid_t typedef (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
parsed_vertices_to_add_ (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
parsed_vertices_to_remove_ (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
parsed_vertices_to_update_ (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
partitioner_t typedef (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
recv_thread_ (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
recvThreadRoutine() (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >inlineprivate
RemoveEdge(const oid_t &src, const oid_t &dst) (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >inline
RemoveEdges(std::vector< typename ShuffleBuffer< oid_t >::type > &&src_lists, std::vector< typename ShuffleBuffer< oid_t >::type > &&dst_lists) (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >inline
RemoveVertex(const oid_t &id) (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >inline
RemoveVertices(std::vector< typename ShuffleBuffer< oid_t >::type > &&id_lists) (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >inline
SetPartitioner(const partitioner_t &partitioner) (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >inline
SetPartitioner(partitioner_t &&partitioner) (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >inline
Start() (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >inline
UpdateEdge(const oid_t &src, const oid_t &dst, const edata_t &data) (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >inline
UpdateEdges(std::vector< typename ShuffleBuffer< oid_t >::type > &&src_lists, std::vector< typename ShuffleBuffer< oid_t >::type > &&dst_lists, std::vector< typename ShuffleBuffer< edata_t >::type > &&data_lists) (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >inline
UpdateVertex(const oid_t &id, const vdata_t &data) (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >inline
UpdateVertex(const oid_t &id, const vdata_t &data) (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >inline
UpdateVertices(std::vector< typename ShuffleBuffer< oid_t >::type > &&id_lists, std::vector< typename ShuffleBuffer< vdata_t >::type > &&data_lists) (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >inline
UpdateVertices(std::vector< typename ShuffleBuffer< oid_t >::type > &&id_lists, std::vector< typename ShuffleBuffer< vdata_t >::type > &&data_lists) (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >inline
va_tag (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >privatestatic
vdata_t typedef (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
vertex_map_t typedef (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
vertices_to_add_ (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
vertices_to_remove_ (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
vertices_to_update_ (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
vid_t typedef (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
vm_ptr_ (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >private
vr_tag (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >privatestatic
vu_tag (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >privatestatic
~BasicFragmentMutator()=default (defined in grape::BasicFragmentMutator< FRAG_T >)grape::BasicFragmentMutator< FRAG_T >
+ + + + diff --git a/classgrape_1_1BasicFragmentMutator.html b/classgrape_1_1BasicFragmentMutator.html new file mode 100644 index 00000000..e8f86bac --- /dev/null +++ b/classgrape_1_1BasicFragmentMutator.html @@ -0,0 +1,286 @@ + + + + + + + +libgrape-lite: grape::BasicFragmentMutator< FRAG_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::BasicFragmentMutator< FRAG_T > Class Template Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

BasicFragmentMutator (const CommSpec &comm_spec, std::shared_ptr< fragment_t > fragment)
 
+void SetPartitioner (const partitioner_t &partitioner)
 
+void SetPartitioner (partitioner_t &&partitioner)
 
+void AddVerticesToRemove (const std::vector< vid_t > &id_vec)
 
+void AddVerticesToRemove (std::vector< vid_t > &&id_vec)
 
+void AddVerticesToUpdate (const std::vector< internal::Vertex< vid_t, vdata_t >> &v_vec)
 
+void AddVerticesToUpdate (std::vector< internal::Vertex< vid_t, vdata_t >> &&v_vec)
 
+std::shared_ptr< fragment_t > MutateFragment ()
 
+void Start ()
 
+void AddVertex (const internal_oid_t &id, const vdata_t &data)
 
+void AddVertices (std::vector< typename ShuffleBuffer< internal_oid_t >::type > &&id_lists, std::vector< typename ShuffleBuffer< vdata_t >::type > &&data_lists)
 
+void AddEdge (const internal_oid_t &src, const internal_oid_t &dst, const edata_t &data)
 
+void AddEdges (std::vector< typename ShuffleBuffer< internal_oid_t >::type > &&src_lists, std::vector< typename ShuffleBuffer< internal_oid_t >::type > &&dst_lists, std::vector< typename ShuffleBuffer< edata_t >::type > &&data_lists)
 
+void RemoveVertex (const oid_t &id)
 
+void RemoveVertices (std::vector< typename ShuffleBuffer< oid_t >::type > &&id_lists)
 
+void RemoveEdge (const oid_t &src, const oid_t &dst)
 
+void RemoveEdges (std::vector< typename ShuffleBuffer< oid_t >::type > &&src_lists, std::vector< typename ShuffleBuffer< oid_t >::type > &&dst_lists)
 
+template<typename Q = vdata_t>
std::enable_if< std::is_same< Q, EmptyType >::value >::type UpdateVertex (const oid_t &id, const vdata_t &data)
 
+template<typename Q = vdata_t>
std::enable_if<!std::is_same< Q, EmptyType >::value >::type UpdateVertex (const oid_t &id, const vdata_t &data)
 
+template<typename Q = vdata_t>
std::enable_if< std::is_same< Q, EmptyType >::value >::type UpdateVertices (std::vector< typename ShuffleBuffer< oid_t >::type > &&id_lists, std::vector< typename ShuffleBuffer< vdata_t >::type > &&data_lists)
 
+template<typename Q = vdata_t>
std::enable_if<!std::is_same< Q, EmptyType >::value >::type UpdateVertices (std::vector< typename ShuffleBuffer< oid_t >::type > &&id_lists, std::vector< typename ShuffleBuffer< vdata_t >::type > &&data_lists)
 
+void UpdateEdge (const oid_t &src, const oid_t &dst, const edata_t &data)
 
+void UpdateEdges (std::vector< typename ShuffleBuffer< oid_t >::type > &&src_lists, std::vector< typename ShuffleBuffer< oid_t >::type > &&dst_lists, std::vector< typename ShuffleBuffer< edata_t >::type > &&data_lists)
 
+ + + + + + + + + + + + + + + + + + + +

+Private Types

+using fragment_t = FRAG_T
 
+using vertex_map_t = typename FRAG_T::vertex_map_t
 
+using oid_t = typename FRAG_T::oid_t
 
+using internal_oid_t = typename InternalOID< oid_t >::type
 
+using vid_t = typename FRAG_T::vid_t
 
+using vdata_t = typename FRAG_T::vdata_t
 
+using edata_t = typename FRAG_T::edata_t
 
+using mutation_t = Mutation< vid_t, vdata_t, edata_t >
 
+using partitioner_t = typename vertex_map_t::partitioner_t
 
+ + + +

+Private Member Functions

+void recvThreadRoutine ()
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Private Attributes

+CommSpec comm_spec_
 
+std::shared_ptr< fragment_t > fragment_
 
+std::shared_ptr< vertex_map_t > vm_ptr_
 
+std::thread recv_thread_
 
+std::vector< vid_t > parsed_vertices_to_remove_
 
+std::vector< internal::Vertex< vid_t, vdata_t > > parsed_vertices_to_update_
 
+std::vector< internal::Vertex< vid_t, vdata_t > > parsed_vertices_to_add_
 
+std::vector< ShuffleOut< internal_oid_t > > vertices_to_remove_
 
+std::vector< ShuffleBufferTuple< internal_oid_t > > got_vertices_to_remove_
 
+std::vector< ShuffleOut< internal_oid_t, vdata_t > > vertices_to_add_
 
+std::vector< ShuffleBufferTuple< internal_oid_t, vdata_t > > got_vertices_to_add_
 
+std::vector< ShuffleOut< internal_oid_t, vdata_t > > vertices_to_update_
 
+std::vector< ShuffleBufferTuple< internal_oid_t, vdata_t > > got_vertices_to_update_
 
+std::vector< ShuffleOut< internal_oid_t, internal_oid_t > > edges_to_remove_
 
+std::vector< ShuffleBufferTuple< internal_oid_t, internal_oid_t > > got_edges_to_remove_
 
+std::vector< ShuffleOut< internal_oid_t, internal_oid_t, edata_t > > edges_to_update_
 
+std::vector< ShuffleBufferTuple< internal_oid_t, internal_oid_t, edata_t > > got_edges_to_update_
 
+std::vector< ShuffleOut< internal_oid_t, internal_oid_t, edata_t > > edges_to_add_
 
+std::vector< ShuffleBufferTuple< internal_oid_t, internal_oid_t, edata_t > > got_edges_to_add_
 
+mutation_t mutation_
 
+ + + + + + + + + + + + + + + +

+Static Private Attributes

+static constexpr LoadStrategy load_strategy = FRAG_T::load_strategy
 
+static constexpr int vr_tag = 1
 
+static constexpr int va_tag = 2
 
+static constexpr int vu_tag = 3
 
+static constexpr int er_tag = 4
 
+static constexpr int ea_tag = 5
 
+static constexpr int eu_tag = 6
 
+
+ + + + diff --git a/classgrape_1_1BatchShuffleAppBase-members.html b/classgrape_1_1BatchShuffleAppBase-members.html new file mode 100644 index 00000000..362d218a --- /dev/null +++ b/classgrape_1_1BatchShuffleAppBase-members.html @@ -0,0 +1,91 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::BatchShuffleAppBase< FRAG_T, CONTEXT_T > Member List
+
+
+ +

This is the complete list of members for grape::BatchShuffleAppBase< FRAG_T, CONTEXT_T >, including all inherited members.

+ + + + + + + + + + +
BatchShuffleAppBase()=default (defined in grape::BatchShuffleAppBase< FRAG_T, CONTEXT_T >)grape::BatchShuffleAppBase< FRAG_T, CONTEXT_T >
IncEval(const FRAG_T &graph, CONTEXT_T &context, message_manager_t &messages)=0grape::BatchShuffleAppBase< FRAG_T, CONTEXT_T >pure virtual
load_strategy (defined in grape::BatchShuffleAppBase< FRAG_T, CONTEXT_T >)grape::BatchShuffleAppBase< FRAG_T, CONTEXT_T >static
message_manager_t typedef (defined in grape::BatchShuffleAppBase< FRAG_T, CONTEXT_T >)grape::BatchShuffleAppBase< FRAG_T, CONTEXT_T >
message_strategy (defined in grape::BatchShuffleAppBase< FRAG_T, CONTEXT_T >)grape::BatchShuffleAppBase< FRAG_T, CONTEXT_T >static
need_split_edges (defined in grape::BatchShuffleAppBase< FRAG_T, CONTEXT_T >)grape::BatchShuffleAppBase< FRAG_T, CONTEXT_T >static
need_split_edges_by_fragment (defined in grape::BatchShuffleAppBase< FRAG_T, CONTEXT_T >)grape::BatchShuffleAppBase< FRAG_T, CONTEXT_T >static
PEval(const FRAG_T &graph, CONTEXT_T &context, message_manager_t &messages)=0grape::BatchShuffleAppBase< FRAG_T, CONTEXT_T >pure virtual
~BatchShuffleAppBase()=default (defined in grape::BatchShuffleAppBase< FRAG_T, CONTEXT_T >)grape::BatchShuffleAppBase< FRAG_T, CONTEXT_T >virtual
+ + + + diff --git a/classgrape_1_1BatchShuffleAppBase.html b/classgrape_1_1BatchShuffleAppBase.html new file mode 100644 index 00000000..6168b7f5 --- /dev/null +++ b/classgrape_1_1BatchShuffleAppBase.html @@ -0,0 +1,253 @@ + + + + + + + +libgrape-lite: grape::BatchShuffleAppBase< FRAG_T, CONTEXT_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::BatchShuffleAppBase< FRAG_T, CONTEXT_T > Class Template Referenceabstract
+
+
+ + + + +

+Public Types

+using message_manager_t = BatchShuffleMessageManager
 
+ + + + + + + +

+Public Member Functions

virtual void PEval (const FRAG_T &graph, CONTEXT_T &context, message_manager_t &messages)=0
 Partial evaluation to implement. More...
 
virtual void IncEval (const FRAG_T &graph, CONTEXT_T &context, message_manager_t &messages)=0
 Incremental evaluation to implement. More...
 
+ + + + + + + + + +

+Static Public Attributes

+static constexpr bool need_split_edges = false
 
+static constexpr bool need_split_edges_by_fragment = false
 
static constexpr MessageStrategy message_strategy
 
+static constexpr LoadStrategy load_strategy = LoadStrategy::kOnlyOut
 
+

Member Function Documentation

+ +

◆ IncEval()

+ +
+
+
+template<typename FRAG_T , typename CONTEXT_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual void grape::BatchShuffleAppBase< FRAG_T, CONTEXT_T >::IncEval (const FRAG_T & graph,
CONTEXT_T & context,
message_manager_tmessages 
)
+
+pure virtual
+
+ +

Incremental evaluation to implement.

+
Note
: This pure virtual function works as an interface, instructing users to implement in the specific app. The IncEval in the inherited apps would be invoked directly, not via virtual functions.
+
Parameters
+ + + + +
graph
context
messages
+
+
+ +
+
+ +

◆ PEval()

+ +
+
+
+template<typename FRAG_T , typename CONTEXT_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual void grape::BatchShuffleAppBase< FRAG_T, CONTEXT_T >::PEval (const FRAG_T & graph,
CONTEXT_T & context,
message_manager_tmessages 
)
+
+pure virtual
+
+ +

Partial evaluation to implement.

+
Note
: This pure virtual function works as an interface, instructing users to implement in the specific app. The PEval in the inherited apps would be invoked directly, not via virtual functions.
+
Parameters
+ + + + +
graph
context
messages
+
+
+ +
+
+

Member Data Documentation

+ +

◆ message_strategy

+ +
+
+
+template<typename FRAG_T , typename CONTEXT_T >
+ + + + + +
+ + + + +
constexpr MessageStrategy grape::BatchShuffleAppBase< FRAG_T, CONTEXT_T >::message_strategy
+
+staticconstexpr
+
+Initial value: +
+
+
+ + + + diff --git a/classgrape_1_1BatchShuffleMessageManager-members.html b/classgrape_1_1BatchShuffleMessageManager-members.html new file mode 100644 index 00000000..f828a56c --- /dev/null +++ b/classgrape_1_1BatchShuffleMessageManager-members.html @@ -0,0 +1,131 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::BatchShuffleMessageManager Member List
+
+
+ +

This is the complete list of members for grape::BatchShuffleMessageManager, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
archive_shuffle_t typedef (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerprivate
BatchShuffleMessageManager() (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerinline
comm_ (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerprivate
comm_spec_ (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerprivate
fid_ (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerprivate
Finalize() overridegrape::BatchShuffleMessageManagerinlinevirtual
FinishARound() overridegrape::BatchShuffleMessageManagerinlinevirtual
fnum_ (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerprivate
force_terminate_ (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerprivate
ForceContinue() overridegrape::BatchShuffleMessageManagerinlinevirtual
ForceTerminate(const std::string &terminate_info) overridegrape::BatchShuffleMessageManagerinlinevirtual
GetMsgSize() const overridegrape::BatchShuffleMessageManagerinlinevirtual
GetTerminateInfo() const overridegrape::BatchShuffleMessageManagerinlinevirtual
Init(MPI_Comm comm) overridegrape::BatchShuffleMessageManagerinlinevirtual
MessageManagerBase() (defined in grape::MessageManagerBase)grape::MessageManagerBaseinline
msg_size_ (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerprivate
pod_shuffle_t typedef (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerprivate
post_process_handle_ (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerprivate
postProcess(const GRAPH_T &frag, fid_t i, const typename GRAPH_T::template vertex_array_t< DATA_T > &data, int thread_num) (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerinlineprivate
postProcess(const GRAPH_T &frag, fid_t i, const typename GRAPH_T::template vertex_array_t< DATA_T > &data, int thread_num) (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerinlineprivate
recv_from_ (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerprivate
recv_reqs_ (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerprivate
recv_thread_ (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerprivate
recvThreadRoutine() (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerinlineprivate
remaining_frags_ (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerprivate
remaining_reqs_ (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerprivate
ReserveBuffer(fid_t fid, size_t send_size, size_t recv_size) (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerinline
send_reqs_ (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerprivate
sending_queue_ (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerprivate
SetupBuffer(fid_t fid, std::vector< char, Allocator< char >> &&send_buffer, std::vector< char, Allocator< char >> &&recv_buffer) (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerinline
shuffle_in_buffers_ (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerprivate
shuffle_inplace_t typedef (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerprivate
shuffle_out_archives_ (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerprivate
shuffle_out_buffers_ (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerprivate
Start() overridegrape::BatchShuffleMessageManagerinlinevirtual
StartARound() overridegrape::BatchShuffleMessageManagerinlinevirtual
startRecv(const GRAPH_T &frag, typename GRAPH_T::template vertex_array_t< DATA_T > &data, int thread_num) (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerinlineprivate
startRecv(const GRAPH_T &frag, typename GRAPH_T::template vertex_array_t< DATA_T > &data, int thread_num) (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerinlineprivate
startRecv(const GRAPH_T &frag, typename GRAPH_T::template vertex_array_t< DATA_T > &data, int thread_num) (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerinlineprivate
startSend(const GRAPH_T &frag, const typename GRAPH_T::template vertex_array_t< DATA_T > &data, int thread_num) (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerinlineprivate
startSend(const GRAPH_T &frag, const typename GRAPH_T::template vertex_array_t< DATA_T > &data, int thread_num) (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerinlineprivate
SyncInnerVertices(const GRAPH_T &frag, typename GRAPH_T::template vertex_array_t< DATA_T > &data, int thread_num=std::thread::hardware_concurrency())grape::BatchShuffleMessageManagerinline
terminate_info_ (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerprivate
to_terminate_ (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerprivate
ToTerminate() overridegrape::BatchShuffleMessageManagerinlinevirtual
UpdateOuterVertices()grape::BatchShuffleMessageManagerinline
UpdatePartialOuterVertices()grape::BatchShuffleMessageManagerinline
~BatchShuffleMessageManager() (defined in grape::BatchShuffleMessageManager)grape::BatchShuffleMessageManagerinline
~MessageManagerBase() (defined in grape::MessageManagerBase)grape::MessageManagerBaseinlinevirtual
+ + + + diff --git a/classgrape_1_1BatchShuffleMessageManager.html b/classgrape_1_1BatchShuffleMessageManager.html new file mode 100644 index 00000000..adc101d0 --- /dev/null +++ b/classgrape_1_1BatchShuffleMessageManager.html @@ -0,0 +1,353 @@ + + + + + + + +libgrape-lite: grape::BatchShuffleMessageManager Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::BatchShuffleMessageManager Class Reference
+
+
+
+Inheritance diagram for grape::BatchShuffleMessageManager:
+
+
+ + +grape::MessageManagerBase + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+void Init (MPI_Comm comm) override
 Inherit.
 
+void ReserveBuffer (fid_t fid, size_t send_size, size_t recv_size)
 
+void SetupBuffer (fid_t fid, std::vector< char, Allocator< char >> &&send_buffer, std::vector< char, Allocator< char >> &&recv_buffer)
 
+void Start () override
 Inherit.
 
+void StartARound () override
 Inherit.
 
+void FinishARound () override
 Inherit.
 
+bool ToTerminate () override
 Inherit.
 
+size_t GetMsgSize () const override
 Inherit.
 
+void Finalize () override
 Inherit.
 
template<typename GRAPH_T , typename DATA_T >
void SyncInnerVertices (const GRAPH_T &frag, typename GRAPH_T::template vertex_array_t< DATA_T > &data, int thread_num=std::thread::hardware_concurrency())
 Synchronize the inner vertices' data of a vertex array to their mirrors. More...
 
+void UpdateOuterVertices ()
 This function will block until all outer vertices are updated, that is, messages from all other fragments are received.
 
fid_t UpdatePartialOuterVertices ()
 This function will block until a set of messages from one fragment are received. More...
 
+void ForceContinue () override
 Inherit.
 
+void ForceTerminate (const std::string &terminate_info) override
 Inherit.
 
+const TerminateInfoGetTerminateInfo () const override
 Inherit.
 
+ + + + + + + + + + +

+Private Types

+template<typename FRAG_T , typename MESSAGE_T >
using shuffle_inplace_t = batch_shuffle_message_manager_impl::ShuffleInplace< FRAG_T, MESSAGE_T >
 
+template<typename FRAG_T , typename MESSAGE_T >
using pod_shuffle_t = batch_shuffle_message_manager_impl::PodShuffle< FRAG_T, MESSAGE_T >
 
+template<typename FRAG_T >
using archive_shuffle_t = batch_shuffle_message_manager_impl::ArchiveShuffle< FRAG_T >
 
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Private Member Functions

+void recvThreadRoutine ()
 
+template<typename GRAPH_T , typename DATA_T >
std::enable_if< archive_shuffle_t< DATA_T >::value >::type startRecv (const GRAPH_T &frag, typename GRAPH_T::template vertex_array_t< DATA_T > &data, int thread_num)
 
+template<typename GRAPH_T , typename DATA_T >
std::enable_if< shuffle_inplace_t< GRAPH_T, DATA_T >::value >::type startRecv (const GRAPH_T &frag, typename GRAPH_T::template vertex_array_t< DATA_T > &data, int thread_num)
 
+template<typename GRAPH_T , typename DATA_T >
std::enable_if< pod_shuffle_t< GRAPH_T, DATA_T >::value >::type startRecv (const GRAPH_T &frag, typename GRAPH_T::template vertex_array_t< DATA_T > &data, int thread_num)
 
+template<typename GRAPH_T , typename DATA_T >
std::enable_if<!archive_shuffle_t< DATA_T >::value >::type startSend (const GRAPH_T &frag, const typename GRAPH_T::template vertex_array_t< DATA_T > &data, int thread_num)
 
+template<typename GRAPH_T , typename DATA_T >
std::enable_if< archive_shuffle_t< DATA_T >::value >::type startSend (const GRAPH_T &frag, const typename GRAPH_T::template vertex_array_t< DATA_T > &data, int thread_num)
 
+template<typename GRAPH_T , typename DATA_T >
std::enable_if<!shuffle_inplace_t< GRAPH_T, DATA_T >::value >::type postProcess (const GRAPH_T &frag, fid_t i, const typename GRAPH_T::template vertex_array_t< DATA_T > &data, int thread_num)
 
+template<typename GRAPH_T , typename DATA_T >
std::enable_if< shuffle_inplace_t< GRAPH_T, DATA_T >::value >::type postProcess (const GRAPH_T &frag, fid_t i, const typename GRAPH_T::template vertex_array_t< DATA_T > &data, int thread_num)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Private Attributes

+fid_t fid_
 
+fid_t fnum_
 
+CommSpec comm_spec_
 
+MPI_Comm comm_
 
+std::vector< std::vector< char, Allocator< char > > > shuffle_out_buffers_
 
+std::vector< InArchiveshuffle_out_archives_
 
+std::vector< std::vector< char, Allocator< char > > > shuffle_in_buffers_
 
+std::shared_ptr< batch_shuffle_message_manager_impl::PostProcessBasepost_process_handle_
 
+std::vector< MPI_Request > recv_reqs_
 
+std::vector< fid_t > recv_from_
 
+std::vector< int > remaining_reqs_
 
+fid_t remaining_frags_
 
+std::vector< MPI_Request > send_reqs_
 
+size_t msg_size_
 
+std::thread recv_thread_
 
+bool to_terminate_
 
+bool force_terminate_
 
+TerminateInfo terminate_info_
 
+BlockingQueue< fid_t > sending_queue_
 
+

Member Function Documentation

+ +

◆ SyncInnerVertices()

+ +
+
+
+template<typename GRAPH_T , typename DATA_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void grape::BatchShuffleMessageManager::SyncInnerVertices (const GRAPH_T & frag,
typename GRAPH_T::template vertex_array_t< DATA_T > & data,
int thread_num = std::thread::hardware_concurrency() 
)
+
+inline
+
+ +

Synchronize the inner vertices' data of a vertex array to their mirrors.

+
Template Parameters
+ + + +
GRAPH_T
DATA_T
+
+
+
Parameters
+ + + +
frag
data
+
+
+ +
+
+ +

◆ UpdatePartialOuterVertices()

+ +
+
+ + + + + +
+ + + + + + + +
fid_t grape::BatchShuffleMessageManager::UpdatePartialOuterVertices ()
+
+inline
+
+ +

This function will block until a set of messages from one fragment are received.

+
Returns
Source fragment id.
+ +
+
+
+ + + + diff --git a/classgrape_1_1BatchShuffleMessageManager.png b/classgrape_1_1BatchShuffleMessageManager.png new file mode 100644 index 0000000000000000000000000000000000000000..39a9c3c87d1c6a9048c3c2f605cb6086f3ef522f GIT binary patch literal 869 zcmeAS@N?(olHy`uVBq!ia0vp^4}my8!x*@oUh$E8{(UD?LAP-W}d_X2(o!zbx|Ir8+c zy65&Us)tNJ%>CgXlXvb!ddqsAd&zp=OWESjnojXNw`}*<-@pG&;O)~(Oi16WGJ(Un z!|Ds`!$Vtnx20_~|Gxa~sml+3J5R5*+7YrQc(=%+ee15bU`<-+FxOHI_6lF8uiZbYhXvNu|(=y*~K@$4ohn=Bzq4Z&K?~ z?VVTZ?gZ^T+E?ijbY=PP3j$)V_FFK9|NbC!R`<=s57xg8<}baya_gVj#%J1B&RLp$ z?AwzsdX|1CZ@oX9^YQoQEgx8S{Xbj#=FjQ?^Y0JM55--Zyrkyt=4nfWW5Y9fKHIzr zwe>W*Zkz3?^}1PW>XJ574%L;pyiT53(fWrf=RKdt`eFVn_66Cc{y#onwodxqqJQ9= z;BR%AbWMlXQY{R**#b;k);e-r*v6*laGQ|8fpSyd%U8C}V6eKTz>*Q&EU+N=u4;_G z`eV81+rJH7?LI#@>!i#BW7~pCmxyOxYya+*FHJXlmVNo0n1e5WjLk!{qo-@*+e=M$ zXLT05JhT0-g?~v^jd^&g`}B8a`}V)*H=RCV!Dhdd&H~-VYv+C1TzM*6*t&P)*~2qi zm(4wAuwVJO?&2_ zaZ~kq^d>z4F}uqQ^=sMZXCH`Zul-T4r1ONOV3BZk^wN)C@2`JosNP^ab#3farjq5b jP_C-qvOIH^)iwKP>-4+J&qPT8^8|yZtDnm{r-UW|hN+{+ literal 0 HcmV?d00001 diff --git a/classgrape_1_1Bitset-members.html b/classgrape_1_1Bitset-members.html new file mode 100644 index 00000000..ffdbd0c4 --- /dev/null +++ b/classgrape_1_1Bitset-members.html @@ -0,0 +1,123 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::Bitset Member List
+
+
+ +

This is the complete list of members for grape::Bitset, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
allocate(size_type __n) (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
Bitset() (defined in grape::Bitset)grape::Bitsetinline
Bitset(size_t size) (defined in grape::Bitset)grape::Bitsetinlineexplicit
Bitset(const Bitset &other) (defined in grape::Bitset)grape::Bitsetinline
Bitset(Bitset &&other) (defined in grape::Bitset)grape::Bitsetinline
cardinality() const (defined in grape::Bitset)grape::Bitsetinline
clear() (defined in grape::Bitset)grape::Bitsetinline
copy(const Bitset &other) (defined in grape::Bitset)grape::Bitsetinline
count() const (defined in grape::Bitset)grape::Bitsetinline
data_ (defined in grape::Bitset)grape::Bitsetprivate
deallocate(pointer __p, size_type) (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
DefaultAllocator() noexcept (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
DefaultAllocator(const DefaultAllocator &) noexcept (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
DefaultAllocator(DefaultAllocator &&) noexcept (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
empty() const (defined in grape::Bitset)grape::Bitsetinline
get_bit(size_t i) const (defined in grape::Bitset)grape::Bitsetinline
get_word(size_t i) const (defined in grape::Bitset)grape::Bitsetinline
get_word_ptr(size_t i) const (defined in grape::Bitset)grape::Bitsetinline
init(size_t size) (defined in grape::Bitset)grape::Bitsetinline
operator=(const Bitset &other) (defined in grape::Bitset)grape::Bitsetinline
operator=(Bitset &&other) (defined in grape::Bitset)grape::Bitsetinline
operator=(const DefaultAllocator &) noexcept (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
operator=(DefaultAllocator &&) noexcept (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
parallel_clear(ThreadPool &thread_pool) (defined in grape::Bitset)grape::Bitsetinline
parallel_count(ThreadPool &thread_pool) const (defined in grape::Bitset)grape::Bitsetinline
parallel_partial_count(ThreadPool &thread_pool, size_t begin, size_t end) const (defined in grape::Bitset)grape::Bitsetinline
partial_count(size_t begin, size_t end) const (defined in grape::Bitset)grape::Bitsetinline
partial_empty(size_t begin, size_t end) const (defined in grape::Bitset)grape::Bitsetinline
pointer typedef (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >
reset_bit(size_t i) (defined in grape::Bitset)grape::Bitsetinline
reset_bit_with_ret(size_t i) (defined in grape::Bitset)grape::Bitsetinline
resize(size_t size) (defined in grape::Bitset)grape::Bitsetinline
set_bit(size_t i) (defined in grape::Bitset)grape::Bitsetinline
set_bit_with_ret(size_t i) (defined in grape::Bitset)grape::Bitsetinline
size_ (defined in grape::Bitset)grape::Bitsetprivate
size_in_words_ (defined in grape::Bitset)grape::Bitsetprivate
size_type typedef (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >
swap(Bitset &other) (defined in grape::Bitset)grape::Bitsetinline
value_type typedef (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >
~Bitset() (defined in grape::Bitset)grape::Bitsetinline
~DefaultAllocator() noexcept (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
+ + + + diff --git a/classgrape_1_1Bitset.html b/classgrape_1_1Bitset.html new file mode 100644 index 00000000..d9c31c62 --- /dev/null +++ b/classgrape_1_1Bitset.html @@ -0,0 +1,222 @@ + + + + + + + +libgrape-lite: grape::Bitset Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::Bitset Class Reference
+
+
+ +

Bitset is a highly-optimized bitset implementation. + More...

+ +

#include <bitset.h>

+
+Inheritance diagram for grape::Bitset:
+
+
+ + +grape::DefaultAllocator< _Tp > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

Bitset (size_t size)
 
Bitset (const Bitset &other)
 
Bitset (Bitset &&other)
 
+Bitsetoperator= (const Bitset &other)
 
+Bitsetoperator= (Bitset &&other)
 
+void init (size_t size)
 
+void clear ()
 
+void resize (size_t size)
 
+void copy (const Bitset &other)
 
+void parallel_clear (ThreadPool &thread_pool)
 
+bool empty () const
 
+bool partial_empty (size_t begin, size_t end) const
 
+bool get_bit (size_t i) const
 
+void set_bit (size_t i)
 
+bool set_bit_with_ret (size_t i)
 
+void reset_bit (size_t i)
 
+bool reset_bit_with_ret (size_t i)
 
+void swap (Bitset &other)
 
+size_t count () const
 
+size_t parallel_count (ThreadPool &thread_pool) const
 
+size_t partial_count (size_t begin, size_t end) const
 
+size_t parallel_partial_count (ThreadPool &thread_pool, size_t begin, size_t end) const
 
+uint64_t get_word (size_t i) const
 
+const uint64_t * get_word_ptr (size_t i) const
 
+size_t cardinality () const
 
- Public Member Functions inherited from grape::DefaultAllocator< _Tp >
DefaultAllocator (const DefaultAllocator &) noexcept
 
DefaultAllocator (DefaultAllocator &&) noexcept
 
+DefaultAllocatoroperator= (const DefaultAllocator &) noexcept
 
+DefaultAllocatoroperator= (DefaultAllocator &&) noexcept
 
+pointer allocate (size_type __n)
 
+void deallocate (pointer __p, size_type)
 
+ + + + + + + +

+Private Attributes

+uint64_t * data_
 
+size_t size_
 
+size_t size_in_words_
 
+ + + + + + + + +

+Additional Inherited Members

- Public Types inherited from grape::DefaultAllocator< _Tp >
+using pointer = _Tp *
 
+using size_type = size_t
 
+using value_type = _Tp
 
+

Detailed Description

+

Bitset is a highly-optimized bitset implementation.

+
+ + + + diff --git a/classgrape_1_1Bitset.png b/classgrape_1_1Bitset.png new file mode 100644 index 0000000000000000000000000000000000000000..33480c65cca052a7f718d2d08b048fea37e48cb8 GIT binary patch literal 745 zcmeAS@N?(olHy`uVBq!ia0vp^mw-5cgBeIh+uvRcq$C1-LR|m<{|{uoc=NTi|Ih>= z3ycpOIKbL@M;^%KC<*clW&kPzfvcxNj2IZ0Dm+~rLn;{G&V60PtjOWk|HkLu|B1WB z^;c}kykz1mGppwIU0x-3#{ZjgZ*QA+!^I^mNTIW%A{<0qU+nSn$Lsixj(_jYUte7% zt2Bg|k*Fhqo*^ysPhOSYGau)$CW!2Hn0r zVb%HCC}Tw>)!m`v)g;;p561R z)2EkAJipbX#AfrfV|O-8*ynq3;j}eg@A}$zZ@pp_m#6aFed|i0lE}r^o_X1yy8bHb z#NmaHw}z#Cee}$mG3xmxe%bQ{e@^UFRC?qRtXs=*DKsdp#pWngIPsy2Lo!M0)AHRoM-rzJ=6XR1f_W;!l;QNi#})Pn)2kZA0$wRFlgAj-Th&?fu5R4MR1u}`to3p3 z#jWXIuWZsi_+hJ%-~-9MLMvCbuKgFe^@`C2+e@P5cXg%)|J9q?yY?AF{nh;nUvFRb zHBiW8?)Ok#{3dGCgqrI?uPb)8&XvFVvFOLDX}|iWzi0fnZ2CO!=GEWlRs0Y4=2nz+ ve|lV*aYujxBQVu4R$MQXSvKX8*Dt2%Ra!p^&ObK;rb`A-S3j3^P6 + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::BlockingQueue< T > Member List
+
+
+ +

This is the complete list of members for grape::BlockingQueue< T >, including all inherited members.

+ + + + + + + + + + + + + + + + +
BlockingQueue() (defined in grape::BlockingQueue< T >)grape::BlockingQueue< T >inline
DecProducerNum()grape::BlockingQueue< T >inline
empty_ (defined in grape::BlockingQueue< T >)grape::BlockingQueue< T >private
full_ (defined in grape::BlockingQueue< T >)grape::BlockingQueue< T >private
Get(T &item)grape::BlockingQueue< T >inline
lock_ (defined in grape::BlockingQueue< T >)grape::BlockingQueue< T >private
producer_num_ (defined in grape::BlockingQueue< T >)grape::BlockingQueue< T >private
Put(const T &item)grape::BlockingQueue< T >inline
Put(T &&item)grape::BlockingQueue< T >inline
queue_ (defined in grape::BlockingQueue< T >)grape::BlockingQueue< T >private
SetLimit(size_t limit)grape::BlockingQueue< T >inline
SetProducerNum(int pn)grape::BlockingQueue< T >inline
Size() const (defined in grape::BlockingQueue< T >)grape::BlockingQueue< T >inline
size_limit_ (defined in grape::BlockingQueue< T >)grape::BlockingQueue< T >private
~BlockingQueue() (defined in grape::BlockingQueue< T >)grape::BlockingQueue< T >inline
+ + + + diff --git a/classgrape_1_1BlockingQueue.html b/classgrape_1_1BlockingQueue.html new file mode 100644 index 00000000..007f64d6 --- /dev/null +++ b/classgrape_1_1BlockingQueue.html @@ -0,0 +1,332 @@ + + + + + + + +libgrape-lite: grape::BlockingQueue< T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::BlockingQueue< T > Class Template Reference
+
+
+ +

A concurrent queue based on condition_variables and can be accessed by multi-producers and multi-consumers simultaneously. + More...

+ +

#include <concurrent_queue.h>

+ + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

void SetLimit (size_t limit)
 Set queue size. When queue_.size() == size_limit_, Putting entities will be blocked. More...
 
+void DecProducerNum ()
 When a producer finished producing, it will call this function. When all producers finished producing, blocked consumer will be notified to return.
 
void SetProducerNum (int pn)
 Set the number of producers to this queue. More...
 
void Put (const T &item)
 Put an entity into this queue. More...
 
void Put (T &&item)
 Put an entity into this queue. More...
 
bool Get (T &item)
 Get an entity from this queue. More...
 
+size_t Size () const
 
+ + + + + + + + + + + + + +

+Private Attributes

+std::deque< T > queue_
 
+size_t size_limit_
 
+std::mutex lock_
 
+std::condition_variable empty_
 
+std::condition_variable full_
 
+std::atomic< int > producer_num_
 
+

Detailed Description

+

template<typename T>
+class grape::BlockingQueue< T >

+ +

A concurrent queue based on condition_variables and can be accessed by multi-producers and multi-consumers simultaneously.

+
Template Parameters
+ + +
TType of entities in the queue.
+
+
+

Member Function Documentation

+ +

◆ Get()

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
bool grape::BlockingQueue< T >::Get (T & item)
+
+inline
+
+ +

Get an entity from this queue.

+

This function will be blocked when there are alive producers and the queue is empty, and will be waken when entities are put into the queue or all producers finished putting data.

+
Parameters
+ + +
itemReference of an entity to hold the got data.
+
+
+
Returns
If got data, return true. Otherwise, return false.
+ +
+
+ +

◆ Put() [1/2]

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void grape::BlockingQueue< T >::Put (const T & item)
+
+inline
+
+ +

Put an entity into this queue.

+

This function will be blocked when the queue is full, that is, queue_.size() == size_limit_.

+
Parameters
+ + +
itemThe entity to be put.
+
+
+ +
+
+ +

◆ Put() [2/2]

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void grape::BlockingQueue< T >::Put (T && item)
+
+inline
+
+ +

Put an entity into this queue.

+

This function will be blocked when the queue is full, that is, queue_.size() == size_limit_.

+
Parameters
+ + +
itemThe entity to be put.
+
+
+ +
+
+ +

◆ SetLimit()

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void grape::BlockingQueue< T >::SetLimit (size_t limit)
+
+inline
+
+ +

Set queue size. When queue_.size() == size_limit_, Putting entities will be blocked.

+
Parameters
+ + +
limitSize limit of the queue.
+
+
+ +
+
+ +

◆ SetProducerNum()

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void grape::BlockingQueue< T >::SetProducerNum (int pn)
+
+inline
+
+ +

Set the number of producers to this queue.

+

This function is supposed to be called before producers start to put entities into this queue.

+
Parameters
+ + +
pnNumber of producers to this queue.
+
+
+ +
+
+
+ + + + diff --git a/classgrape_1_1CSREdgecutFragmentBase-members.html b/classgrape_1_1CSREdgecutFragmentBase-members.html new file mode 100644 index 00000000..60e11bcc --- /dev/null +++ b/classgrape_1_1CSREdgecutFragmentBase-members.html @@ -0,0 +1,218 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T > Member List
+
+
+ +

This is the complete list of members for grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
adj_list_t typedef (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
base_t typedef (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
buildCSR(const typename csr_builder_t::vertex_range_t &vertex_range, std::vector< Edge< VID_T, EDATA_T >> &edges, LoadStrategy load_strategy) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
buildMessageDestination(const MessageStrategy &msg_strategy) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprivate
const_adj_list_t typedef (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
csr_builder_t typedef (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >private
csr_t typedef (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >private
CSREdgecutFragmentBase() (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
deserialize(std::unique_ptr< IOADAPTOR_T > &reader) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
directed() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
directed_ (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
EdgecutFragmentBase() (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
fid() constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
grape::FragmentBase::fid() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
fid_ (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
fnum() constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
grape::FragmentBase::fnum() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
fnum_ (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
fragment_adj_list_t typedef (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
fragment_const_adj_list_t typedef (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
FragmentBase() (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
FragmentBase(std::shared_ptr< vertex_map_t > vm_ptr) (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineexplicit
get_ie_begin(const vertex_t &v) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
get_ie_begin(const vertex_t &v) const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
get_ie_end(const vertex_t &v) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
get_ie_end(const vertex_t &v) const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
get_oe_begin(const vertex_t &v) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
get_oe_begin(const vertex_t &v) const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
get_oe_end(const vertex_t &v) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
get_oe_end(const vertex_t &v) const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
GetData(const Vertex< VID_T > &v) const =0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetEdgeNum() const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlinevirtual
GetFragId(const Vertex< VID_T > &u) constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetId(const Vertex< VID_T > &v) constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetIncomingAdjList(const vertex_t &v) overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlinevirtual
GetIncomingAdjList(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlinevirtual
GetIncomingAdjList(const Vertex< VID_T > &v, fid_t fid)=0 (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetIncomingAdjList(const Vertex< VID_T > &v, fid_t fid) const =0 (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetIncomingEdgeNum() const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetIncomingInnerVertexAdjList(const Vertex< VID_T > &v)=0grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetIncomingInnerVertexAdjList(const Vertex< VID_T > &v) const =0grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetIncomingOuterVertexAdjList(const Vertex< VID_T > &v)=0grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetIncomingOuterVertexAdjList(const Vertex< VID_T > &v) const =0grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetInnerVertex(const OID_T &oid, Vertex< VID_T > &v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetInnerVertexGid(vertex_t v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetInnerVertexId(vertex_t v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetInnerVerticesNum() constgrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
grape::EdgecutFragmentBase::GetInnerVerticesNum() constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetLocalInDegree(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlinevirtual
GetLocalOutDegree(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlinevirtual
GetOuterVertexGid(vertex_t v) const =0grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetOuterVertexId(vertex_t v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetOuterVerticesNum() constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetOutgoingAdjList(const vertex_t &v) overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlinevirtual
GetOutgoingAdjList(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlinevirtual
GetOutgoingAdjList(const Vertex< VID_T > &v, fid_t fid)=0 (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetOutgoingAdjList(const Vertex< VID_T > &v, fid_t fid) const =0 (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetOutgoingEdgeNum() const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetOutgoingInnerVertexAdjList(const Vertex< VID_T > &v)=0grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetOutgoingInnerVertexAdjList(const Vertex< VID_T > &v) const =0grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetOutgoingOuterVertexAdjList(const Vertex< VID_T > &v)=0grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetOutgoingOuterVertexAdjList(const Vertex< VID_T > &v) const =0grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetTotalVerticesNum() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetVertex(const OID_T &oid, Vertex< VID_T > &v) constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetVertexMap() (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetVertexMap() const (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetVerticesNum() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
Gid2Lid(VID_T gid, VID_T &lid) const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
Gid2Lid(VID_T gid, VID_T &lid) const (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
Gid2Oid(VID_T gid) const (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
Gid2Vertex(const vid_t &gid, vertex_t &v) const overridegrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlinevirtual
HasChild(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlinevirtual
HasParent(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlinevirtual
id_parser_ (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
idst_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
idst_built_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
ie_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
IEDests(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlinevirtual
IEDestsSize() const override (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlinevirtual
init(fid_t fid, bool directed) (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
Init(fid_t fid, bool directed, std::vector< internal::Vertex< VID_T, VDATA_T >> &vertices, std::vector< Edge< VID_T, EDATA_T >> &edges)=0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
initDestFidList(bool in_edge, bool out_edge, ImmutableCSR< VID_T, fid_t > &csr) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprivate
initMirrorInfo(const CommSpec &comm_spec) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
initMirrorInfo(const CommSpec &comm_spec) (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
inner_vertices_ (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
inner_vertices_t typedef (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
InnerVertexGid2Lid(VID_T gid, VID_T &lid) const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
InnerVertexGid2Lid(VID_T gid, VID_T &lid) const (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
InnerVertexGid2Vertex(VID_T gid, Vertex< VID_T > &v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
InnerVertices() constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
iodst_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
iodst_built_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
IOEDests(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlinevirtual
IOEDestsSize() const override (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlinevirtual
IsBorderVertex(const vertex_t &v) constgrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
IsIncomingBorderVertex(const vertex_t &v) constgrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
IsInnerVertex(const Vertex< VID_T > &v) constgrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
grape::EdgecutFragmentBase::IsInnerVertex(const Vertex< VID_T > &v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
IsInnerVertexGid(VID_T gid) const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
IsInnerVertexGid(VID_T gid) const (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
IsInnerVertexLid(VID_T lid) const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
IsInnerVertexLid(VID_T lid) const (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
IsOuterVertex(const Vertex< VID_T > &v) constgrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
grape::EdgecutFragmentBase::IsOuterVertex(const Vertex< VID_T > &v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
IsOutgoingBorderVertex(const vertex_t &v) constgrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
ivnum_ (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
mirror_info_initialized_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
mirror_vertices_t typedef (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
mirrors_of_frag_ (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
MirrorVertices(fid_t fid) const (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
nbr_t typedef (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
odst_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
odst_built_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
oe_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
OEDests(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlinevirtual
OEDestsSize() const override (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlinevirtual
outer_vertices_ (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
outer_vertices_of_frag_ (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
outer_vertices_t typedef (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
OuterVertexGid2Lid(VID_T gid, VID_T &lid) const=0 (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
OuterVertexGid2Lid(VID_T gid, VID_T &lid) const =0 (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protectedpure virtual
OuterVertexGid2Vertex(VID_T gid, Vertex< VID_T > &v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
OuterVertices() constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
OuterVertices(fid_t fid) const (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
PrepareToRunApp(const CommSpec &comm_spec, PrepareConf conf) overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlinevirtual
serialize(std::unique_ptr< IOADAPTOR_T > &writer) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
SetData(const Vertex< VID_T > &v, const VDATA_T &val)=0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
sub_vertices_t typedef (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
Vertex2Gid(const vertex_t &v) const overridegrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlinevirtual
vertex_map_t typedef (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
vertex_t typedef (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
Vertices() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
vertices_ (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
vertices_t typedef (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
vid_t typedef (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
vm_ptr_ (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
+ + + + diff --git a/classgrape_1_1CSREdgecutFragmentBase.html b/classgrape_1_1CSREdgecutFragmentBase.html new file mode 100644 index 00000000..a660ec05 --- /dev/null +++ b/classgrape_1_1CSREdgecutFragmentBase.html @@ -0,0 +1,1280 @@ + + + + + + + +libgrape-lite: grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T > Class Template Reference
+
+
+
+Inheritance diagram for grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >:
+
+
+ + +grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T > +grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

+using nbr_t = Nbr< VID_T, EDATA_T >
 
+using vertex_t = Vertex< VID_T >
 
+using const_adj_list_t = ConstAdjList< VID_T, EDATA_T >
 
+using adj_list_t = AdjList< VID_T, EDATA_T >
 
+using base_t = EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
 
- Public Types inherited from grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
+using base_t = FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
 
+using vid_t = VID_T
 
+using vertex_t = Vertex< VID_T >
 
+using inner_vertices_t = typename TRAITS_T::inner_vertices_t
 
+using outer_vertices_t = typename TRAITS_T::outer_vertices_t
 
+using sub_vertices_t = typename TRAITS_T::sub_vertices_t
 
+using mirror_vertices_t = typename TRAITS_T::mirror_vertices_t
 
- Public Types inherited from grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
+using vertex_map_t = typename TRAITS_T::vertex_map_t
 
+using fragment_adj_list_t = typename TRAITS_T::fragment_adj_list_t
 
+using fragment_const_adj_list_t = typename TRAITS_T::fragment_const_adj_list_t
 
+using vertices_t = typename TRAITS_T::vertices_t
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

size_t GetEdgeNum () const override
 Returns the number of edges in this fragment. More...
 
+size_t GetOutgoingEdgeNum () const
 
+size_t GetIncomingEdgeNum () const
 
bool HasChild (const vertex_t &v) const override
 Check if vertex v has a child, that is, existing an edge v->u. More...
 
bool HasParent (const vertex_t &v) const override
 Check if vertex v has a parent, that is, existing an edge u->v. More...
 
int GetLocalOutDegree (const vertex_t &v) const override
 Returns the out-degree of vertex v in this fragment.<Paste> More...
 
int GetLocalInDegree (const vertex_t &v) const override
 Returns the in-degree of vertex v in this fragment. More...
 
adj_list_t GetIncomingAdjList (const vertex_t &v) override
 Returns the incoming adjacent vertices of v. More...
 
const_adj_list_t GetIncomingAdjList (const vertex_t &v) const override
 Returns the incoming adjacent vertices of v. More...
 
adj_list_t GetOutgoingAdjList (const vertex_t &v) override
 Returns the outgoing adjacent vertices of v. More...
 
const_adj_list_t GetOutgoingAdjList (const vertex_t &v) const override
 Returns the outgoing adjacent vertices of v. More...
 
bool IsIncomingBorderVertex (const vertex_t &v) const
 Check if inner vertex v is an incoming border vertex, that is, existing edge u->v, u is an outer vertex. More...
 
bool IsOutgoingBorderVertex (const vertex_t &v) const
 Check if inner vertex v is an outgoing border vertex, that is, existing edge v->u, u is an outer vertex. More...
 
bool IsBorderVertex (const vertex_t &v) const
 Check if inner vertex v is an border vertex, that is, existing edge v->u or u->v, u is an outer vertex. More...
 
DestList IEDests (const vertex_t &v) const override
 Return the incoming edge destination fragment ID list of a inner vertex. More...
 
+size_t IEDestsSize () const override
 
DestList OEDests (const vertex_t &v) const override
 Return the outgoing edge destination fragment ID list of a Vertex. More...
 
+size_t OEDestsSize () const override
 
DestList IOEDests (const vertex_t &v) const override
 Return the edge destination fragment ID list of a inner vertex. More...
 
+size_t IOEDestsSize () const override
 
void PrepareToRunApp (const CommSpec &comm_spec, PrepareConf conf) override
 For some kind of applications, specific data structures will be generated. More...
 
bool IsInnerVertex (const Vertex< VID_T > &v) const
 Check if vertex v is inner vertex of this fragment. More...
 
bool IsOuterVertex (const Vertex< VID_T > &v) const
 Check if vertex v is outer vertex of this fragment. More...
 
VID_T GetInnerVerticesNum () const
 Returns the number of inner vertices in this fragment. More...
 
+void initMirrorInfo (const CommSpec &comm_spec)
 
- Public Member Functions inherited from grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
VID_T GetInnerVerticesNum () const
 Returns the number of inner vertices in this fragment. More...
 
VID_T GetOuterVerticesNum () const
 Returns the number of outer vertices in this fragment. More...
 
const inner_vertices_t & InnerVertices () const
 Returns the vertex range of inner vertices in this fragment. More...
 
const outer_vertices_t & OuterVertices () const
 Returns the vertex range of outer vertices in this fragment. More...
 
+const sub_vertices_t & OuterVertices (fid_t fid) const
 
+const mirror_vertices_t & MirrorVertices (fid_t fid) const
 
bool IsInnerVertex (const Vertex< VID_T > &v) const
 Check if vertex v is inner vertex of this fragment. More...
 
bool IsOuterVertex (const Vertex< VID_T > &v) const
 Check if vertex v is outer vertex of this fragment. More...
 
bool GetInnerVertex (const OID_T &oid, Vertex< VID_T > &v) const
 Get a inner vertex with original ID vid. More...
 
OID_T GetInnerVertexId (vertex_t v) const
 Get the original ID of an inner vertex. More...
 
OID_T GetOuterVertexId (vertex_t v) const
 Get the original ID of an outer vertex. More...
 
bool InnerVertexGid2Vertex (VID_T gid, Vertex< VID_T > &v) const
 Convert from global id to an inner vertex handle. More...
 
bool OuterVertexGid2Vertex (VID_T gid, Vertex< VID_T > &v) const
 Convert from global id to an outer vertex handle. More...
 
virtual VID_T GetOuterVertexGid (vertex_t v) const =0
 Convert from inner vertex handle to its global id. More...
 
VID_T GetInnerVertexGid (vertex_t v) const
 Convert from outer vertex handle to its global id. More...
 
virtual AdjList< VID_T, EDATA_T > GetIncomingInnerVertexAdjList (const Vertex< VID_T > &v)=0
 Returns the incoming adjacent inner vertices of v. More...
 
virtual ConstAdjList< VID_T, EDATA_T > GetIncomingInnerVertexAdjList (const Vertex< VID_T > &v) const =0
 Returns the incoming adjacent inner vertices of v. More...
 
virtual AdjList< VID_T, EDATA_T > GetIncomingOuterVertexAdjList (const Vertex< VID_T > &v)=0
 Returns the incoming adjacent outer vertices of v. More...
 
virtual ConstAdjList< VID_T, EDATA_T > GetIncomingOuterVertexAdjList (const Vertex< VID_T > &v) const =0
 Returns the incoming adjacent outer vertices of v. More...
 
virtual AdjList< VID_T, EDATA_T > GetOutgoingInnerVertexAdjList (const Vertex< VID_T > &v)=0
 Returns the outgoing adjacent inner vertices of v. More...
 
virtual ConstAdjList< VID_T, EDATA_T > GetOutgoingInnerVertexAdjList (const Vertex< VID_T > &v) const =0
 Returns the outgoing adjacent inner vertices of v. More...
 
virtual AdjList< VID_T, EDATA_T > GetOutgoingOuterVertexAdjList (const Vertex< VID_T > &v)=0
 Returns the outgoing adjacent outer vertices of v. More...
 
virtual ConstAdjList< VID_T, EDATA_T > GetOutgoingOuterVertexAdjList (const Vertex< VID_T > &v) const =0
 Returns the outgoing adjacent outer vertices of v. More...
 
bool Gid2Vertex (const vid_t &gid, vertex_t &v) const override
 Convert from global id to a vertex handle. More...
 
vid_t Vertex2Gid (const vertex_t &v) const override
 Convert from vertex handle to its global id. More...
 
fid_t fid () const
 Returns the ID of this fragment. More...
 
fid_t fnum () const
 Returns the number of fragments. More...
 
- Public Member Functions inherited from grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
FragmentBase (std::shared_ptr< vertex_map_t > vm_ptr)
 
+std::shared_ptr< vertex_map_t > GetVertexMap ()
 
+const std::shared_ptr< vertex_map_t > GetVertexMap () const
 
virtual void Init (fid_t fid, bool directed, std::vector< internal::Vertex< VID_T, VDATA_T >> &vertices, std::vector< Edge< VID_T, EDATA_T >> &edges)=0
 Construct a fragment with a set of vertices and edges. More...
 
bool directed () const
 Returns true if the fragment is directed, false otherwise. More...
 
fid_t fid () const
 Returns the ID of this fragment. More...
 
fid_t fnum () const
 Returns the number of fragments. More...
 
VID_T GetVerticesNum () const
 Returns the number of vertices in this fragment. More...
 
size_t GetTotalVerticesNum () const
 Returns the number of vertices in the entire graph. More...
 
const vertices_t & Vertices () const
 Get all vertices referenced to this fragment. More...
 
bool GetVertex (const OID_T &oid, Vertex< VID_T > &v) const
 Get a vertex with original ID vid. More...
 
OID_T GetId (const Vertex< VID_T > &v) const
 Get the original ID of a vertex. More...
 
+OID_T Gid2Oid (VID_T gid) const
 
fid_t GetFragId (const Vertex< VID_T > &u) const
 Get the ID of fragment the input vertex belongs to. More...
 
virtual const VDATA_T & GetData (const Vertex< VID_T > &v) const =0
 Get the data of a vertex. More...
 
virtual void SetData (const Vertex< VID_T > &v, const VDATA_T &val)=0
 Set the data of a vertex. More...
 
+virtual fragment_adj_list_t GetIncomingAdjList (const Vertex< VID_T > &v, fid_t fid)=0
 
+virtual fragment_const_adj_list_t GetIncomingAdjList (const Vertex< VID_T > &v, fid_t fid) const =0
 
+virtual fragment_adj_list_t GetOutgoingAdjList (const Vertex< VID_T > &v, fid_t fid)=0
 
+virtual fragment_const_adj_list_t GetOutgoingAdjList (const Vertex< VID_T > &v, fid_t fid) const =0
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Protected Member Functions

+void buildCSR (const typename csr_builder_t::vertex_range_t &vertex_range, std::vector< Edge< VID_T, EDATA_T >> &edges, LoadStrategy load_strategy)
 
+template<typename IOADAPTOR_T >
void serialize (std::unique_ptr< IOADAPTOR_T > &writer)
 
+template<typename IOADAPTOR_T >
void deserialize (std::unique_ptr< IOADAPTOR_T > &reader)
 
+nbr_tget_ie_begin (const vertex_t &v)
 
+nbr_tget_ie_end (const vertex_t &v)
 
+const nbr_tget_ie_begin (const vertex_t &v) const
 
+const nbr_tget_ie_end (const vertex_t &v) const
 
+nbr_tget_oe_begin (const vertex_t &v)
 
+nbr_tget_oe_end (const vertex_t &v)
 
+const nbr_tget_oe_begin (const vertex_t &v) const
 
+const nbr_tget_oe_end (const vertex_t &v) const
 
+bool Gid2Lid (VID_T gid, VID_T &lid) const
 
+bool InnerVertexGid2Lid (VID_T gid, VID_T &lid) const
 
+bool IsInnerVertexGid (VID_T gid) const
 
+bool IsInnerVertexLid (VID_T lid) const
 
+virtual bool OuterVertexGid2Lid (VID_T gid, VID_T &lid) const=0
 
- Protected Member Functions inherited from grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
+bool IsInnerVertexGid (VID_T gid) const
 
+bool IsInnerVertexLid (VID_T lid) const
 
+bool Gid2Lid (VID_T gid, VID_T &lid) const
 
+bool InnerVertexGid2Lid (VID_T gid, VID_T &lid) const
 
+virtual bool OuterVertexGid2Lid (VID_T gid, VID_T &lid) const =0
 
+void initMirrorInfo (const CommSpec &comm_spec)
 
+template<typename IOADAPTOR_T >
void serialize (std::unique_ptr< IOADAPTOR_T > &writer)
 
+template<typename IOADAPTOR_T >
void deserialize (std::unique_ptr< IOADAPTOR_T > &reader)
 
- Protected Member Functions inherited from grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
+void init (fid_t fid, bool directed)
 
+template<typename IOADAPTOR_T >
void serialize (std::unique_ptr< IOADAPTOR_T > &writer)
 
+template<typename IOADAPTOR_T >
void deserialize (std::unique_ptr< IOADAPTOR_T > &reader)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Protected Attributes

+csr_t ie_
 
+csr_t oe_
 
+ImmutableCSR< VID_T, fid_t > idst_
 
+ImmutableCSR< VID_T, fid_t > odst_
 
+ImmutableCSR< VID_T, fid_t > iodst_
 
+bool idst_built_ = false
 
+bool odst_built_ = false
 
+bool iodst_built_ = false
 
+bool mirror_info_initialized_ = false
 
- Protected Attributes inherited from grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
+inner_vertices_t inner_vertices_
 
+outer_vertices_t outer_vertices_
 
+std::vector< sub_vertices_t > outer_vertices_of_frag_
 
+std::vector< mirror_vertices_t > mirrors_of_frag_
 
+IdParser< VID_T > id_parser_
 
+std::shared_ptr< vertex_map_t > vm_ptr_
 
- Protected Attributes inherited from grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
+fid_t fid_
 
+fid_t fnum_
 
+bool directed_
 
+VID_T ivnum_
 
+vertices_t vertices_
 
+std::shared_ptr< vertex_map_t > vm_ptr_
 
+IdParser< VID_T > id_parser_
 
+ + + + + +

+Private Types

+using csr_t = typename TRAITS_T::csr_t
 
+using csr_builder_t = typename TRAITS_T::csr_builder_t
 
+ + + + + +

+Private Member Functions

+void initDestFidList (bool in_edge, bool out_edge, ImmutableCSR< VID_T, fid_t > &csr)
 
+void buildMessageDestination (const MessageStrategy &msg_strategy)
 
+

Member Function Documentation

+ +

◆ GetEdgeNum()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + +
size_t grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetEdgeNum () const
+
+inlineoverridevirtual
+
+ +

Returns the number of edges in this fragment.

+
Returns
The number of edges in this fragment.
+ +

Implements grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+ +

◆ GetIncomingAdjList() [1/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
const_adj_list_t grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetIncomingAdjList (const vertex_tv) const
+
+inlineoverridevirtual
+
+ +

Returns the incoming adjacent vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The incoming adjacent vertices of v.
+
Attention
Only inner vertex is available.
+ +

Implements grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+ +

◆ GetIncomingAdjList() [2/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
adj_list_t grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetIncomingAdjList (const vertex_tv)
+
+inlineoverridevirtual
+
+ +

Returns the incoming adjacent vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The incoming adjacent vertices of v.
+
Attention
Only inner vertex is available.
+ +

Implements grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+ +

◆ GetInnerVerticesNum()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + +
VID_T grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetInnerVerticesNum
+
+inline
+
+ +

Returns the number of inner vertices in this fragment.

+
Returns
The number of inner vertices in this fragment.
+ +
+
+ +

◆ GetLocalInDegree()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
int grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetLocalInDegree (const vertex_tv) const
+
+inlineoverridevirtual
+
+ +

Returns the in-degree of vertex v in this fragment.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
In-degree of vertex v in this fragment.
+ +

Implements grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+ +

◆ GetLocalOutDegree()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
int grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetLocalOutDegree (const vertex_tv) const
+
+inlineoverridevirtual
+
+ +

Returns the out-degree of vertex v in this fragment.<Paste>

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
Out-degree of vertex v in this fragment.
+ +

Implements grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+ +

◆ GetOutgoingAdjList() [1/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
const_adj_list_t grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetOutgoingAdjList (const vertex_tv) const
+
+inlineoverridevirtual
+
+ +

Returns the outgoing adjacent vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The outgoing adjacent vertices of v.
+
Attention
Only inner vertex is available.
+ +

Implements grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+ +

◆ GetOutgoingAdjList() [2/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
adj_list_t grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetOutgoingAdjList (const vertex_tv)
+
+inlineoverridevirtual
+
+ +

Returns the outgoing adjacent vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The outgoing adjacent vertices of v.
+
Attention
Only inner vertex is available.
+ +

Implements grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+ +

◆ HasChild()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
bool grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::HasChild (const vertex_tv) const
+
+inlineoverridevirtual
+
+ +

Check if vertex v has a child, that is, existing an edge v->u.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
True if vertex v has a child, false otherwise.
+ +

Implements grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+ +

◆ HasParent()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
bool grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::HasParent (const vertex_tv) const
+
+inlineoverridevirtual
+
+ +

Check if vertex v has a parent, that is, existing an edge u->v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
True if vertex v has a parent, false otherwise.
+ +

Implements grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+ +

◆ IEDests()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
DestList grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::IEDests (const vertex_tv) const
+
+inlineoverridevirtual
+
+ +

Return the incoming edge destination fragment ID list of a inner vertex.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The incoming edge destination fragment ID list.
+
Attention
This method is only available when application set message strategy as kAlongIncomingEdgeToOuterVertex.
+ +

Implements grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+ +

◆ IOEDests()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
DestList grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::IOEDests (const vertex_tv) const
+
+inlineoverridevirtual
+
+ +

Return the edge destination fragment ID list of a inner vertex.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The edge destination fragment ID list.
+
Attention
This method is only available when application set message strategy as kAlongedge_toOuterVertex.
+ +

Implements grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+ +

◆ IsBorderVertex()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
bool grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::IsBorderVertex (const vertex_tv) const
+
+inline
+
+ +

Check if inner vertex v is an border vertex, that is, existing edge v->u or u->v, u is an outer vertex.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
True if vertex v is border vertex, false otherwise.
+
Attention
This method is only available when application set message strategy as kAlongEdgeToOuterVertex.
+ +
+
+ +

◆ IsIncomingBorderVertex()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
bool grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::IsIncomingBorderVertex (const vertex_tv) const
+
+inline
+
+ +

Check if inner vertex v is an incoming border vertex, that is, existing edge u->v, u is an outer vertex.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
True if vertex v is incoming border vertex, false otherwise.
+
Attention
This method is only available when application set message strategy as kAlongOutgoingEdgeToOuterVertex.
+ +
+
+ +

◆ IsInnerVertex()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + +
bool grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::IsInnerVertex
+
+inline
+
+ +

Check if vertex v is inner vertex of this fragment.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
True if vertex v is an inner vertex, false otherwise.
+ +
+
+ +

◆ IsOuterVertex()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + +
bool grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::IsOuterVertex
+
+inline
+
+ +

Check if vertex v is outer vertex of this fragment.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
True if vertex v is outer vertex, false otherwise.
+ +
+
+ +

◆ IsOutgoingBorderVertex()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
bool grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::IsOutgoingBorderVertex (const vertex_tv) const
+
+inline
+
+ +

Check if inner vertex v is an outgoing border vertex, that is, existing edge v->u, u is an outer vertex.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
True if vertex v is outgoing border vertex, false otherwise.
+
Attention
This method is only available when application set message strategy as kAlongIncomingEdgeToOuterVertex.
+ +
+
+ +

◆ OEDests()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
DestList grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::OEDests (const vertex_tv) const
+
+inlineoverridevirtual
+
+ +

Return the outgoing edge destination fragment ID list of a Vertex.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The outgoing edge destination fragment ID list.
+
Attention
This method is only available when application set message strategy as kAlongOutgoingedge_toOuterVertex.
+ +

Implements grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+ +

◆ PrepareToRunApp()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::PrepareToRunApp (const CommSpeccomm_spec,
PrepareConf conf 
)
+
+inlineoverridevirtual
+
+ +

For some kind of applications, specific data structures will be generated.

+
Parameters
+ + + +
strategy
need_split_edge
+
+
+ +

Implements grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +

Reimplemented in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >.

+ +
+
+
+ + + + diff --git a/classgrape_1_1CSREdgecutFragmentBase.png b/classgrape_1_1CSREdgecutFragmentBase.png new file mode 100644 index 0000000000000000000000000000000000000000..c2d1135a6a94f3ad82c0e34eaafa256d7d4047b7 GIT binary patch literal 2551 zcmb`JX;2dC8prW?%{0?fx!rQP*A{cHJnjp((vIdrE@kDCOJ=1ahNeb>C(Tex%RDZS zQkhWTZX$@drDeI5$daN$riLPv3aF@D?)h?O&Yk=1yfg3f{-2ru%=6{fNp4RZO?p@82#Xgy`F}kWB%r6 zp!KpgYmVJGRh}>%GwJ$j18&|%eF<;b996<&E(dQKz>B!zwgUR%k7{wmP#NZNCV!Z3 z){(G*im{QMx1x@Hi5g;-r$n;JGO+E$8{9jKvH0_#hPm(h_7XpC+@^ulb4O{toz%Iz zC4vAi=GTSmt|e?PM)_7|HLvLlm38h+Fql9W|H#R@$``m0e?22LW098sgX+%l)$5km~UOa*u z;I6gKIKmH3R-sChZ05>L*7vZIH8svOBL$;l!AI(2kD!x0cIY*4elw!bx7eBi^rpd@ zCKniNs0H`M*{ZSm9yZC#$2iJt_+*@E{61w7ads{d#fYpx$6Uu^9m_E-HQRKi8C>C& zoY`8ipULw@3*9l30UyVr299|zbsh9BXpoDKK~z8=Rof5eRpb4MC_UZwz!H8P>(%RO z7pWJ@bbtY(6l}HOP2q+?jPc%o+FYA}iLo{K46@Q#EpMhW>2Oqys#a#rA;$@|c5I9p z8+%?ouiAJ2W4K*IG(st0T6hkHU$fmDPk%jUbM}Wc71D97T`Tl#mUukr@&(hO+2ZSz z!GSLWd-CxZ6siH33%``?-!M24dH=I^??gnv3z(YE(e}KWb5)~lH)vj4{CNHFSp0>z zAq*OQ)*b?#l#=>MPz?Wvj?2>ZxV$mUK1#5xDvcT}6p_b*Wp-~x%khVv_>>B?OKy{8 z14r}G=Qb`yf{0f2IvSvc80CTnySemZ*kPAtY~MiE;*4$7#!TWi*nQcME-O7h_+G)0 z)qOz>d02jM47lHI;Uu9&g-v=sE_Lf2rXL1KSXbDtK=OwuLvR=jK!fAcrQccZ%2IUB zuvSU|6sXPvwlvua8zv;h)c}a{cN|BZ1Cm=XcbqbSasxtD@K+eVqNJ_0u~$Qx^xx0B zyPYsH%GYGOyUC~KA?0IrcKyI{ERDW^5=d53<8+-}4$QfjcnhPY(6mBiUr_WL_((%N z+^=nzg_pcLK@SwxOCDBW9Q%et>uChO^tQ5*QB7DPaLv+a}T4mg2Ff+jj1M`Fyz*puFGe)tWEq(77ztZ2^YVfKzJ`IH})#d)`?9Q0aQ zIO(8(>OIW^GkyGCAK!Fhqs`9@+mS(zS5@}u_~Q$Bm&Yv6?#zli58qCNv+ zFy=%P+lGbH!?Hq3?uePd5x!GWT<0+Sa3e)fT=OOT7}=UfPQmFy4BIS|+n>5t52VeK z2&WyQ2*k*GUMag(2vtWB!UoX05%BC?Yjx~Lp86jhhu&7902 zHf~*drKbNw#quli*Q~y?4reb}AMRf{wt0E}c6uFT{`Pntd8wFol%oA;9oKp($WHo^ z!I>b^7e(sCi@*CX-%rWiAd$dyQr$vpHX}LIMWvGf2b=)Z$|+~_=8QWPQ{|jPa2jHH z7`)}ASKe{_D@p&qVIt4AoA>X&SR9>rP&?!2jQxKO7tL8Rv+Or*TXb}7{masF6LH&W zt+NV;@WFuM`L282{fBE5VX`EA)W*vB#T-t3397?iF_pSbbp;3xR#blKQ4W9kb}xrA z>JKO}&3@y_$mF_45PkxCk7wj#44gg&&^iR}XeU6;ylJrZj1EsVL74x9SN_`gCGY?+ z?Tlq(K=LomA*jNwSDq$0T0@aj{92Xp38uT={99}sngrx-^>q0Ng4A2%yhN?p&ra3e zrfFU73mvqEI)UhUx6%(A|Ep;SwJ5FZW@P4i3d!!m(~5)}n52)pZ7osuN$LZeXFp?^ z{Hr30u2^C{LR`5y7?;rm(jM1DvyyFii1(rHJgpS{j%=7$`^lR_6Gnkt0WIaB)odd^ zN?i!+2+1Uu6+s7P%N=-nDQ8V$;^^npZ1t;yCFw)Qq4b63Sg_cAwj630#_&TV-hy5wUbCix@lB5?YUOw?Y|^LMetY*HenEIDw%x7H5pgGDLOgRMuBe$!JDQsRT2 z&5?nL-*creI})stMJ$A;%K_so(+|xoZC3L->NwfMiUz_CF(s-v-yUkIS%L$oDfa2s zD*=-}==$0wwIx0oM$N3*=3rBYQ*Vb_-2)DW_ETGQeF3Cb%F9!hDiDyh8Fh*ttI?rf zTH7HTxu}=|2)cDdiG$5YUs+J=^spuZs9~_xc;$>WS~8sF38?rM>67uuz+1l2y+4em tW&GR;to!r6UWZ&Nj#jbgZ%iFQ + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::CommSpec Member List
+
+
+ +

This is the complete list of members for grape::CommSpec, including all inherited members.

+ + + + + + + + + + + + + + + + +
__attribute__((no_sanitize_address)) CommSpec() (defined in grape::CommSpec)grape::CommSpecinline
__attribute__((no_sanitize_address)) CommSpec(const CommSpec &comm_spec) (defined in grape::CommSpec)grape::CommSpecinline
__attribute__((no_sanitize_address)) ~CommSpec() (defined in grape::CommSpec)grape::CommSpecinline
__attribute__((no_sanitize_address)) CommSpec &operator (defined in grape::CommSpec)grape::CommSpec
comm_ (defined in grape::CommSpec)grape::CommSpec
fid_ (defined in grape::CommSpec)grape::CommSpec
fnum_ (defined in grape::CommSpec)grape::CommSpec
host_worker_list_ (defined in grape::CommSpec)grape::CommSpec
local_comm_ (defined in grape::CommSpec)grape::CommSpec
local_id_ (defined in grape::CommSpec)grape::CommSpec
local_num_ (defined in grape::CommSpec)grape::CommSpec
local_owner_ (defined in grape::CommSpec)grape::CommSpec
owner_ (defined in grape::CommSpec)grape::CommSpec
worker_host_id_ (defined in grape::CommSpec)grape::CommSpec
worker_id_ (defined in grape::CommSpec)grape::CommSpec
+ + + + diff --git a/classgrape_1_1CommSpec.html b/classgrape_1_1CommSpec.html new file mode 100644 index 00000000..37101b9f --- /dev/null +++ b/classgrape_1_1CommSpec.html @@ -0,0 +1,142 @@ + + + + + + + +libgrape-lite: grape::CommSpec Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::CommSpec Class Reference
+
+
+ +

CommSpec records the mappings of fragments, workers, and the threads(tasks) in each worker. + More...

+ +

#include <comm_spec.h>

+ + + + + + + + + + +

+Public Member Functions

__attribute__ ((no_sanitize_address)) CommSpec()
 
__attribute__ ((no_sanitize_address)) CommSpec(const CommSpec &comm_spec)
 
__attribute__ ((no_sanitize_address)) ~CommSpec()
 
__attribute__ ((no_sanitize_address)) CommSpec &operator
 
+ + + + + + + + + + + + + + + + + + + + + + + +

+Public Attributes

+int worker_id_
 
+int local_num_
 
+int local_id_
 
+fid_t fid_
 
+fid_t fnum_
 
+MPI_Comm comm_
 
+MPI_Comm local_comm_
 
+bool owner_
 
+bool local_owner_
 
+std::vector< int > worker_host_id_
 
+std::vector< std::vector< int > > host_worker_list_
 
+

Detailed Description

+

CommSpec records the mappings of fragments, workers, and the threads(tasks) in each worker.

+
+ + + + diff --git a/classgrape_1_1Communicator-members.html b/classgrape_1_1Communicator-members.html new file mode 100644 index 00000000..58a5e08f --- /dev/null +++ b/classgrape_1_1Communicator-members.html @@ -0,0 +1,94 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::Communicator Member List
+
+
+ +

This is the complete list of members for grape::Communicator, including all inherited members.

+ + + + + + + + + + + + + +
AllGather(const T &msg_in, std::vector< T > &msg_out) (defined in grape::Communicator)grape::Communicatorinline
AllGather(T &&msg_in, std::vector< T > &msg_out) (defined in grape::Communicator)grape::Communicatorinline
AllReduce(const T &msg_in, T &msg_out, const FUNC_T &func) (defined in grape::Communicator)grape::Communicatorinline
comm_ (defined in grape::Communicator)grape::Communicatorprivate
Communicator() (defined in grape::Communicator)grape::Communicatorinline
InitCommunicator(MPI_Comm comm) (defined in grape::Communicator)grape::Communicatorinline
Max(const T &msg_in, T &msg_out) (defined in grape::Communicator)grape::Communicatorinline
Min(const T &msg_in, T &msg_out) (defined in grape::Communicator)grape::Communicatorinline
RecvFrom(fid_t fid, T &msg) (defined in grape::Communicator)grape::Communicatorinline
SendTo(fid_t fid, const T &msg) (defined in grape::Communicator)grape::Communicatorinline
Sum(const T &msg_in, T &msg_out) (defined in grape::Communicator)grape::Communicatorinline
~Communicator() (defined in grape::Communicator)grape::Communicatorinlinevirtual
+ + + + diff --git a/classgrape_1_1Communicator.html b/classgrape_1_1Communicator.html new file mode 100644 index 00000000..b8c79510 --- /dev/null +++ b/classgrape_1_1Communicator.html @@ -0,0 +1,135 @@ + + + + + + + +libgrape-lite: grape::Communicator Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::Communicator Class Reference
+
+
+ +

Communicator provides methods to implement distributed aggregation, such as Min/Max/Sum. + More...

+ +

#include <communicator.h>

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+void InitCommunicator (MPI_Comm comm)
 
+template<typename T >
void SendTo (fid_t fid, const T &msg)
 
+template<typename T >
void RecvFrom (fid_t fid, T &msg)
 
+template<typename T , typename FUNC_T >
void AllReduce (const T &msg_in, T &msg_out, const FUNC_T &func)
 
+template<typename T >
void AllGather (const T &msg_in, std::vector< T > &msg_out)
 
+template<typename T >
void AllGather (T &&msg_in, std::vector< T > &msg_out)
 
+template<typename T >
void Max (const T &msg_in, T &msg_out)
 
+template<typename T >
void Min (const T &msg_in, T &msg_out)
 
+template<typename T >
void Sum (const T &msg_in, T &msg_out)
 
+ + + +

+Private Attributes

+MPI_Comm comm_
 
+

Detailed Description

+

Communicator provides methods to implement distributed aggregation, such as Min/Max/Sum.

+
+ + + + diff --git a/classgrape_1_1ConstAdjList-members.html b/classgrape_1_1ConstAdjList-members.html new file mode 100644 index 00000000..1bf05527 --- /dev/null +++ b/classgrape_1_1ConstAdjList-members.html @@ -0,0 +1,96 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::ConstAdjList< VID_T, EDATA_T > Member List
+
+
+ +

This is the complete list of members for grape::ConstAdjList< VID_T, EDATA_T >, including all inherited members.

+ + + + + + + + + + + + + + + +
begin() const (defined in grape::ConstAdjList< VID_T, EDATA_T >)grape::ConstAdjList< VID_T, EDATA_T >inline
begin_ (defined in grape::ConstAdjList< VID_T, EDATA_T >)grape::ConstAdjList< VID_T, EDATA_T >private
begin_pointer() const (defined in grape::ConstAdjList< VID_T, EDATA_T >)grape::ConstAdjList< VID_T, EDATA_T >inline
ConstAdjList() (defined in grape::ConstAdjList< VID_T, EDATA_T >)grape::ConstAdjList< VID_T, EDATA_T >inline
ConstAdjList(const NbrT *b, const NbrT *e) (defined in grape::ConstAdjList< VID_T, EDATA_T >)grape::ConstAdjList< VID_T, EDATA_T >inline
Empty() const (defined in grape::ConstAdjList< VID_T, EDATA_T >)grape::ConstAdjList< VID_T, EDATA_T >inline
empty() const (defined in grape::ConstAdjList< VID_T, EDATA_T >)grape::ConstAdjList< VID_T, EDATA_T >inline
end() const (defined in grape::ConstAdjList< VID_T, EDATA_T >)grape::ConstAdjList< VID_T, EDATA_T >inline
end_ (defined in grape::ConstAdjList< VID_T, EDATA_T >)grape::ConstAdjList< VID_T, EDATA_T >private
end_pointer() const (defined in grape::ConstAdjList< VID_T, EDATA_T >)grape::ConstAdjList< VID_T, EDATA_T >inline
NbrT typedef (defined in grape::ConstAdjList< VID_T, EDATA_T >)grape::ConstAdjList< VID_T, EDATA_T >private
NotEmpty() const (defined in grape::ConstAdjList< VID_T, EDATA_T >)grape::ConstAdjList< VID_T, EDATA_T >inline
Size() const (defined in grape::ConstAdjList< VID_T, EDATA_T >)grape::ConstAdjList< VID_T, EDATA_T >inline
~ConstAdjList() (defined in grape::ConstAdjList< VID_T, EDATA_T >)grape::ConstAdjList< VID_T, EDATA_T >inline
+ + + + diff --git a/classgrape_1_1ConstAdjList.html b/classgrape_1_1ConstAdjList.html new file mode 100644 index 00000000..5b6463f5 --- /dev/null +++ b/classgrape_1_1ConstAdjList.html @@ -0,0 +1,153 @@ + + + + + + + +libgrape-lite: grape::ConstAdjList< VID_T, EDATA_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::ConstAdjList< VID_T, EDATA_T > Class Template Reference
+
+
+ +

A immutable iteratable adjencent list of a vertex. The list contains all neighbors in format of Nbr, which contains the other Node and the data on the Edge. + More...

+ +

#include <adj_list.h>

+ + + + +

+Classes

class  const_iterator
 
+ + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+DEV_HOST ConstAdjList (const NbrT *b, const NbrT *e)
 
+DEV_HOST_INLINE bool Empty () const
 
+DEV_HOST_INLINE bool NotEmpty () const
 
+DEV_HOST_INLINE size_t Size () const
 
+DEV_HOST const_iterator begin () const
 
+DEV_HOST const_iterator end () const
 
+DEV_HOST const NbrTbegin_pointer () const
 
+DEV_HOST const NbrTend_pointer () const
 
+DEV_HOST bool empty () const
 
+ + + +

+Private Types

+using NbrT = Nbr< VID_T, EDATA_T >
 
+ + + + + +

+Private Attributes

+const NbrTbegin_
 
+const NbrTend_
 
+

Detailed Description

+

template<typename VID_T, typename EDATA_T>
+class grape::ConstAdjList< VID_T, EDATA_T >

+ +

A immutable iteratable adjencent list of a vertex. The list contains all neighbors in format of Nbr, which contains the other Node and the data on the Edge.

+
Template Parameters
+ + + +
VID_T
EDATA_T
+
+
+
+ + + + diff --git a/classgrape_1_1ConstAdjList_1_1const__iterator-members.html b/classgrape_1_1ConstAdjList_1_1const__iterator-members.html new file mode 100644 index 00000000..a50004ea --- /dev/null +++ b/classgrape_1_1ConstAdjList_1_1const__iterator-members.html @@ -0,0 +1,96 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::ConstAdjList< VID_T, EDATA_T >::const_iterator Member List
+
+
+ +

This is the complete list of members for grape::ConstAdjList< VID_T, EDATA_T >::const_iterator, including all inherited members.

+ + + + + + + + + + + + + + + +
const_iterator() noexcept (defined in grape::ConstAdjList< VID_T, EDATA_T >::const_iterator)grape::ConstAdjList< VID_T, EDATA_T >::const_iteratorinline
const_iterator(const pointer_type &c) noexcept (defined in grape::ConstAdjList< VID_T, EDATA_T >::const_iterator)grape::ConstAdjList< VID_T, EDATA_T >::const_iteratorinlineexplicit
current_ (defined in grape::ConstAdjList< VID_T, EDATA_T >::const_iterator)grape::ConstAdjList< VID_T, EDATA_T >::const_iteratorprivate
operator!=(const const_iterator &rhs) noexcept (defined in grape::ConstAdjList< VID_T, EDATA_T >::const_iterator)grape::ConstAdjList< VID_T, EDATA_T >::const_iteratorinline
operator*() const noexcept (defined in grape::ConstAdjList< VID_T, EDATA_T >::const_iterator)grape::ConstAdjList< VID_T, EDATA_T >::const_iteratorinline
operator+(size_t offset) noexcept (defined in grape::ConstAdjList< VID_T, EDATA_T >::const_iterator)grape::ConstAdjList< VID_T, EDATA_T >::const_iteratorinline
operator++() noexcept (defined in grape::ConstAdjList< VID_T, EDATA_T >::const_iterator)grape::ConstAdjList< VID_T, EDATA_T >::const_iteratorinline
operator++(int) noexcept (defined in grape::ConstAdjList< VID_T, EDATA_T >::const_iterator)grape::ConstAdjList< VID_T, EDATA_T >::const_iteratorinline
operator--() noexcept (defined in grape::ConstAdjList< VID_T, EDATA_T >::const_iterator)grape::ConstAdjList< VID_T, EDATA_T >::const_iteratorinline
operator--(int) noexcept (defined in grape::ConstAdjList< VID_T, EDATA_T >::const_iterator)grape::ConstAdjList< VID_T, EDATA_T >::const_iteratorinline
operator->() const noexcept (defined in grape::ConstAdjList< VID_T, EDATA_T >::const_iterator)grape::ConstAdjList< VID_T, EDATA_T >::const_iteratorinline
operator==(const const_iterator &rhs) noexcept (defined in grape::ConstAdjList< VID_T, EDATA_T >::const_iterator)grape::ConstAdjList< VID_T, EDATA_T >::const_iteratorinline
pointer_type typedef (defined in grape::ConstAdjList< VID_T, EDATA_T >::const_iterator)grape::ConstAdjList< VID_T, EDATA_T >::const_iteratorprivate
reference_type typedef (defined in grape::ConstAdjList< VID_T, EDATA_T >::const_iterator)grape::ConstAdjList< VID_T, EDATA_T >::const_iteratorprivate
+ + + + diff --git a/classgrape_1_1ConstAdjList_1_1const__iterator.html b/classgrape_1_1ConstAdjList_1_1const__iterator.html new file mode 100644 index 00000000..d2aa6a21 --- /dev/null +++ b/classgrape_1_1ConstAdjList_1_1const__iterator.html @@ -0,0 +1,133 @@ + + + + + + + +libgrape-lite: grape::ConstAdjList< VID_T, EDATA_T >::const_iterator Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::ConstAdjList< VID_T, EDATA_T >::const_iterator Class Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+DEV_HOST const_iterator (const pointer_type &c) noexcept
 
+DEV_HOST reference_type operator* () const noexcept
 
+DEV_HOST pointer_type operator-> () const noexcept
 
+DEV_HOST const_iteratoroperator++ () noexcept
 
+DEV_HOST const_iterator operator++ (int) noexcept
 
+DEV_HOST const_iteratoroperator-- () noexcept
 
+DEV_HOST const_iterator operator-- (int) noexcept
 
+DEV_HOST const_iterator operator+ (size_t offset) noexcept
 
+DEV_HOST bool operator== (const const_iterator &rhs) noexcept
 
+DEV_HOST bool operator!= (const const_iterator &rhs) noexcept
 
+ + + + + +

+Private Types

+using pointer_type = const NbrT *
 
+using reference_type = const NbrT &
 
+ + + +

+Private Attributes

+const NbrTcurrent_
 
+
+ + + + diff --git a/classgrape_1_1ContextBase-members.html b/classgrape_1_1ContextBase-members.html new file mode 100644 index 00000000..73b355ca --- /dev/null +++ b/classgrape_1_1ContextBase-members.html @@ -0,0 +1,85 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::ContextBase Member List
+
+
+ +

This is the complete list of members for grape::ContextBase, including all inherited members.

+ + + + +
ContextBase()=default (defined in grape::ContextBase)grape::ContextBase
Output(std::ostream &os)grape::ContextBaseinlinevirtual
~ContextBase()=default (defined in grape::ContextBase)grape::ContextBasevirtual
+ + + + diff --git a/classgrape_1_1ContextBase.html b/classgrape_1_1ContextBase.html new file mode 100644 index 00000000..7c002d32 --- /dev/null +++ b/classgrape_1_1ContextBase.html @@ -0,0 +1,144 @@ + + + + + + + +libgrape-lite: grape::ContextBase Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::ContextBase Class Reference
+
+
+ +

ContextBase is the base class for all user-defined contexts. A context manages data through the whole computation. The data won't be cleared during supersteps. + More...

+ +

#include <context_base.h>

+
+Inheritance diagram for grape::ContextBase:
+
+
+ + +grape::MutationContext< FRAG_T > +grape::VertexDataContext< FRAG_T, DATA_T > +grape::VoidContext< FRAG_T > + +
+ + + + + +

+Public Member Functions

virtual void Output (std::ostream &os)
 Output function to implement for result output. More...
 
+

Detailed Description

+

ContextBase is the base class for all user-defined contexts. A context manages data through the whole computation. The data won't be cleared during supersteps.

+

Member Function Documentation

+ +

◆ Output()

+ +
+
+ + + + + +
+ + + + + + + + +
virtual void grape::ContextBase::Output (std::ostream & os)
+
+inlinevirtual
+
+ +

Output function to implement for result output.

+
Note
: This pure virtual function works as an interface, instructing users to implement in their defined context. The Output in the inherited apps would be invoked directly, not via virtual functions.
+
Parameters
+ + + +
frag
os
+
+
+ +
+
+
+ + + + diff --git a/classgrape_1_1ContextBase.png b/classgrape_1_1ContextBase.png new file mode 100644 index 0000000000000000000000000000000000000000..55773a09d697e9507525386f0157b20b5a877e12 GIT binary patch literal 1751 zcmc(gc~H|w6vrc%98wMiIYg+8P{n{EmsUiSR3kU!7X%DAL;3?_+%*hN+nQp!mkS7^|1aX=w9H#Z@i;RzyApQS;x)!W+Iq)Bge zp{Z=Ro0B^XGWy(DFHoj1m`otj&K7lj+x#duvhe&a#AGT%gTAS+J0;x^sVP}kTGRMY zg(9Cc>%(hRo?wP!hT?N%S>`_hNd)%R#mO)Ncc!|+!xTIc2T z4?Q;_R_V+(;}!eLY*LoL^D`C=*_`2OQzLWe&FVZPRc71r1SPsL?!7t*o4C*QQb)9@b_!!sjzJl;>0rw5xH^5^Cc=d{8! zdCprW?~l&Lh&RzqTOsI}3z-RlXk`>~fU#_igiK=e|0|6Dit|4ngP62aN>+J7Il~;% z!%n4fiV{**N&cTT`Pyq$3uskuYwui!8N^mw{AIdmS~@tp%c*qmKrSRow_rxUePu>6 z2v&8ZAb6)TgJTT_q`d#HrB5N*YjnO%g8R5|oulkX7#BJgKH-b#BszEy1;90Sy8=KN z=%wrk0FD_n5QMwgK~(qz1d&uUKtm*zL1YF1=14XO)}2#8pEUp4WpNac;E7+Gqt6;VCY2CV4q5blP;HRXhM|M!RQD zUM`=`=$_$qc72z)0t^# zk~X;%{Av!5bw`N=Xh5*b2(gqKJHRJiQR*-Xe;<@5AKjFWB&=tVTLJ~(f+@$(euhQH zpid$P2*Q}~k-cM`obvK6i<}eaRjZZZe%TDXrS05B)csooeBmASacR$8e zr}u0`p(+CBHKkcVMfLSxALh)C;gg#m&;}}m-NQ!cO{M*{_UuZo_LzQA@u>Gm-y4EB zifYkaenbpvhLaZVe(CSpyIretrM{mcbkfg^cc5Aj$`rFiko)rS z?qOf!N7mFjmHP}bJbJapqT)~=Pj zz|<_0S*?aV3;`$3pzAWd*U7z>H5ND6S+AN11ma+w9V6u~g5W+F%FcH^j8p$ZOT(t$ zfjyGq@S`A)oKpGpEZe7g?HdXc{>YSofS)u`Znm8x&=Z#uU#=j?!<|Yu?*X*YAj%ygWXK6$Q*A z%2OpoZ&jm@VS95Hs_%dx)4wHgLsJ@GA?A3B)ZzsdWQO)ykWoW(g)e`Fi&)xpa{;Ds zfzzw;mZ%LYY(Z#5f@*X_6`U{Pt_@#tcL7-MID~nR3+p~m#>ecmF@chtm>&#+p&3w8 z;?nm)r23`h!XXO?;|X-WXn)bZIT2k6szdv&I_x1 + + + + + + +libgrape-lite: grape::DeMutableCSR< VID_T, NBR_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::DeMutableCSR< VID_T, NBR_T > Class Template Reference
+
+
+
+ + + + diff --git a/classgrape_1_1DeMutableCSRBuilder.html b/classgrape_1_1DeMutableCSRBuilder.html new file mode 100644 index 00000000..2fdac699 --- /dev/null +++ b/classgrape_1_1DeMutableCSRBuilder.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: grape::DeMutableCSRBuilder< VID_T, NBR_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::DeMutableCSRBuilder< VID_T, NBR_T > Class Template Reference
+
+
+
+ + + + diff --git a/classgrape_1_1DeMutableCSRBuilder_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4-members.html b/classgrape_1_1DeMutableCSRBuilder_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4-members.html new file mode 100644 index 00000000..1ceb7c5f --- /dev/null +++ b/classgrape_1_1DeMutableCSRBuilder_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4-members.html @@ -0,0 +1,102 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > > Member List
+
+
+ +

This is the complete list of members for grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + +
add_edge(VID_T src, const Nbr< VID_T, EDATA_T > &nbr) (defined in grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >inline
build_offsets() (defined in grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >inline
dedup_ (defined in grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >private
DeMutableCSRBuilder() (defined in grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >inline
finish(DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T >> &ret) (defined in grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >inline
head_builder_ (defined in grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >private
head_index(vid_t i) const (defined in grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >inlineprivate
in_head(vid_t i) const (defined in grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >inlineprivate
inc_degree(VID_T i) (defined in grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >inline
init(VID_T min_id, VID_T max_head, VID_T min_tail, VID_T max_id, bool dedup=false) (defined in grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >inline
init(const vertex_range_t &range, bool dedup=false) (defined in grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >inline
max_head_id_ (defined in grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >private
max_id_ (defined in grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >private
min_id_ (defined in grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >private
min_tail_id_ (defined in grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >private
tail_builder_ (defined in grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >private
tail_index(vid_t i) const (defined in grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >inlineprivate
vertex_range_t typedef (defined in grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >
vid_t typedef (defined in grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >private
~DeMutableCSRBuilder() (defined in grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >inline
+ + + + diff --git a/classgrape_1_1DeMutableCSRBuilder_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4.html b/classgrape_1_1DeMutableCSRBuilder_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4.html new file mode 100644 index 00000000..c04876bc --- /dev/null +++ b/classgrape_1_1DeMutableCSRBuilder_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4.html @@ -0,0 +1,156 @@ + + + + + + + +libgrape-lite: grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > > Class Template Reference
+
+
+ + + + +

+Public Types

+using vertex_range_t = DualVertexRange< VID_T >
 
+ + + + + + + + + + + + + +

+Public Member Functions

+void init (VID_T min_id, VID_T max_head, VID_T min_tail, VID_T max_id, bool dedup=false)
 
+void init (const vertex_range_t &range, bool dedup=false)
 
+void inc_degree (VID_T i)
 
+void build_offsets ()
 
+void add_edge (VID_T src, const Nbr< VID_T, EDATA_T > &nbr)
 
+void finish (DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T >> &ret)
 
+ + + +

+Private Types

+using vid_t = VID_T
 
+ + + + + + + +

+Private Member Functions

+bool in_head (vid_t i) const
 
+vid_t head_index (vid_t i) const
 
+vid_t tail_index (vid_t i) const
 
+ + + + + + + + + + + + + + + +

+Private Attributes

+VID_T min_id_
 
+VID_T max_id_
 
+VID_T max_head_id_
 
+VID_T min_tail_id_
 
+bool dedup_
 
+MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > > head_builder_
 
+MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > > tail_builder_
 
+
+ + + + diff --git a/classgrape_1_1DeMutableCSR_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4-members.html b/classgrape_1_1DeMutableCSR_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4-members.html new file mode 100644 index 00000000..38778bbc --- /dev/null +++ b/classgrape_1_1DeMutableCSR_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4-members.html @@ -0,0 +1,143 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > > Member List
+
+
+ +

This is the complete list of members for grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
add_edges(const std::vector< edge_t > &edges) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
add_edges_dense(const std::vector< edge_t > &edges) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inlineprivate
add_edges_sparse(const std::vector< edge_t > &edges) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inlineprivate
add_forward_edges(const std::vector< edge_t > &edges) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
add_forward_edges_dense(const std::vector< edge_t > &edges) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inlineprivate
add_forward_edges_sparse(const std::vector< edge_t > &edges) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inlineprivate
add_reversed_edges(const std::vector< edge_t > &edges) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
add_reversed_edges_dense(const std::vector< edge_t > &edges) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inlineprivate
add_reversed_edges_sparse(const std::vector< edge_t > &edges) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inlineprivate
add_vertices(vid_t to_head, vid_t to_tail) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
adj_list_t typedef (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >
binary_find(VID_T i, VID_T nbr) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
binary_find(VID_T i, VID_T nbr) const (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
clear_edges() (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
dedup_ (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >private
degree(VID_T i) const (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
DeMutableCSR() (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
DeMutableCSR(vid_t from, vid_t to, bool dedup=false) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
DeMutableCSRBuilder (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >friend
dense_threshold (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >static
Deserialize(std::unique_ptr< IOADAPTOR_T > &reader) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
edge_num() const (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
edge_t typedef (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >
empty() const (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
find(VID_T i, VID_T nbr) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
find(VID_T i, VID_T nbr) const (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
get_begin(vid_t i) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
get_begin(vid_t i) const (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
get_end(vid_t i) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
get_end(vid_t i) const (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
get_index(vid_t i) const (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
head_ (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >private
head_edge_num() const (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
head_index(vid_t i) const (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
in_head(vid_t i) const (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
init_head_and_tail(vid_t min, vid_t max, bool dedup=false) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
is_empty(VID_T i) const (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
max_head_id_ (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >private
max_id_ (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >private
min_id_ (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >private
min_tail_id_ (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >private
nbr_t typedef (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >
put_edge(vid_t src, const nbr_t &value) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
put_edge(vid_t src, nbr_t &&value) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
remove_edges(const std::vector< edge_t > &edges) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
remove_edges(const std::vector< std::pair< vid_t, vid_t >> &edges) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
remove_if(const FUNC_T &func) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
remove_reversed_edges(const std::vector< std::pair< vid_t, vid_t >> &edges) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
remove_vertex(VID_T i) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
reserve_edges_dense(const std::vector< int > &head_degree_to_add, const std::vector< int > &tail_degree_to_add) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
reserve_edges_sparse(const std::map< vid_t, int > &degree_to_add) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
Serialize(std::unique_ptr< IOADAPTOR_T > &writer) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
sort_neighbors_dense(const std::vector< int > &head_degree_to_add, const std::vector< int > &tail_degree_to_add) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
sort_neighbors_sparse(const std::map< vid_t, int > &degree_to_add) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
tail_ (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >private
tail_edge_num() const (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
tail_index(vid_t i) const (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
update_edges(const std::vector< edge_t > &edges) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
update_reversed_edges(const std::vector< edge_t > &edges) (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
vertex_num() const (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
vid_t typedef (defined in grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >
+ + + + diff --git a/classgrape_1_1DeMutableCSR_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4.html b/classgrape_1_1DeMutableCSR_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4.html new file mode 100644 index 00000000..277e7787 --- /dev/null +++ b/classgrape_1_1DeMutableCSR_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4.html @@ -0,0 +1,290 @@ + + + + + + + +libgrape-lite: grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > > Class Template Reference
+
+
+ + + + + + + + + + +

+Public Types

+using vid_t = VID_T
 
+using nbr_t = Nbr< vid_t, EDATA_T >
 
+using edge_t = Edge< vid_t, EDATA_T >
 
+using adj_list_t = AdjList< vid_t, EDATA_T >
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

DeMutableCSR (vid_t from, vid_t to, bool dedup=false)
 
+VID_T vertex_num () const
 
+bool empty () const
 
+size_t edge_num () const
 
+size_t head_edge_num () const
 
+size_t tail_edge_num () const
 
+int degree (VID_T i) const
 
+void remove_vertex (VID_T i)
 
+bool is_empty (VID_T i) const
 
+bool in_head (vid_t i) const
 
+vid_t head_index (vid_t i) const
 
+vid_t tail_index (vid_t i) const
 
+vid_t get_index (vid_t i) const
 
+nbr_tget_begin (vid_t i)
 
+const nbr_tget_begin (vid_t i) const
 
+nbr_tget_end (vid_t i)
 
+const nbr_tget_end (vid_t i) const
 
+nbr_tfind (VID_T i, VID_T nbr)
 
+const nbr_tfind (VID_T i, VID_T nbr) const
 
+nbr_tbinary_find (VID_T i, VID_T nbr)
 
+const nbr_tbinary_find (VID_T i, VID_T nbr) const
 
+void add_vertices (vid_t to_head, vid_t to_tail)
 
+void add_edges (const std::vector< edge_t > &edges)
 
+void add_forward_edges (const std::vector< edge_t > &edges)
 
+void add_reversed_edges (const std::vector< edge_t > &edges)
 
+void init_head_and_tail (vid_t min, vid_t max, bool dedup=false)
 
+void reserve_edges_dense (const std::vector< int > &head_degree_to_add, const std::vector< int > &tail_degree_to_add)
 
+void reserve_edges_sparse (const std::map< vid_t, int > &degree_to_add)
 
+nbr_tput_edge (vid_t src, const nbr_t &value)
 
+nbr_tput_edge (vid_t src, nbr_t &&value)
 
+void sort_neighbors_dense (const std::vector< int > &head_degree_to_add, const std::vector< int > &tail_degree_to_add)
 
+void sort_neighbors_sparse (const std::map< vid_t, int > &degree_to_add)
 
+void remove_edges (const std::vector< edge_t > &edges)
 
+void remove_edges (const std::vector< std::pair< vid_t, vid_t >> &edges)
 
+void remove_reversed_edges (const std::vector< std::pair< vid_t, vid_t >> &edges)
 
+template<typename FUNC_T >
void remove_if (const FUNC_T &func)
 
+void update_edges (const std::vector< edge_t > &edges)
 
+void update_reversed_edges (const std::vector< edge_t > &edges)
 
+void clear_edges ()
 
+template<typename IOADAPTOR_T >
void Serialize (std::unique_ptr< IOADAPTOR_T > &writer)
 
+template<typename IOADAPTOR_T >
void Deserialize (std::unique_ptr< IOADAPTOR_T > &reader)
 
+ + + +

+Static Public Attributes

+static constexpr double dense_threshold = 0.003
 
+ + + + + + + + + + + + + +

+Private Member Functions

+void add_reversed_edges_dense (const std::vector< edge_t > &edges)
 
+void add_forward_edges_dense (const std::vector< edge_t > &edges)
 
+void add_edges_dense (const std::vector< edge_t > &edges)
 
+void add_edges_sparse (const std::vector< edge_t > &edges)
 
+void add_forward_edges_sparse (const std::vector< edge_t > &edges)
 
+void add_reversed_edges_sparse (const std::vector< edge_t > &edges)
 
+ + + + + + + + + + + + + + + +

+Private Attributes

+vid_t min_id_
 
+vid_t max_id_
 
+vid_t max_head_id_
 
+vid_t min_tail_id_
 
+bool dedup_
 
+MutableCSR< VID_T, Nbr< VID_T, EDATA_T > > head_
 
+MutableCSR< VID_T, Nbr< VID_T, EDATA_T > > tail_
 
+ + + + +

+Friends

+template<typename _VID_T , typename _NBR_T >
class DeMutableCSRBuilder
 
+
+ + + + diff --git a/classgrape_1_1DefaultAllocator-members.html b/classgrape_1_1DefaultAllocator-members.html new file mode 100644 index 00000000..0bb14de1 --- /dev/null +++ b/classgrape_1_1DefaultAllocator-members.html @@ -0,0 +1,93 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::DefaultAllocator< _Tp > Member List
+
+
+ +

This is the complete list of members for grape::DefaultAllocator< _Tp >, including all inherited members.

+ + + + + + + + + + + + +
allocate(size_type __n) (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
deallocate(pointer __p, size_type) (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
DefaultAllocator() noexcept (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
DefaultAllocator(const DefaultAllocator &) noexcept (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
DefaultAllocator(DefaultAllocator &&) noexcept (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
operator=(const DefaultAllocator &) noexcept (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
operator=(DefaultAllocator &&) noexcept (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
pointer typedef (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >
size_type typedef (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >
value_type typedef (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >
~DefaultAllocator() noexcept (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
+ + + + diff --git a/classgrape_1_1DefaultAllocator.html b/classgrape_1_1DefaultAllocator.html new file mode 100644 index 00000000..ac01d563 --- /dev/null +++ b/classgrape_1_1DefaultAllocator.html @@ -0,0 +1,144 @@ + + + + + + + +libgrape-lite: grape::DefaultAllocator< _Tp > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::DefaultAllocator< _Tp > Class Template Reference
+
+
+ +

Allocator used for grape containers, i.e., <Array>. + More...

+ +

#include <default_allocator.h>

+
+Inheritance diagram for grape::DefaultAllocator< _Tp >:
+
+
+ + +grape::Bitset +grape::FixedInArchive +grape::MessageBuffer + +
+ + + + + + + + +

+Public Types

+using pointer = _Tp *
 
+using size_type = size_t
 
+using value_type = _Tp
 
+ + + + + + + + + + + + + +

+Public Member Functions

DefaultAllocator (const DefaultAllocator &) noexcept
 
DefaultAllocator (DefaultAllocator &&) noexcept
 
+DefaultAllocatoroperator= (const DefaultAllocator &) noexcept
 
+DefaultAllocatoroperator= (DefaultAllocator &&) noexcept
 
+pointer allocate (size_type __n)
 
+void deallocate (pointer __p, size_type)
 
+

Detailed Description

+

template<typename _Tp>
+class grape::DefaultAllocator< _Tp >

+ +

Allocator used for grape containers, i.e., <Array>.

+
Template Parameters
+ + +
_Tp
+
+
+
+ + + + diff --git a/classgrape_1_1DefaultAllocator.png b/classgrape_1_1DefaultAllocator.png new file mode 100644 index 0000000000000000000000000000000000000000..0f001eac3c60368d522306d6bae7384be17f3f4a GIT binary patch literal 1406 zcmeAS@N?(olHy`uVBq!ia0y~yU~&br12~w0q=L%FPe4i{z$e7@|Ns9$=8HF9OZyK^ z0J6aNz<~p-op~2`TgvW7~_{lT_yvDuQ!w!m;?F| z%=0^Ac+S_qW>olVbMC(L>HB-FYxaD8oipQlFVx`OjH?{+v#@y4cz5CGjVj5{(Yb`jGuH9i*XH zFHUl4lvVGK+ zT?wVvgAPVoWhnU<`2&40W0GsX-Q;OYmMnGcel#cN*QG;F^R+F+^*my=y#hCAgz15N z+2nfr-{iA>i>qaI=WdT&6|*&_n<3BZOwJ0~%u-{wm4UVbh*t$EMEquqyoz5iM#lJsxujdwYM4)Q8HPh7g> zJFUzt3FumdvMqHwRiS$#>VZ<%kMvDTKf0CU07K2AeLFX}GSnt?Gw?XrZUc&3Nk%Y@ zc@7r@Gw>X^p9YKuwgp_#EC~#&W~yZasjQ8zK#^JPF4us1LVz~#95BD3h#F5wQHGP5 zal*uR^2}wKS$qe4e+sYP*vyd8A~!v)}+?Mh07;L!}-m z05J>0mj+#?j1D3-)TPNB|7f(VQ0DmQ0)fXCeaClLbOcVy^PI)txl6TPg+tw8(yYX8 zm6eLyJSJ5g5c3Rj&Y7rUdIZSe|0CYr_I&^I@2{0L>pm5GTAg~Y{$T6HLwe8Wu4~&~ z{A^;eVywWCpYGB^BIoaWToU}(?`pW>obIG0vPRu)Z=bA+SXUu>N#FCA$D{=XC0aA| zb*pl|)}Efe=kvpAe@~Ib$>;Bjoqm2;-^6NigRpdO*Ad=*`tzM5BDcgAUVD4=`3F4? zrHvYS_CII4Y|)wg?zg2`|M_Bj%dc}?9Xl_uKKuMcXW!xGDYag*ev|r&lo->^X7QhK zU%mdvF0t@4DU+7iuH#Tz_3d)8|MbYnC5};_Ej#peqik2rWtX^>H*3}Zyo)D$^-5DG z_nui)@i*<-`{)vlj!CYS$4@bNKc2>xJ8?;D-Ni-U{WjI6%Ico*=V>$9|7|9`Cxd=&kNP zO}$AaO~#xVy8=CLElw2J|D9#uyNvG}R=jls>Tz?F$qJcN(y`t;YTs19?7+*tUYF$7 zHd$QAQGF?Kzud$#>+s1m1<$`9-J1%SR8~p?(~VRTFafc{(hVp9eLZk^5irSBPf|$$ hCck-qIu-sgrWaMpoehuv4lFDgJYD@<);T3K0RUpUa?$_* literal 0 HcmV?d00001 diff --git a/classgrape_1_1DefaultMessageManager-members.html b/classgrape_1_1DefaultMessageManager-members.html new file mode 100644 index 00000000..b981184e --- /dev/null +++ b/classgrape_1_1DefaultMessageManager-members.html @@ -0,0 +1,121 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::DefaultMessageManager Member List
+
+
+ +

This is the complete list of members for grape::DefaultMessageManager, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
comm_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
comm_spec_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
cur_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
DefaultMessageManager() (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerinline
fid() const (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerinlineprotected
fid_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
Finalize() overridegrape::DefaultMessageManagerinlinevirtual
FinishARound() overridegrape::DefaultMessageManagerinlinevirtual
fnum() const (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerinlineprotected
fnum_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
force_continue_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
force_terminate_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
ForceContinue() overridegrape::DefaultMessageManagerinlinevirtual
ForceTerminate(const std::string &terminate_info) overridegrape::DefaultMessageManagerinlinevirtual
GetMessage(MESSAGE_T &msg)grape::DefaultMessageManagerinline
GetMessage(const GRAPH_T &frag, typename GRAPH_T::vertex_t &v, MESSAGE_T &msg)grape::DefaultMessageManagerinline
GetMsgSize() const overridegrape::DefaultMessageManagerinlinevirtual
GetTerminateInfo() const overridegrape::DefaultMessageManagerinlinevirtual
Init(MPI_Comm comm) overridegrape::DefaultMessageManagerinlinevirtual
lengths_in_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
lengths_out_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
MessageManagerBase() (defined in grape::MessageManagerBase)grape::MessageManagerBaseinline
reqs_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
SendMsgThroughEdges(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)grape::DefaultMessageManagerinline
SendMsgThroughIEdges(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)grape::DefaultMessageManagerinline
SendMsgThroughOEdges(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)grape::DefaultMessageManagerinline
SendToFragment(fid_t dst_fid, const MESSAGE_T &msg)grape::DefaultMessageManagerinline
sent_size_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
Start() overridegrape::DefaultMessageManagerinlinevirtual
StartARound() overridegrape::DefaultMessageManagerinlinevirtual
syncLengths() (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerinlineprivate
SyncStateOnOuterVertex(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)grape::DefaultMessageManagerinline
terminate_info_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
to_recv_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
to_send_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprotected
to_terminate_ (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerprivate
ToTerminate() overridegrape::DefaultMessageManagerinlinevirtual
~DefaultMessageManager() override (defined in grape::DefaultMessageManager)grape::DefaultMessageManagerinline
~MessageManagerBase() (defined in grape::MessageManagerBase)grape::MessageManagerBaseinlinevirtual
+ + + + diff --git a/classgrape_1_1DefaultMessageManager.html b/classgrape_1_1DefaultMessageManager.html new file mode 100644 index 00000000..b300507f --- /dev/null +++ b/classgrape_1_1DefaultMessageManager.html @@ -0,0 +1,646 @@ + + + + + + + +libgrape-lite: grape::DefaultMessageManager Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+ +
+ +

Default message manager. + More...

+ +

#include <default_message_manager.h>

+
+Inheritance diagram for grape::DefaultMessageManager:
+
+
+ + +grape::MessageManagerBase +grape::AutoParallelMessageManager< FRAG_T > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+void Init (MPI_Comm comm) override
 Inherit.
 
+void Start () override
 Inherit.
 
+void StartARound () override
 Inherit.
 
+void FinishARound () override
 Inherit.
 
+bool ToTerminate () override
 Inherit.
 
+void Finalize () override
 Inherit.
 
+size_t GetMsgSize () const override
 Inherit.
 
+void ForceContinue () override
 Inherit.
 
+void ForceTerminate (const std::string &terminate_info) override
 Inherit.
 
+const TerminateInfoGetTerminateInfo () const override
 Inherit.
 
template<typename MESSAGE_T >
void SendToFragment (fid_t dst_fid, const MESSAGE_T &msg)
 Send message to a fragment. More...
 
template<typename GRAPH_T , typename MESSAGE_T >
void SyncStateOnOuterVertex (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)
 Communication by synchronizing the status on outer vertices, for edge-cut fragments. More...
 
template<typename GRAPH_T , typename MESSAGE_T >
void SendMsgThroughIEdges (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)
 Communication via a crossing edge a<-c. It sends message from a to c. More...
 
template<typename GRAPH_T , typename MESSAGE_T >
void SendMsgThroughOEdges (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)
 Communication via a crossing edge a->b. It sends message from a to b. More...
 
template<typename GRAPH_T , typename MESSAGE_T >
void SendMsgThroughEdges (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)
 Communication via crossing edges a->b and a<-c. It sends message from a to b and c. More...
 
template<typename MESSAGE_T >
bool GetMessage (MESSAGE_T &msg)
 Get a message from message buffer. More...
 
template<typename GRAPH_T , typename MESSAGE_T >
bool GetMessage (const GRAPH_T &frag, typename GRAPH_T::vertex_t &v, MESSAGE_T &msg)
 Get a message and its target vertex from message buffer. More...
 
+ + + + + +

+Protected Member Functions

+fid_t fid () const
 
+fid_t fnum () const
 
+ + + +

+Protected Attributes

+std::vector< InArchiveto_send_
 
+ + + +

+Private Member Functions

+bool syncLengths ()
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Private Attributes

+std::vector< OutArchiveto_recv_
 
+fid_t cur_
 
+std::vector< size_t > lengths_out_
 
+std::vector< size_t > lengths_in_
 
+std::vector< MPI_Request > reqs_
 
+MPI_Comm comm_
 
+fid_t fid_
 
+fid_t fnum_
 
+CommSpec comm_spec_
 
+size_t sent_size_
 
+bool to_terminate_
 
+bool force_continue_
 
+bool force_terminate_
 
+TerminateInfo terminate_info_
 
+

Detailed Description

+

Default message manager.

+

The send and recv methods are not thread-safe.

+

Member Function Documentation

+ +

◆ GetMessage() [1/2]

+ +
+
+
+template<typename GRAPH_T , typename MESSAGE_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
bool grape::DefaultMessageManager::GetMessage (const GRAPH_T & frag,
typename GRAPH_T::vertex_t & v,
MESSAGE_T & msg 
)
+
+inline
+
+ +

Get a message and its target vertex from message buffer.

+
Template Parameters
+ + + +
GRAPH_T
MESSAGE_T
+
+
+
Parameters
+ + + + +
frag
v
msg
+
+
+
Returns
Return true if got a message, and false if no message left.
+ +
+
+ +

◆ GetMessage() [2/2]

+ +
+
+
+template<typename MESSAGE_T >
+ + + + + +
+ + + + + + + + +
bool grape::DefaultMessageManager::GetMessage (MESSAGE_T & msg)
+
+inline
+
+ +

Get a message from message buffer.

+
Template Parameters
+ + +
MESSAGE_T
+
+
+
Parameters
+ + +
msg
+
+
+
Returns
Return true if got a message, and false if no message left.
+ +
+
+ +

◆ SendMsgThroughEdges()

+ +
+
+
+template<typename GRAPH_T , typename MESSAGE_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void grape::DefaultMessageManager::SendMsgThroughEdges (const GRAPH_T & frag,
const typename GRAPH_T::vertex_t & v,
const MESSAGE_T & msg 
)
+
+inline
+
+ +

Communication via crossing edges a->b and a<-c. It sends message from a to b and c.

+
Template Parameters
+ + + +
GRAPH_T
MESSAGE_T
+
+
+
Parameters
+ + + + +
frag
va
msg
+
+
+ +
+
+ +

◆ SendMsgThroughIEdges()

+ +
+
+
+template<typename GRAPH_T , typename MESSAGE_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void grape::DefaultMessageManager::SendMsgThroughIEdges (const GRAPH_T & frag,
const typename GRAPH_T::vertex_t & v,
const MESSAGE_T & msg 
)
+
+inline
+
+ +

Communication via a crossing edge a<-c. It sends message from a to c.

+
Template Parameters
+ + + +
GRAPH_T
MESSAGE_T
+
+
+
Parameters
+ + + + +
frag
va
msg
+
+
+ +
+
+ +

◆ SendMsgThroughOEdges()

+ +
+
+
+template<typename GRAPH_T , typename MESSAGE_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void grape::DefaultMessageManager::SendMsgThroughOEdges (const GRAPH_T & frag,
const typename GRAPH_T::vertex_t & v,
const MESSAGE_T & msg 
)
+
+inline
+
+ +

Communication via a crossing edge a->b. It sends message from a to b.

+
Template Parameters
+ + + +
GRAPH_T
MESSAGE_T
+
+
+
Parameters
+ + + + +
frag
va
msg
+
+
+ +
+
+ +

◆ SendToFragment()

+ +
+
+
+template<typename MESSAGE_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void grape::DefaultMessageManager::SendToFragment (fid_t dst_fid,
const MESSAGE_T & msg 
)
+
+inline
+
+ +

Send message to a fragment.

+
Template Parameters
+ + +
MESSAGE_TMessage type.
+
+
+
Parameters
+ + + +
dst_fidDestination fragment id.
msg
+
+
+ +
+
+ +

◆ SyncStateOnOuterVertex()

+ +
+
+
+template<typename GRAPH_T , typename MESSAGE_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void grape::DefaultMessageManager::SyncStateOnOuterVertex (const GRAPH_T & frag,
const typename GRAPH_T::vertex_t & v,
const MESSAGE_T & msg 
)
+
+inline
+
+ +

Communication by synchronizing the status on outer vertices, for edge-cut fragments.

+

Assume a fragment F_1, a crossing edge a->b' in F_1 and a is an inner vertex in F_1. This function invoked on F_1 send status on b' to b on F_2, where b is an inner vertex.

+
Template Parameters
+ + + +
GRAPH_T
MESSAGE_T
+
+
+
Parameters
+ + + + +
frag
va
msg
+
+
+ +
+
+
+ + + + diff --git a/classgrape_1_1DefaultMessageManager.png b/classgrape_1_1DefaultMessageManager.png new file mode 100644 index 0000000000000000000000000000000000000000..bec9b06dfdd6725df5894ecc4e566a5125e219bc GIT binary patch literal 1570 zcmb`HdpOg39LIliIiWf#dWaLLnU;f2{F*q(Eq?e>V|iREU1wu)Y>2r%g@;O<(QU4W zZH1a7CK|d3spJ-AE=P&6uxu8_&h%HEf6w_m&-e3veV_N|c|L!2xMNyvPsWngJm-ayqA7`0NCdUbZI5P7|mYlwwrluz4be_KasY1be zdIR#J)#!cUvj+f_DBxFzu(HyYZ$P@+&Qd=;F9mS1EPi?!(&Cm7u$mZjE`rfXQ7ynQ8v zUF{uAFmdnomDtF(8hX}+p{bdn4IJNo4SL{q(>4<>8+AQVBiKQ@ys~?4yT9)h-O+jr z*pEFkbZ7qb`%kerEx1TkC|Pxj!`sR*{b^*g}LDv|Mu|7d5w zcBGlk@`g@XM9wF(n}fsDmTL{)5*LfP1Z(~$^RZ>Tr*`4gV+aEe6olBG(!JF;Farl< zn(gCDZFwPXUE_Ic6N-zF=+R0pKb_ZcwMC;D2^G#db@o0y+OZrM^ZP*$nn*QMGatFk zfnb^@jgCYkK?v(gq%pD%d83&~W=;gq#1SgE0#{sNU}J@Etb)oalrTj~;T}YVuSq#d z8)$UE0jsg!m8hTs!GJ-j>NX^ZNM@jtvU>iD_$7m$dR&`!Tsw7#Hn1rv{>K&{B_O;e zr5@<-=r6E!Upt~$ld*P>XJ!b^m+g#e1HNDBd zh#IOUrwRW2+}ZLrUMO2Yh;V+tE=X?ipq65I$}J0cNwnw*_mb!}wzz2gi)X&hec$8+ zD_H}Jb#c;!T3>gJlFLd6H{ZWGLNxqJQJBtcdpR%`m`@qx5-wTxa5$Kh1l}ga+UGlr z2IFo#lD)M5VBD$~MwTq7PN@f&bF*Jl?i_nVPa=UvTbm50gNZH;;$M@zEHSO-Xq$VO zWhRSUO|I(FGp@6mm-u>Hqnh-_V-*GARTIF9`j2+B-X>_L8f-~DZV8MGoI@Z17rCC+ zXKaH|T7^z*tb!#9M8xfP`+q(CZd4Wyz|5R4ryseY$Lfn*vD=}g)o=R!7`7_Ij*Y)b zrP+*Y!uxy<7**$veU-97%NCEP1r`Q(7c5p^$m_GH^%)dN&U6OT{i%lyOFucZvd0!e z5>DhtMJL1EHy(RsN+d{%bf3*LLyTP_KPcABcYNp4HgZYV15wnl`%@>-02jrM7MrSD zRAaAzChr=@xz(_{PS42nl4s;?Qm7eY@^7J=ym6}cM2kr!kzP+1c+R&CJ;HOA3alz+Z|jd798HRP{jPax5MGU)%_uUo*YSU0R2dW}@EV + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::DeltaVarintDecoder< T > Member List
+
+
+ +

This is the complete list of members for grape::DeltaVarintDecoder< T >, including all inherited members.

+ + + + + + + + + + + +
decoder() (defined in grape::DeltaVarintDecoder< T >)grape::DeltaVarintDecoder< T >inline
decoder_ (defined in grape::DeltaVarintDecoder< T >)grape::DeltaVarintDecoder< T >private
DeltaVarintDecoder() (defined in grape::DeltaVarintDecoder< T >)grape::DeltaVarintDecoder< T >inline
DeltaVarintDecoder(const char *p, size_t size) (defined in grape::DeltaVarintDecoder< T >)grape::DeltaVarintDecoder< T >inline
last_ (defined in grape::DeltaVarintDecoder< T >)grape::DeltaVarintDecoder< T >private
pop(T &v) (defined in grape::DeltaVarintDecoder< T >)grape::DeltaVarintDecoder< T >inline
reset(const char *p, size_t size) (defined in grape::DeltaVarintDecoder< T >)grape::DeltaVarintDecoder< T >inline
reset_last() (defined in grape::DeltaVarintDecoder< T >)grape::DeltaVarintDecoder< T >inline
size() const (defined in grape::DeltaVarintDecoder< T >)grape::DeltaVarintDecoder< T >inline
~DeltaVarintDecoder()=default (defined in grape::DeltaVarintDecoder< T >)grape::DeltaVarintDecoder< T >
+ + + + diff --git a/classgrape_1_1DeltaVarintDecoder.html b/classgrape_1_1DeltaVarintDecoder.html new file mode 100644 index 00000000..4d334f40 --- /dev/null +++ b/classgrape_1_1DeltaVarintDecoder.html @@ -0,0 +1,114 @@ + + + + + + + +libgrape-lite: grape::DeltaVarintDecoder< T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::DeltaVarintDecoder< T > Class Template Reference
+
+
+ + + + + + + + + + + + + + +

+Public Member Functions

DeltaVarintDecoder (const char *p, size_t size)
 
+void reset (const char *p, size_t size)
 
+bool pop (T &v)
 
+size_t size () const
 
+VarintDecoderdecoder ()
 
+void reset_last ()
 
+ + + + + +

+Private Attributes

+VarintDecoder decoder_
 
+T last_
 
+
+ + + + diff --git a/classgrape_1_1DeltaVarintEncoder-members.html b/classgrape_1_1DeltaVarintEncoder-members.html new file mode 100644 index 00000000..ec302023 --- /dev/null +++ b/classgrape_1_1DeltaVarintEncoder-members.html @@ -0,0 +1,93 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::DeltaVarintEncoder< T > Member List
+
+
+ +

This is the complete list of members for grape::DeltaVarintEncoder< T >, including all inherited members.

+ + + + + + + + + + + + +
clear() (defined in grape::DeltaVarintEncoder< T >)grape::DeltaVarintEncoder< T >inline
data() const (defined in grape::DeltaVarintEncoder< T >)grape::DeltaVarintEncoder< T >inline
DeltaVarintEncoder()=default (defined in grape::DeltaVarintEncoder< T >)grape::DeltaVarintEncoder< T >
empty() const (defined in grape::DeltaVarintEncoder< T >)grape::DeltaVarintEncoder< T >inline
encoder() const (defined in grape::DeltaVarintEncoder< T >)grape::DeltaVarintEncoder< T >inline
encoder_ (defined in grape::DeltaVarintEncoder< T >)grape::DeltaVarintEncoder< T >private
last_ (defined in grape::DeltaVarintEncoder< T >)grape::DeltaVarintEncoder< T >private
push_back(T v) (defined in grape::DeltaVarintEncoder< T >)grape::DeltaVarintEncoder< T >inline
reserve(size_t size) (defined in grape::DeltaVarintEncoder< T >)grape::DeltaVarintEncoder< T >inline
size() const (defined in grape::DeltaVarintEncoder< T >)grape::DeltaVarintEncoder< T >inline
~DeltaVarintEncoder()=default (defined in grape::DeltaVarintEncoder< T >)grape::DeltaVarintEncoder< T >
+ + + + diff --git a/classgrape_1_1DeltaVarintEncoder.html b/classgrape_1_1DeltaVarintEncoder.html new file mode 100644 index 00000000..9e9bb016 --- /dev/null +++ b/classgrape_1_1DeltaVarintEncoder.html @@ -0,0 +1,117 @@ + + + + + + + +libgrape-lite: grape::DeltaVarintEncoder< T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::DeltaVarintEncoder< T > Class Template Reference
+
+
+ + + + + + + + + + + + + + + + +

+Public Member Functions

+void push_back (T v)
 
+void reserve (size_t size)
 
+bool empty () const
 
+void clear ()
 
+size_t size () const
 
+const char * data () const
 
+const VarintEncoderencoder () const
 
+ + + + + +

+Private Attributes

+VarintEncoder encoder_
 
+T last_ = 0
 
+
+ + + + diff --git a/classgrape_1_1DenseVertexSet.html b/classgrape_1_1DenseVertexSet.html new file mode 100644 index 00000000..be9f3d15 --- /dev/null +++ b/classgrape_1_1DenseVertexSet.html @@ -0,0 +1,95 @@ + + + + + + + +libgrape-lite: grape::DenseVertexSet< VERTEX_SET_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::DenseVertexSet< VERTEX_SET_T > Class Template Reference
+
+
+ +

A vertex set with dense vertices. + More...

+ +

#include <vertex_set.h>

+

Detailed Description

+

template<typename VERTEX_SET_T>
+class grape::DenseVertexSet< VERTEX_SET_T >

+ +

A vertex set with dense vertices.

+
Template Parameters
+ + +
VERTEX_SET_TVertex set type.
+
+
+
+ + + + diff --git a/classgrape_1_1DenseVertexSet_3_01DualVertexRange_3_01VID__T_01_4_01_4-members.html b/classgrape_1_1DenseVertexSet_3_01DualVertexRange_3_01VID__T_01_4_01_4-members.html new file mode 100644 index 00000000..9fe4537b --- /dev/null +++ b/classgrape_1_1DenseVertexSet_3_01DualVertexRange_3_01VID__T_01_4_01_4-members.html @@ -0,0 +1,114 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::DenseVertexSet< DualVertexRange< VID_T > > Member List
+
+
+ +

This is the complete list of members for grape::DenseVertexSet< DualVertexRange< VID_T > >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Clear() (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >inline
Count() const (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >inline
DenseVertexSet()=default (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >
DenseVertexSet(const DualVertexRange< VID_T > &range) (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >inlineexplicit
Empty() const (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >inline
Erase(Vertex< VID_T > u) (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >inline
EraseWithRet(Vertex< VID_T > u) (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >inline
Exist(Vertex< VID_T > u) const (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >inline
GetHeadBitset() (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >inline
GetHeadBitset() const (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >inline
GetTailBitset() (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >inline
GetTailBitset() const (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >inline
head_beg_ (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >private
head_bs_ (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >private
head_end_ (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >private
Init(const VertexRange< VID_T > &range, ThreadPool &thread_pool) (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >inline
Init(const VertexVector< VID_T > &vertices, ThreadPool &thread_pool) (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >inline
Init(const DualVertexRange< VID_T > &range) (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >inline
Init(const VertexVector< VID_T > &vertices) (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >inline
Insert(Vertex< VID_T > u) (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >inline
InsertWithRet(Vertex< VID_T > u) (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >inline
ParallelClear(ThreadPool &thread_pool) (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >inline
ParallelCount(ThreadPool &thread_pool) const (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >inline
ParallelPartialCount(ThreadPool &thread_pool, VID_T beg, VID_T end) const (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >inline
PartialCount(VID_T beg, VID_T end) const (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >inline
PartialEmpty(VID_T beg, VID_T end) const (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >inline
Range() const (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >inline
Swap(DenseVertexSet &rhs) (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >inline
tail_beg_ (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >private
tail_bs_ (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >private
tail_end_ (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >private
~DenseVertexSet()=default (defined in grape::DenseVertexSet< DualVertexRange< VID_T > >)grape::DenseVertexSet< DualVertexRange< VID_T > >
+ + + + diff --git a/classgrape_1_1DenseVertexSet_3_01DualVertexRange_3_01VID__T_01_4_01_4.html b/classgrape_1_1DenseVertexSet_3_01DualVertexRange_3_01VID__T_01_4_01_4.html new file mode 100644 index 00000000..536b796e --- /dev/null +++ b/classgrape_1_1DenseVertexSet_3_01DualVertexRange_3_01VID__T_01_4_01_4.html @@ -0,0 +1,180 @@ + + + + + + + +libgrape-lite: grape::DenseVertexSet< DualVertexRange< VID_T > > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::DenseVertexSet< DualVertexRange< VID_T > > Class Template Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

DenseVertexSet (const DualVertexRange< VID_T > &range)
 
+void Init (const VertexRange< VID_T > &range, ThreadPool &thread_pool)
 
+void Init (const VertexVector< VID_T > &vertices, ThreadPool &thread_pool)
 
+void Init (const DualVertexRange< VID_T > &range)
 
+void Init (const VertexVector< VID_T > &vertices)
 
+void Insert (Vertex< VID_T > u)
 
+bool InsertWithRet (Vertex< VID_T > u)
 
+void Erase (Vertex< VID_T > u)
 
+bool EraseWithRet (Vertex< VID_T > u)
 
+bool Exist (Vertex< VID_T > u) const
 
+DualVertexRange< VID_T > Range () const
 
+size_t Count () const
 
+size_t ParallelCount (ThreadPool &thread_pool) const
 
+size_t PartialCount (VID_T beg, VID_T end) const
 
+size_t ParallelPartialCount (ThreadPool &thread_pool, VID_T beg, VID_T end) const
 
+void Clear ()
 
+void ParallelClear (ThreadPool &thread_pool)
 
+void Swap (DenseVertexSet &rhs)
 
+BitsetGetHeadBitset ()
 
+const BitsetGetHeadBitset () const
 
+BitsetGetTailBitset ()
 
+const BitsetGetTailBitset () const
 
+bool Empty () const
 
+bool PartialEmpty (VID_T beg, VID_T end) const
 
+ + + + + + + + + + + + + +

+Private Attributes

+VID_T head_beg_
 
+VID_T head_end_
 
+VID_T tail_beg_
 
+VID_T tail_end_
 
+Bitset head_bs_
 
+Bitset tail_bs_
 
+
+ + + + diff --git a/classgrape_1_1DenseVertexSet_3_01VertexRange_3_01VID__T_01_4_01_4-members.html b/classgrape_1_1DenseVertexSet_3_01VertexRange_3_01VID__T_01_4_01_4-members.html new file mode 100644 index 00000000..32fb5bab --- /dev/null +++ b/classgrape_1_1DenseVertexSet_3_01VertexRange_3_01VID__T_01_4_01_4-members.html @@ -0,0 +1,109 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::DenseVertexSet< VertexRange< VID_T > > Member List
+
+
+ +

This is the complete list of members for grape::DenseVertexSet< VertexRange< VID_T > >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +
beg_ (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >private
bs_ (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >private
Clear() (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >inline
Count() const (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >inline
DenseVertexSet()=default (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >
DenseVertexSet(const VertexRange< VID_T > &range) (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >inlineexplicit
Empty() const (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >inline
end_ (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >private
Erase(Vertex< VID_T > u) (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >inline
EraseWithRet(Vertex< VID_T > u) (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >inline
Exist(Vertex< VID_T > u) const (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >inline
GetBitset() (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >inline
GetBitset() const (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >inline
Init(const VertexRange< VID_T > &range, ThreadPool &thread_pool) (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >inline
Init(const VertexVector< VID_T > &vertices, ThreadPool &thread_pool) (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >inline
Init(const VertexRange< VID_T > &range) (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >inline
Init(const VertexVector< VID_T > &vertices) (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >inline
Insert(Vertex< VID_T > u) (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >inline
InsertWithRet(Vertex< VID_T > u) (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >inline
ParallelClear(ThreadPool &thread_pool) (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >inline
ParallelCount(ThreadPool &thread_pool) const (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >inline
ParallelPartialCount(ThreadPool &thread_pool, VID_T beg, VID_T end) const (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >inline
PartialCount(VID_T beg, VID_T end) const (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >inline
PartialEmpty(VID_T beg, VID_T end) const (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >inline
Range() const (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >inline
Swap(DenseVertexSet &rhs) (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >inline
~DenseVertexSet()=default (defined in grape::DenseVertexSet< VertexRange< VID_T > >)grape::DenseVertexSet< VertexRange< VID_T > >
+ + + + diff --git a/classgrape_1_1DenseVertexSet_3_01VertexRange_3_01VID__T_01_4_01_4.html b/classgrape_1_1DenseVertexSet_3_01VertexRange_3_01VID__T_01_4_01_4.html new file mode 100644 index 00000000..a107fb4c --- /dev/null +++ b/classgrape_1_1DenseVertexSet_3_01VertexRange_3_01VID__T_01_4_01_4.html @@ -0,0 +1,165 @@ + + + + + + + +libgrape-lite: grape::DenseVertexSet< VertexRange< VID_T > > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::DenseVertexSet< VertexRange< VID_T > > Class Template Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

DenseVertexSet (const VertexRange< VID_T > &range)
 
+void Init (const VertexRange< VID_T > &range, ThreadPool &thread_pool)
 
+void Init (const VertexVector< VID_T > &vertices, ThreadPool &thread_pool)
 
+void Init (const VertexRange< VID_T > &range)
 
+void Init (const VertexVector< VID_T > &vertices)
 
+void Insert (Vertex< VID_T > u)
 
+bool InsertWithRet (Vertex< VID_T > u)
 
+void Erase (Vertex< VID_T > u)
 
+bool EraseWithRet (Vertex< VID_T > u)
 
+bool Exist (Vertex< VID_T > u) const
 
+VertexRange< VID_T > Range () const
 
+size_t Count () const
 
+size_t ParallelCount (ThreadPool &thread_pool) const
 
+size_t PartialCount (VID_T beg, VID_T end) const
 
+size_t ParallelPartialCount (ThreadPool &thread_pool, VID_T beg, VID_T end) const
 
+void Clear ()
 
+void ParallelClear (ThreadPool &thread_pool)
 
+void Swap (DenseVertexSet &rhs)
 
+BitsetGetBitset ()
 
+const BitsetGetBitset () const
 
+bool Empty () const
 
+bool PartialEmpty (VID_T beg, VID_T end) const
 
+ + + + + + + +

+Private Attributes

+VID_T beg_
 
+VID_T end_
 
+Bitset bs_
 
+
+ + + + diff --git a/classgrape_1_1DenseVertexSet_3_01VertexVector_3_01VID__T_01_4_01_4-members.html b/classgrape_1_1DenseVertexSet_3_01VertexVector_3_01VID__T_01_4_01_4-members.html new file mode 100644 index 00000000..01292269 --- /dev/null +++ b/classgrape_1_1DenseVertexSet_3_01VertexVector_3_01VID__T_01_4_01_4-members.html @@ -0,0 +1,110 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::DenseVertexSet< VertexVector< VID_T > > Member List
+
+
+ +

This is the complete list of members for grape::DenseVertexSet< VertexVector< VID_T > >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
beg_ (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >private
bs_ (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >private
Clear() (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >inline
Count() const (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >inline
DenseVertexSet()=default (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >
DenseVertexSet(const VertexRange< VID_T > &range) (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >inlineexplicit
DenseVertexSet(const VertexVector< VID_T > &vertices) (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >inlineexplicit
Empty() const (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >inline
end_ (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >private
Erase(Vertex< VID_T > u) (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >inline
EraseWithRet(Vertex< VID_T > u) (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >inline
Exist(Vertex< VID_T > u) const (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >inline
GetBitset() (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >inline
GetBitset() const (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >inline
Init(const VertexRange< VID_T > &range, ThreadPool &thread_pool) (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >inline
Init(const VertexVector< VID_T > &vertices, ThreadPool &thread_pool) (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >inline
Init(const VertexRange< VID_T > &range) (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >inline
Init(const VertexVector< VID_T > &vertices) (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >inline
Insert(Vertex< VID_T > u) (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >inline
InsertWithRet(Vertex< VID_T > u) (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >inline
ParallelClear(ThreadPool &thread_pool) (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >inline
ParallelCount(ThreadPool &thread_pool) const (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >inline
ParallelPartialCount(ThreadPool &thread_pool, VID_T beg, VID_T end) const (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >inline
PartialCount(VID_T beg, VID_T end) const (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >inline
PartialEmpty(VID_T beg, VID_T end) const (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >inline
Range() const (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >inline
Swap(DenseVertexSet &rhs) (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >inline
~DenseVertexSet()=default (defined in grape::DenseVertexSet< VertexVector< VID_T > >)grape::DenseVertexSet< VertexVector< VID_T > >
+ + + + diff --git a/classgrape_1_1DenseVertexSet_3_01VertexVector_3_01VID__T_01_4_01_4.html b/classgrape_1_1DenseVertexSet_3_01VertexVector_3_01VID__T_01_4_01_4.html new file mode 100644 index 00000000..ac9d7150 --- /dev/null +++ b/classgrape_1_1DenseVertexSet_3_01VertexVector_3_01VID__T_01_4_01_4.html @@ -0,0 +1,168 @@ + + + + + + + +libgrape-lite: grape::DenseVertexSet< VertexVector< VID_T > > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::DenseVertexSet< VertexVector< VID_T > > Class Template Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

DenseVertexSet (const VertexRange< VID_T > &range)
 
DenseVertexSet (const VertexVector< VID_T > &vertices)
 
+void Init (const VertexRange< VID_T > &range, ThreadPool &thread_pool)
 
+void Init (const VertexVector< VID_T > &vertices, ThreadPool &thread_pool)
 
+void Init (const VertexRange< VID_T > &range)
 
+void Init (const VertexVector< VID_T > &vertices)
 
+void Insert (Vertex< VID_T > u)
 
+bool InsertWithRet (Vertex< VID_T > u)
 
+void Erase (Vertex< VID_T > u)
 
+bool EraseWithRet (Vertex< VID_T > u)
 
+bool Exist (Vertex< VID_T > u) const
 
+VertexRange< VID_T > Range () const
 
+size_t Count () const
 
+size_t ParallelCount (ThreadPool &thread_pool) const
 
+size_t PartialCount (VID_T beg, VID_T end) const
 
+size_t ParallelPartialCount (ThreadPool &thread_pool, VID_T beg, VID_T end) const
 
+void Clear ()
 
+void ParallelClear (ThreadPool &thread_pool)
 
+void Swap (DenseVertexSet &rhs)
 
+BitsetGetBitset ()
 
+const BitsetGetBitset () const
 
+bool Empty () const
 
+bool PartialEmpty (VID_T beg, VID_T end) const
 
+ + + + + + + +

+Private Attributes

+VID_T beg_
 
+VID_T end_
 
+Bitset bs_
 
+
+ + + + diff --git a/classgrape_1_1DualVertexRange-members.html b/classgrape_1_1DualVertexRange-members.html new file mode 100644 index 00000000..2cd213c9 --- /dev/null +++ b/classgrape_1_1DualVertexRange-members.html @@ -0,0 +1,100 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::DualVertexRange< VID_T > Member List
+
+
+ +

This is the complete list of members for grape::DualVertexRange< VID_T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
begin() const (defined in grape::DualVertexRange< VID_T >)grape::DualVertexRange< VID_T >inline
begin_value() const (defined in grape::DualVertexRange< VID_T >)grape::DualVertexRange< VID_T >inline
Contain(const Vertex< VID_T > &v) const (defined in grape::DualVertexRange< VID_T >)grape::DualVertexRange< VID_T >inline
DualVertexRange() (defined in grape::DualVertexRange< VID_T >)grape::DualVertexRange< VID_T >inline
DualVertexRange(const VID_T &head_begin, const VID_T &head_end, const VID_T &tail_begin, const VID_T &tail_end) (defined in grape::DualVertexRange< VID_T >)grape::DualVertexRange< VID_T >inline
end() const (defined in grape::DualVertexRange< VID_T >)grape::DualVertexRange< VID_T >inline
end_value() const (defined in grape::DualVertexRange< VID_T >)grape::DualVertexRange< VID_T >inline
head() const (defined in grape::DualVertexRange< VID_T >)grape::DualVertexRange< VID_T >inline
head_begin_ (defined in grape::DualVertexRange< VID_T >)grape::DualVertexRange< VID_T >private
head_end_ (defined in grape::DualVertexRange< VID_T >)grape::DualVertexRange< VID_T >private
operator<< (defined in grape::DualVertexRange< VID_T >)grape::DualVertexRange< VID_T >friend
operator>> (defined in grape::DualVertexRange< VID_T >)grape::DualVertexRange< VID_T >friend
SetRange(const VID_T &head_begin, const VID_T &head_end, const VID_T &tail_begin, const VID_T &tail_end) (defined in grape::DualVertexRange< VID_T >)grape::DualVertexRange< VID_T >inline
size() const (defined in grape::DualVertexRange< VID_T >)grape::DualVertexRange< VID_T >inline
tail() const (defined in grape::DualVertexRange< VID_T >)grape::DualVertexRange< VID_T >inline
tail_begin_ (defined in grape::DualVertexRange< VID_T >)grape::DualVertexRange< VID_T >private
tail_end_ (defined in grape::DualVertexRange< VID_T >)grape::DualVertexRange< VID_T >private
vertex_t typedef (defined in grape::DualVertexRange< VID_T >)grape::DualVertexRange< VID_T >
+ + + + diff --git a/classgrape_1_1DualVertexRange.html b/classgrape_1_1DualVertexRange.html new file mode 100644 index 00000000..b7226bf3 --- /dev/null +++ b/classgrape_1_1DualVertexRange.html @@ -0,0 +1,155 @@ + + + + + + + +libgrape-lite: grape::DualVertexRange< VID_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::DualVertexRange< VID_T > Class Template Reference
+
+
+ + + + +

+Classes

class  iterator
 
+ + + +

+Public Types

+using vertex_t = Vertex< VID_T >
 
+ + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

DualVertexRange (const VID_T &head_begin, const VID_T &head_end, const VID_T &tail_begin, const VID_T &tail_end)
 
+void SetRange (const VID_T &head_begin, const VID_T &head_end, const VID_T &tail_begin, const VID_T &tail_end)
 
+iterator begin () const
 
+iterator end () const
 
+VertexRange< VID_T > head () const
 
+VertexRange< VID_T > tail () const
 
+const VID_T begin_value () const
 
+const VID_T end_value () const
 
+bool Contain (const Vertex< VID_T > &v) const
 
+VID_T size () const
 
+ + + + + + + + + +

+Private Attributes

+VID_T head_begin_
 
+VID_T head_end_
 
+VID_T tail_begin_
 
+VID_T tail_end_
 
+ + + + + +

+Friends

+InArchiveoperator<< (InArchive &in_archive, const DualVertexRange< VID_T > &range)
 
+OutArchiveoperator>> (OutArchive &out_archive, DualVertexRange< VID_T > &range)
 
+
+ + + + diff --git a/classgrape_1_1DualVertexRange_1_1iterator-members.html b/classgrape_1_1DualVertexRange_1_1iterator-members.html new file mode 100644 index 00000000..8b0bfc31 --- /dev/null +++ b/classgrape_1_1DualVertexRange_1_1iterator-members.html @@ -0,0 +1,97 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::DualVertexRange< VID_T >::iterator Member List
+
+
+ +

This is the complete list of members for grape::DualVertexRange< VID_T >::iterator, including all inherited members.

+ + + + + + + + + + + + + + + + +
cur_ (defined in grape::DualVertexRange< VID_T >::iterator)grape::DualVertexRange< VID_T >::iteratorprivate
head_end_ (defined in grape::DualVertexRange< VID_T >::iterator)grape::DualVertexRange< VID_T >::iteratorprivate
iterator() noexcept (defined in grape::DualVertexRange< VID_T >::iterator)grape::DualVertexRange< VID_T >::iteratorinline
iterator(const VID_T &v) noexcept (defined in grape::DualVertexRange< VID_T >::iterator)grape::DualVertexRange< VID_T >::iteratorinlineexplicit
iterator(const VID_T &v, const VID_T &x, const VID_T &y) noexcept (defined in grape::DualVertexRange< VID_T >::iterator)grape::DualVertexRange< VID_T >::iteratorinlineexplicit
operator!=(const iterator &rhs) noexcept (defined in grape::DualVertexRange< VID_T >::iterator)grape::DualVertexRange< VID_T >::iteratorinline
operator*() noexcept (defined in grape::DualVertexRange< VID_T >::iterator)grape::DualVertexRange< VID_T >::iteratorinline
operator+(size_t offset) noexcept (defined in grape::DualVertexRange< VID_T >::iterator)grape::DualVertexRange< VID_T >::iteratorinline
operator++() noexcept (defined in grape::DualVertexRange< VID_T >::iterator)grape::DualVertexRange< VID_T >::iteratorinline
operator++(int) noexcept (defined in grape::DualVertexRange< VID_T >::iterator)grape::DualVertexRange< VID_T >::iteratorinline
operator--() noexcept (defined in grape::DualVertexRange< VID_T >::iterator)grape::DualVertexRange< VID_T >::iteratorinline
operator--(int) noexcept (defined in grape::DualVertexRange< VID_T >::iterator)grape::DualVertexRange< VID_T >::iteratorinline
operator==(const iterator &rhs) noexcept (defined in grape::DualVertexRange< VID_T >::iterator)grape::DualVertexRange< VID_T >::iteratorinline
reference_type typedef (defined in grape::DualVertexRange< VID_T >::iterator)grape::DualVertexRange< VID_T >::iteratorprivate
tail_begin_ (defined in grape::DualVertexRange< VID_T >::iterator)grape::DualVertexRange< VID_T >::iteratorprivate
+ + + + diff --git a/classgrape_1_1DualVertexRange_1_1iterator.html b/classgrape_1_1DualVertexRange_1_1iterator.html new file mode 100644 index 00000000..aeca9c53 --- /dev/null +++ b/classgrape_1_1DualVertexRange_1_1iterator.html @@ -0,0 +1,136 @@ + + + + + + + +libgrape-lite: grape::DualVertexRange< VID_T >::iterator Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::DualVertexRange< VID_T >::iterator Class Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

iterator (const VID_T &v) noexcept
 
iterator (const VID_T &v, const VID_T &x, const VID_T &y) noexcept
 
+reference_type operator* () noexcept
 
+iteratoroperator++ () noexcept
 
+iterator operator++ (int) noexcept
 
+iteratoroperator-- () noexcept
 
+iterator operator-- (int) noexcept
 
+iterator operator+ (size_t offset) noexcept
 
+bool operator== (const iterator &rhs) noexcept
 
+bool operator!= (const iterator &rhs) noexcept
 
+ + + +

+Private Types

+using reference_type = const Vertex< VID_T > &
 
+ + + + + + + +

+Private Attributes

+Vertex< VID_T > cur_
 
+VID_T head_end_
 
+VID_T tail_begin_
 
+
+ + + + diff --git a/classgrape_1_1EVFragmentLoader-members.html b/classgrape_1_1EVFragmentLoader-members.html new file mode 100644 index 00000000..646d2783 --- /dev/null +++ b/classgrape_1_1EVFragmentLoader-members.html @@ -0,0 +1,98 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T > Member List
+
+
+ +

This is the complete list of members for grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >, including all inherited members.

+ + + + + + + + + + + + + + + + + +
basic_fragment_loader_ (defined in grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >private
comm_spec_ (defined in grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >private
edata_t typedef (defined in grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >private
EVFragmentLoader(const CommSpec &comm_spec) (defined in grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >inlineexplicit
fragment_t typedef (defined in grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >private
io_adaptor_t typedef (defined in grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >private
line_parser_ (defined in grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >private
line_parser_t typedef (defined in grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >private
load_strategy (defined in grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >privatestatic
LoadFragment(const std::string &efile, const std::string &vfile, const LoadGraphSpec &spec) (defined in grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >inline
oid_t typedef (defined in grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >private
partitioner_t typedef (defined in grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >private
vdata_t typedef (defined in grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >private
vertex_map_t typedef (defined in grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >private
vid_t typedef (defined in grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >private
~EVFragmentLoader()=default (defined in grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >
+ + + + diff --git a/classgrape_1_1EVFragmentLoader.html b/classgrape_1_1EVFragmentLoader.html new file mode 100644 index 00000000..14bbdaac --- /dev/null +++ b/classgrape_1_1EVFragmentLoader.html @@ -0,0 +1,161 @@ + + + + + + + +libgrape-lite: grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T > Class Template Reference
+
+
+ +

EVFragmentLoader is a loader to load fragments from separated efile and vfile. + More...

+ +

#include <ev_fragment_loader.h>

+ + + + + + +

+Public Member Functions

EVFragmentLoader (const CommSpec &comm_spec)
 
+std::shared_ptr< fragment_t > LoadFragment (const std::string &efile, const std::string &vfile, const LoadGraphSpec &spec)
 
+ + + + + + + + + + + + + + + + + + + +

+Private Types

+using fragment_t = FRAG_T
 
+using oid_t = typename fragment_t::oid_t
 
+using vid_t = typename fragment_t::vid_t
 
+using vdata_t = typename fragment_t::vdata_t
 
+using edata_t = typename fragment_t::edata_t
 
+using vertex_map_t = typename fragment_t::vertex_map_t
 
+using partitioner_t = typename vertex_map_t::partitioner_t
 
+using io_adaptor_t = IOADAPTOR_T
 
+using line_parser_t = LINE_PARSER_T
 
+ + + + + + + +

+Private Attributes

+CommSpec comm_spec_
 
+BasicFragmentLoader< fragment_t, io_adaptor_t > basic_fragment_loader_
 
+line_parser_t line_parser_
 
+ + + +

+Static Private Attributes

+static constexpr LoadStrategy load_strategy = fragment_t::load_strategy
 
+

Detailed Description

+

template<typename FRAG_T, typename IOADAPTOR_T = LocalIOAdaptor, typename LINE_PARSER_T = TSVLineParser<typename FRAG_T::oid_t, typename FRAG_T::vdata_t, typename FRAG_T::edata_t>>
+class grape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >

+ +

EVFragmentLoader is a loader to load fragments from separated efile and vfile.

+
Template Parameters
+ + + + +
FRAG_TFragment type.
IOADAPTOR_TIOAdaptor type.
LINE_PARSER_TLineParser type.
+
+
+
+ + + + diff --git a/classgrape_1_1EVFragmentMutator-members.html b/classgrape_1_1EVFragmentMutator-members.html new file mode 100644 index 00000000..e4ae5df3 --- /dev/null +++ b/classgrape_1_1EVFragmentMutator-members.html @@ -0,0 +1,93 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::EVFragmentMutator< FRAG_T, IOADAPTOR_T > Member List
+
+
+ +

This is the complete list of members for grape::EVFragmentMutator< FRAG_T, IOADAPTOR_T >, including all inherited members.

+ + + + + + + + + + + + +
comm_spec_ (defined in grape::EVFragmentMutator< FRAG_T, IOADAPTOR_T >)grape::EVFragmentMutator< FRAG_T, IOADAPTOR_T >private
edata_t typedef (defined in grape::EVFragmentMutator< FRAG_T, IOADAPTOR_T >)grape::EVFragmentMutator< FRAG_T, IOADAPTOR_T >private
EVFragmentMutator(const CommSpec &comm_spec) (defined in grape::EVFragmentMutator< FRAG_T, IOADAPTOR_T >)grape::EVFragmentMutator< FRAG_T, IOADAPTOR_T >inlineexplicit
fragment_t typedef (defined in grape::EVFragmentMutator< FRAG_T, IOADAPTOR_T >)grape::EVFragmentMutator< FRAG_T, IOADAPTOR_T >private
MutateFragment(const std::string &efile, const std::string &vfile, std::shared_ptr< fragment_t > frag, bool directed) (defined in grape::EVFragmentMutator< FRAG_T, IOADAPTOR_T >)grape::EVFragmentMutator< FRAG_T, IOADAPTOR_T >inline
oid_t typedef (defined in grape::EVFragmentMutator< FRAG_T, IOADAPTOR_T >)grape::EVFragmentMutator< FRAG_T, IOADAPTOR_T >private
t0_ (defined in grape::EVFragmentMutator< FRAG_T, IOADAPTOR_T >)grape::EVFragmentMutator< FRAG_T, IOADAPTOR_T >private
t1_ (defined in grape::EVFragmentMutator< FRAG_T, IOADAPTOR_T >)grape::EVFragmentMutator< FRAG_T, IOADAPTOR_T >private
vdata_t typedef (defined in grape::EVFragmentMutator< FRAG_T, IOADAPTOR_T >)grape::EVFragmentMutator< FRAG_T, IOADAPTOR_T >private
vid_t typedef (defined in grape::EVFragmentMutator< FRAG_T, IOADAPTOR_T >)grape::EVFragmentMutator< FRAG_T, IOADAPTOR_T >private
~EVFragmentMutator() (defined in grape::EVFragmentMutator< FRAG_T, IOADAPTOR_T >)grape::EVFragmentMutator< FRAG_T, IOADAPTOR_T >inline
+ + + + diff --git a/classgrape_1_1EVFragmentMutator.html b/classgrape_1_1EVFragmentMutator.html new file mode 100644 index 00000000..11c07bd4 --- /dev/null +++ b/classgrape_1_1EVFragmentMutator.html @@ -0,0 +1,124 @@ + + + + + + + +libgrape-lite: grape::EVFragmentMutator< FRAG_T, IOADAPTOR_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::EVFragmentMutator< FRAG_T, IOADAPTOR_T > Class Template Reference
+
+
+ + + + + + +

+Public Member Functions

EVFragmentMutator (const CommSpec &comm_spec)
 
+std::shared_ptr< fragment_t > MutateFragment (const std::string &efile, const std::string &vfile, std::shared_ptr< fragment_t > frag, bool directed)
 
+ + + + + + + + + + + +

+Private Types

+using fragment_t = FRAG_T
 
+using oid_t = typename FRAG_T::oid_t
 
+using vid_t = typename FRAG_T::vid_t
 
+using vdata_t = typename FRAG_T::vdata_t
 
+using edata_t = typename FRAG_T::edata_t
 
+ + + + + + + +

+Private Attributes

+CommSpec comm_spec_
 
+double t0_
 
+double t1_
 
+
+ + + + diff --git a/classgrape_1_1EVFragmentRebalanceLoader-members.html b/classgrape_1_1EVFragmentRebalanceLoader-members.html new file mode 100644 index 00000000..cdb9d1d0 --- /dev/null +++ b/classgrape_1_1EVFragmentRebalanceLoader-members.html @@ -0,0 +1,100 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T > Member List
+
+
+ +

This is the complete list of members for grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
comm_spec_ (defined in grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >private
deserializeFragment(std::shared_ptr< fragment_t > &fragment, const LoadGraphSpec &spec) (defined in grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >inlineprivate
edata_t typedef (defined in grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >private
edge_tag (defined in grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >privatestatic
EVFragmentRebalanceLoader(const CommSpec &comm_spec) (defined in grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >inlineexplicit
existSerializationFile(const std::string &prefix) (defined in grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >inlineprivate
fragment_t typedef (defined in grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >private
line_parser_ (defined in grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >private
line_parser_t typedef (defined in grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >private
load_strategy (defined in grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >privatestatic
LoadFragment(const std::string &efile, const std::string &vfile, const LoadGraphSpec &spec) (defined in grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >inline
oid_t typedef (defined in grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >private
partitioner_t typedef (defined in grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >private
serializeFragment(std::shared_ptr< fragment_t > fragment, std::shared_ptr< vertex_map_t > vm_ptr, const LoadGraphSpec &spec) (defined in grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >inlineprivate
vdata_t typedef (defined in grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >private
vertex_map_t typedef (defined in grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >private
vid_t typedef (defined in grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >private
~EVFragmentRebalanceLoader()=default (defined in grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >)grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >
+ + + + diff --git a/classgrape_1_1EVFragmentRebalanceLoader.html b/classgrape_1_1EVFragmentRebalanceLoader.html new file mode 100644 index 00000000..dc484df1 --- /dev/null +++ b/classgrape_1_1EVFragmentRebalanceLoader.html @@ -0,0 +1,171 @@ + + + + + + + +libgrape-lite: grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T > Class Template Reference
+
+
+ +

EVFragmentLoader is a loader to load fragments from separated efile and vfile. + More...

+ +

#include <ev_fragment_rebalance_loader.h>

+ + + + + + +

+Public Member Functions

EVFragmentRebalanceLoader (const CommSpec &comm_spec)
 
+std::shared_ptr< fragment_t > LoadFragment (const std::string &efile, const std::string &vfile, const LoadGraphSpec &spec)
 
+ + + + + + + + + + + + + + + + + +

+Private Types

+using fragment_t = FRAG_T
 
+using oid_t = typename fragment_t::oid_t
 
+using vid_t = typename fragment_t::vid_t
 
+using vdata_t = typename fragment_t::vdata_t
 
+using edata_t = typename fragment_t::edata_t
 
+using vertex_map_t = typename fragment_t::vertex_map_t
 
+using partitioner_t = typename vertex_map_t::partitioner_t
 
+using line_parser_t = LINE_PARSER_T
 
+ + + + + + + +

+Private Member Functions

+bool existSerializationFile (const std::string &prefix)
 
+bool deserializeFragment (std::shared_ptr< fragment_t > &fragment, const LoadGraphSpec &spec)
 
+bool serializeFragment (std::shared_ptr< fragment_t > fragment, std::shared_ptr< vertex_map_t > vm_ptr, const LoadGraphSpec &spec)
 
+ + + + + +

+Private Attributes

+CommSpec comm_spec_
 
+line_parser_t line_parser_
 
+ + + + + +

+Static Private Attributes

+static constexpr LoadStrategy load_strategy = fragment_t::load_strategy
 
+static constexpr int edge_tag = 6
 
+

Detailed Description

+

template<typename FRAG_T, typename IOADAPTOR_T = LocalIOAdaptor, typename LINE_PARSER_T = TSVLineParser<typename FRAG_T::oid_t, typename FRAG_T::vdata_t, typename FRAG_T::edata_t>>
+class grape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >

+ +

EVFragmentLoader is a loader to load fragments from separated efile and vfile.

+
Template Parameters
+ + + + +
FRAG_TFragment type.
IOADAPTOR_TIOAdaptor type.
LINE_PARSER_TLineParser type.
+
+
+
+ + + + diff --git a/classgrape_1_1EdgecutFragmentBase-members.html b/classgrape_1_1EdgecutFragmentBase-members.html new file mode 100644 index 00000000..1a8b1b46 --- /dev/null +++ b/classgrape_1_1EdgecutFragmentBase-members.html @@ -0,0 +1,178 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T > Member List
+
+
+ +

This is the complete list of members for grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
base_t typedef (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
deserialize(std::unique_ptr< IOADAPTOR_T > &reader) (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
directed() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
directed_ (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
EdgecutFragmentBase() (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
fid() constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
grape::FragmentBase::fid() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
fid_ (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
fnum() constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
grape::FragmentBase::fnum() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
fnum_ (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
fragment_adj_list_t typedef (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
fragment_const_adj_list_t typedef (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
FragmentBase() (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
FragmentBase(std::shared_ptr< vertex_map_t > vm_ptr) (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineexplicit
GetData(const Vertex< VID_T > &v) const =0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetEdgeNum() const =0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetFragId(const Vertex< VID_T > &u) constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetId(const Vertex< VID_T > &v) constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetIncomingAdjList(const Vertex< VID_T > &v)=0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetIncomingAdjList(const Vertex< VID_T > &v) const =0 (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetIncomingAdjList(const Vertex< VID_T > &v, fid_t fid)=0 (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetIncomingAdjList(const Vertex< VID_T > &v, fid_t fid) const =0 (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetIncomingInnerVertexAdjList(const Vertex< VID_T > &v)=0grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetIncomingInnerVertexAdjList(const Vertex< VID_T > &v) const =0grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetIncomingOuterVertexAdjList(const Vertex< VID_T > &v)=0grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetIncomingOuterVertexAdjList(const Vertex< VID_T > &v) const =0grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetInnerVertex(const OID_T &oid, Vertex< VID_T > &v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetInnerVertexGid(vertex_t v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetInnerVertexId(vertex_t v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetInnerVerticesNum() constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetLocalInDegree(const Vertex< VID_T > &v) const =0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetLocalOutDegree(const Vertex< VID_T > &v) const =0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetOuterVertexGid(vertex_t v) const =0grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetOuterVertexId(vertex_t v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetOuterVerticesNum() constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetOutgoingAdjList(const Vertex< VID_T > &v)=0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetOutgoingAdjList(const Vertex< VID_T > &v) const =0 (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetOutgoingAdjList(const Vertex< VID_T > &v, fid_t fid)=0 (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetOutgoingAdjList(const Vertex< VID_T > &v, fid_t fid) const =0 (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetOutgoingInnerVertexAdjList(const Vertex< VID_T > &v)=0grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetOutgoingInnerVertexAdjList(const Vertex< VID_T > &v) const =0grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetOutgoingOuterVertexAdjList(const Vertex< VID_T > &v)=0grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetOutgoingOuterVertexAdjList(const Vertex< VID_T > &v) const =0grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetTotalVerticesNum() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetVertex(const OID_T &oid, Vertex< VID_T > &v) constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetVertexMap() (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetVertexMap() const (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetVerticesNum() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
Gid2Lid(VID_T gid, VID_T &lid) const (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
Gid2Oid(VID_T gid) const (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
Gid2Vertex(const vid_t &gid, vertex_t &v) const overridegrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlinevirtual
HasChild(const Vertex< VID_T > &v) const =0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
HasParent(const Vertex< VID_T > &v) const =0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
id_parser_ (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
IEDests(const Vertex< VID_T > &v) const =0grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
IEDestsSize() const =0 (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
Init(fid_t fid, bool directed, std::vector< internal::Vertex< VID_T, VDATA_T >> &vertices, std::vector< Edge< VID_T, EDATA_T >> &edges)=0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
init(fid_t fid, bool directed) (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
initMirrorInfo(const CommSpec &comm_spec) (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
inner_vertices_ (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
inner_vertices_t typedef (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
InnerVertexGid2Lid(VID_T gid, VID_T &lid) const (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
InnerVertexGid2Vertex(VID_T gid, Vertex< VID_T > &v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
InnerVertices() constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
IOEDests(const Vertex< VID_T > &v) const =0grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
IOEDestsSize() const =0 (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
IsInnerVertex(const Vertex< VID_T > &v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
IsInnerVertexGid(VID_T gid) const (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
IsInnerVertexLid(VID_T lid) const (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
IsOuterVertex(const Vertex< VID_T > &v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
ivnum_ (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
mirror_vertices_t typedef (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
mirrors_of_frag_ (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
MirrorVertices(fid_t fid) const (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
OEDests(const Vertex< VID_T > &v) const =0grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
OEDestsSize() const =0 (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
outer_vertices_ (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
outer_vertices_of_frag_ (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
outer_vertices_t typedef (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
OuterVertexGid2Lid(VID_T gid, VID_T &lid) const =0 (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protectedpure virtual
OuterVertexGid2Vertex(VID_T gid, Vertex< VID_T > &v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
OuterVertices() constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
OuterVertices(fid_t fid) const (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
PrepareToRunApp(const CommSpec &comm_spec, PrepareConf conf)=0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
serialize(std::unique_ptr< IOADAPTOR_T > &writer) (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
SetData(const Vertex< VID_T > &v, const VDATA_T &val)=0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
sub_vertices_t typedef (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
Vertex2Gid(const vertex_t &v) const overridegrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlinevirtual
vertex_map_t typedef (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
vertex_t typedef (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
Vertices() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
vertices_ (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
vertices_t typedef (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
vid_t typedef (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
vm_ptr_ (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
+ + + + diff --git a/classgrape_1_1EdgecutFragmentBase.html b/classgrape_1_1EdgecutFragmentBase.html new file mode 100644 index 00000000..de75f3f5 --- /dev/null +++ b/classgrape_1_1EdgecutFragmentBase.html @@ -0,0 +1,1505 @@ + + + + + + + +libgrape-lite: grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T > Class Template Referenceabstract
+
+
+ +

IEdgecutFragment defines the interfaces of fragments with edgecut. To learn more about edge-cut and vertex-cut, please refers to https://spark.apache.org/docs/1.6.2/graphx-programming-guide.html#optimized-representation. + More...

+ +

#include <edgecut_fragment_base.h>

+
+Inheritance diagram for grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >:
+
+
+ + +grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T > +grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > > +grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T > +grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > > +grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T > +grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

+using base_t = FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
 
+using vid_t = VID_T
 
+using vertex_t = Vertex< VID_T >
 
+using inner_vertices_t = typename TRAITS_T::inner_vertices_t
 
+using outer_vertices_t = typename TRAITS_T::outer_vertices_t
 
+using sub_vertices_t = typename TRAITS_T::sub_vertices_t
 
+using mirror_vertices_t = typename TRAITS_T::mirror_vertices_t
 
- Public Types inherited from grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
+using vertex_map_t = typename TRAITS_T::vertex_map_t
 
+using fragment_adj_list_t = typename TRAITS_T::fragment_adj_list_t
 
+using fragment_const_adj_list_t = typename TRAITS_T::fragment_const_adj_list_t
 
+using vertices_t = typename TRAITS_T::vertices_t
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

VID_T GetInnerVerticesNum () const
 Returns the number of inner vertices in this fragment. More...
 
VID_T GetOuterVerticesNum () const
 Returns the number of outer vertices in this fragment. More...
 
const inner_vertices_t & InnerVertices () const
 Returns the vertex range of inner vertices in this fragment. More...
 
const outer_vertices_t & OuterVertices () const
 Returns the vertex range of outer vertices in this fragment. More...
 
+const sub_vertices_t & OuterVertices (fid_t fid) const
 
+const mirror_vertices_t & MirrorVertices (fid_t fid) const
 
bool IsInnerVertex (const Vertex< VID_T > &v) const
 Check if vertex v is inner vertex of this fragment. More...
 
bool IsOuterVertex (const Vertex< VID_T > &v) const
 Check if vertex v is outer vertex of this fragment. More...
 
bool GetInnerVertex (const OID_T &oid, Vertex< VID_T > &v) const
 Get a inner vertex with original ID vid. More...
 
OID_T GetInnerVertexId (vertex_t v) const
 Get the original ID of an inner vertex. More...
 
OID_T GetOuterVertexId (vertex_t v) const
 Get the original ID of an outer vertex. More...
 
bool InnerVertexGid2Vertex (VID_T gid, Vertex< VID_T > &v) const
 Convert from global id to an inner vertex handle. More...
 
bool OuterVertexGid2Vertex (VID_T gid, Vertex< VID_T > &v) const
 Convert from global id to an outer vertex handle. More...
 
virtual VID_T GetOuterVertexGid (vertex_t v) const =0
 Convert from inner vertex handle to its global id. More...
 
VID_T GetInnerVertexGid (vertex_t v) const
 Convert from outer vertex handle to its global id. More...
 
virtual DestList IEDests (const Vertex< VID_T > &v) const =0
 Return the incoming edge destination fragment ID list of a inner vertex. More...
 
+virtual size_t IEDestsSize () const =0
 
virtual DestList OEDests (const Vertex< VID_T > &v) const =0
 Return the outgoing edge destination fragment ID list of a inner vertex. More...
 
+virtual size_t OEDestsSize () const =0
 
virtual DestList IOEDests (const Vertex< VID_T > &v) const =0
 Return the edge destination fragment ID list of a inner vertex. More...
 
+virtual size_t IOEDestsSize () const =0
 
virtual AdjList< VID_T, EDATA_T > GetIncomingInnerVertexAdjList (const Vertex< VID_T > &v)=0
 Returns the incoming adjacent inner vertices of v. More...
 
virtual ConstAdjList< VID_T, EDATA_T > GetIncomingInnerVertexAdjList (const Vertex< VID_T > &v) const =0
 Returns the incoming adjacent inner vertices of v. More...
 
virtual AdjList< VID_T, EDATA_T > GetIncomingOuterVertexAdjList (const Vertex< VID_T > &v)=0
 Returns the incoming adjacent outer vertices of v. More...
 
virtual ConstAdjList< VID_T, EDATA_T > GetIncomingOuterVertexAdjList (const Vertex< VID_T > &v) const =0
 Returns the incoming adjacent outer vertices of v. More...
 
virtual AdjList< VID_T, EDATA_T > GetOutgoingInnerVertexAdjList (const Vertex< VID_T > &v)=0
 Returns the outgoing adjacent inner vertices of v. More...
 
virtual ConstAdjList< VID_T, EDATA_T > GetOutgoingInnerVertexAdjList (const Vertex< VID_T > &v) const =0
 Returns the outgoing adjacent inner vertices of v. More...
 
virtual AdjList< VID_T, EDATA_T > GetOutgoingOuterVertexAdjList (const Vertex< VID_T > &v)=0
 Returns the outgoing adjacent outer vertices of v. More...
 
virtual ConstAdjList< VID_T, EDATA_T > GetOutgoingOuterVertexAdjList (const Vertex< VID_T > &v) const =0
 Returns the outgoing adjacent outer vertices of v. More...
 
bool Gid2Vertex (const vid_t &gid, vertex_t &v) const override
 Convert from global id to a vertex handle. More...
 
vid_t Vertex2Gid (const vertex_t &v) const override
 Convert from vertex handle to its global id. More...
 
fid_t fid () const
 Returns the ID of this fragment. More...
 
fid_t fnum () const
 Returns the number of fragments. More...
 
- Public Member Functions inherited from grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
FragmentBase (std::shared_ptr< vertex_map_t > vm_ptr)
 
+std::shared_ptr< vertex_map_t > GetVertexMap ()
 
+const std::shared_ptr< vertex_map_t > GetVertexMap () const
 
virtual void Init (fid_t fid, bool directed, std::vector< internal::Vertex< VID_T, VDATA_T >> &vertices, std::vector< Edge< VID_T, EDATA_T >> &edges)=0
 Construct a fragment with a set of vertices and edges. More...
 
virtual void PrepareToRunApp (const CommSpec &comm_spec, PrepareConf conf)=0
 For some kind of applications, specific data structures will be generated. More...
 
bool directed () const
 Returns true if the fragment is directed, false otherwise. More...
 
fid_t fid () const
 Returns the ID of this fragment. More...
 
fid_t fnum () const
 Returns the number of fragments. More...
 
virtual size_t GetEdgeNum () const =0
 Returns the number of edges in this fragment. More...
 
VID_T GetVerticesNum () const
 Returns the number of vertices in this fragment. More...
 
size_t GetTotalVerticesNum () const
 Returns the number of vertices in the entire graph. More...
 
const vertices_t & Vertices () const
 Get all vertices referenced to this fragment. More...
 
bool GetVertex (const OID_T &oid, Vertex< VID_T > &v) const
 Get a vertex with original ID vid. More...
 
OID_T GetId (const Vertex< VID_T > &v) const
 Get the original ID of a vertex. More...
 
+OID_T Gid2Oid (VID_T gid) const
 
fid_t GetFragId (const Vertex< VID_T > &u) const
 Get the ID of fragment the input vertex belongs to. More...
 
virtual const VDATA_T & GetData (const Vertex< VID_T > &v) const =0
 Get the data of a vertex. More...
 
virtual void SetData (const Vertex< VID_T > &v, const VDATA_T &val)=0
 Set the data of a vertex. More...
 
virtual bool HasChild (const Vertex< VID_T > &v) const =0
 Check if vertex v has a child, that is, existing an edge v->u. More...
 
virtual bool HasParent (const Vertex< VID_T > &v) const =0
 Check if vertex v has a parent, that is, existing an edge u->v. More...
 
virtual int GetLocalInDegree (const Vertex< VID_T > &v) const =0
 Returns the in-degree of vertex v in this fragment. More...
 
virtual int GetLocalOutDegree (const Vertex< VID_T > &v) const =0
 Returns the out-degree of vertex v in this fragment.<Paste> More...
 
virtual AdjList< VID_T, EDATA_T > GetIncomingAdjList (const Vertex< VID_T > &v)=0
 Returns the incoming adjacent vertices of v. More...
 
+virtual ConstAdjList< VID_T, EDATA_T > GetIncomingAdjList (const Vertex< VID_T > &v) const =0
 
+virtual fragment_adj_list_t GetIncomingAdjList (const Vertex< VID_T > &v, fid_t fid)=0
 
+virtual fragment_const_adj_list_t GetIncomingAdjList (const Vertex< VID_T > &v, fid_t fid) const =0
 
virtual AdjList< VID_T, EDATA_T > GetOutgoingAdjList (const Vertex< VID_T > &v)=0
 Returns the outgoing adjacent vertices of v. More...
 
+virtual ConstAdjList< VID_T, EDATA_T > GetOutgoingAdjList (const Vertex< VID_T > &v) const =0
 
+virtual fragment_adj_list_t GetOutgoingAdjList (const Vertex< VID_T > &v, fid_t fid)=0
 
+virtual fragment_const_adj_list_t GetOutgoingAdjList (const Vertex< VID_T > &v, fid_t fid) const =0
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Protected Member Functions

+bool IsInnerVertexGid (VID_T gid) const
 
+bool IsInnerVertexLid (VID_T lid) const
 
+bool Gid2Lid (VID_T gid, VID_T &lid) const
 
+bool InnerVertexGid2Lid (VID_T gid, VID_T &lid) const
 
+virtual bool OuterVertexGid2Lid (VID_T gid, VID_T &lid) const =0
 
+void initMirrorInfo (const CommSpec &comm_spec)
 
+template<typename IOADAPTOR_T >
void serialize (std::unique_ptr< IOADAPTOR_T > &writer)
 
+template<typename IOADAPTOR_T >
void deserialize (std::unique_ptr< IOADAPTOR_T > &reader)
 
- Protected Member Functions inherited from grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
+void init (fid_t fid, bool directed)
 
+template<typename IOADAPTOR_T >
void serialize (std::unique_ptr< IOADAPTOR_T > &writer)
 
+template<typename IOADAPTOR_T >
void deserialize (std::unique_ptr< IOADAPTOR_T > &reader)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Protected Attributes

+inner_vertices_t inner_vertices_
 
+outer_vertices_t outer_vertices_
 
+std::vector< sub_vertices_t > outer_vertices_of_frag_
 
+std::vector< mirror_vertices_t > mirrors_of_frag_
 
+IdParser< VID_T > id_parser_
 
+std::shared_ptr< vertex_map_t > vm_ptr_
 
- Protected Attributes inherited from grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
+fid_t fid_
 
+fid_t fnum_
 
+bool directed_
 
+VID_T ivnum_
 
+vertices_t vertices_
 
+std::shared_ptr< vertex_map_t > vm_ptr_
 
+IdParser< VID_T > id_parser_
 
+

Detailed Description

+

template<typename OID_T, typename VID_T, typename VDATA_T, typename EDATA_T, typename TRAITS_T>
+class grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >

+ +

IEdgecutFragment defines the interfaces of fragments with edgecut. To learn more about edge-cut and vertex-cut, please refers to https://spark.apache.org/docs/1.6.2/graphx-programming-guide.html#optimized-representation.

+

If we have an edge a->b cutted by the partitioner, and a is in frag_0, and b in frag_1. Then: a->b is a crossing edge, a is an inner_vertex in frag_0, b is an outer_vertex in frag_0.

+
Template Parameters
+ + + + + + +
OID_T
VID_T
VDATA_T
EDATA_T
TRAITS_T
+
+
+

Member Function Documentation

+ +

◆ fid()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + +
fid_t grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::fid
+
+inline
+
+ +

Returns the ID of this fragment.

+
Returns
The ID of this fragment.
+ +
+
+ +

◆ fnum()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + +
fid_t grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::fnum
+
+inline
+
+ +

Returns the number of fragments.

+
Returns
The number of fragments.
+ +
+
+ +

◆ GetIncomingInnerVertexAdjList() [1/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
virtual ConstAdjList<VID_T, EDATA_T> grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetIncomingInnerVertexAdjList (const Vertex< VID_T > & v) const
+
+pure virtual
+
+ +

Returns the incoming adjacent inner vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The incoming adjacent inner vertices of v.
+ +

Implemented in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >, and grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >.

+ +
+
+ +

◆ GetIncomingInnerVertexAdjList() [2/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
virtual AdjList<VID_T, EDATA_T> grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetIncomingInnerVertexAdjList (const Vertex< VID_T > & v)
+
+pure virtual
+
+ +

Returns the incoming adjacent inner vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The incoming adjacent inner vertices of v.
+ +

Implemented in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >, and grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >.

+ +
+
+ +

◆ GetIncomingOuterVertexAdjList() [1/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
virtual ConstAdjList<VID_T, EDATA_T> grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetIncomingOuterVertexAdjList (const Vertex< VID_T > & v) const
+
+pure virtual
+
+ +

Returns the incoming adjacent outer vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The incoming adjacent outer vertices of v.
+ +

Implemented in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >, and grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >.

+ +
+
+ +

◆ GetIncomingOuterVertexAdjList() [2/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
virtual AdjList<VID_T, EDATA_T> grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetIncomingOuterVertexAdjList (const Vertex< VID_T > & v)
+
+pure virtual
+
+ +

Returns the incoming adjacent outer vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The incoming adjacent outer vertices of v.
+ +

Implemented in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >, and grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >.

+ +
+
+ +

◆ GetInnerVertex()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetInnerVertex (const OID_T & oid,
Vertex< VID_T > & v 
) const
+
+inline
+
+ +

Get a inner vertex with original ID vid.

+
Parameters
+ + + +
vidOriginal ID.
vGot vertex.
+
+
+
Returns
True if find a inner vertex with original ID vid in this fragment, false otherwise.
+ +
+
+ +

◆ GetInnerVertexGid()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
VID_T grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetInnerVertexGid (vertex_t v) const
+
+inline
+
+ +

Convert from outer vertex handle to its global id.

+
Parameters
+ + +
vInput vertex handle.
+
+
+
Returns
Global id of the vertex.
+ +
+
+ +

◆ GetInnerVertexId()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
OID_T grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetInnerVertexId (vertex_t v) const
+
+inline
+
+ +

Get the original ID of an inner vertex.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The original ID.
+ +
+
+ +

◆ GetInnerVerticesNum()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + +
VID_T grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetInnerVerticesNum () const
+
+inline
+
+ +

Returns the number of inner vertices in this fragment.

+
Returns
The number of inner vertices in this fragment.
+ +
+
+ +

◆ GetOuterVertexGid()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
virtual VID_T grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetOuterVertexGid (vertex_t v) const
+
+pure virtual
+
+ +

Convert from inner vertex handle to its global id.

+
Parameters
+ + +
vInput vertex handle.
+
+
+
Returns
Global id of the vertex.
+ +

Implemented in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >, and grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >.

+ +
+
+ +

◆ GetOuterVertexId()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
OID_T grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetOuterVertexId (vertex_t v) const
+
+inline
+
+ +

Get the original ID of an outer vertex.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The original ID.
+ +
+
+ +

◆ GetOuterVerticesNum()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + +
VID_T grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetOuterVerticesNum () const
+
+inline
+
+ +

Returns the number of outer vertices in this fragment.

+
Returns
The number of outer vertices in this fragment.
+ +
+
+ +

◆ GetOutgoingInnerVertexAdjList() [1/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
virtual ConstAdjList<VID_T, EDATA_T> grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetOutgoingInnerVertexAdjList (const Vertex< VID_T > & v) const
+
+pure virtual
+
+ +

Returns the outgoing adjacent inner vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The outgoing adjacent inner vertices of v.
+ +

Implemented in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >, and grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >.

+ +
+
+ +

◆ GetOutgoingInnerVertexAdjList() [2/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
virtual AdjList<VID_T, EDATA_T> grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetOutgoingInnerVertexAdjList (const Vertex< VID_T > & v)
+
+pure virtual
+
+ +

Returns the outgoing adjacent inner vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The outgoing adjacent inner vertices of v.
+ +

Implemented in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >, and grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >.

+ +
+
+ +

◆ GetOutgoingOuterVertexAdjList() [1/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
virtual ConstAdjList<VID_T, EDATA_T> grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetOutgoingOuterVertexAdjList (const Vertex< VID_T > & v) const
+
+pure virtual
+
+ +

Returns the outgoing adjacent outer vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The outgoing adjacent outer vertices of v.
+ +

Implemented in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >, and grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >.

+ +
+
+ +

◆ GetOutgoingOuterVertexAdjList() [2/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
virtual AdjList<VID_T, EDATA_T> grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetOutgoingOuterVertexAdjList (const Vertex< VID_T > & v)
+
+pure virtual
+
+ +

Returns the outgoing adjacent outer vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The outgoing adjacent outer vertices of v.
+ +

Implemented in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >, and grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >.

+ +
+
+ +

◆ Gid2Vertex()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::Gid2Vertex (const vid_t & gid,
vertex_tv 
) const
+
+inlineoverridevirtual
+
+ +

Convert from global id to a vertex handle.

+
Parameters
+ + + +
gidInput global id.
vOutput vertex handle.
+
+
+
Returns
True if exists a vertex with global id as gid in this fragment, false otherwise.
+ +

Implements grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+ +

◆ IEDests()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
virtual DestList grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::IEDests (const Vertex< VID_T > & v) const
+
+pure virtual
+
+ +

Return the incoming edge destination fragment ID list of a inner vertex.

+
Note
: For inner vertex v of fragment-0, if outer vertex u and w are parents of v. u belongs to fragment-1 and w belongs to fragment-2, then 1 and 2 are in incoming edge destination fragment ID list of v.
+
+: This method is encapsulated in the corresponding sending message API, SendMsgThroughIEdges, so it is not recommended to use this method directly in application programs.
+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The incoming edge destination fragment ID list.
+ +

Implemented in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, and grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >.

+ +
+
+ +

◆ InnerVertexGid2Vertex()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::InnerVertexGid2Vertex (VID_T gid,
Vertex< VID_T > & v 
) const
+
+inline
+
+ +

Convert from global id to an inner vertex handle.

+
Parameters
+ + + +
gidInput global id.
vOutput vertex handle.
+
+
+
Returns
True if exists an inner vertex of this fragment with global id as gid, false otherwise.
+ +
+
+ +

◆ InnerVertices()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + +
const inner_vertices_t& grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::InnerVertices () const
+
+inline
+
+ +

Returns the vertex range of inner vertices in this fragment.

+
Returns
The vertex range of inner vertices in this fragment.
+ +
+
+ +

◆ IOEDests()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
virtual DestList grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::IOEDests (const Vertex< VID_T > & v) const
+
+pure virtual
+
+ +

Return the edge destination fragment ID list of a inner vertex.

+
Note
: For inner vertex v of fragment-0, if outer vertex u and w are neighbors of v. u belongs to fragment-1 and w belongs to fragment-2, then 1 and 2 are in outgoing edge destination fragment ID list of v.
+
+: This method is encapsulated in the corresponding sending message API, SendMsgThroughEdges, so it is not recommended to use this method directly in application programs.
+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The edge destination fragment ID list.
+ +

Implemented in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, and grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >.

+ +
+
+ +

◆ IsInnerVertex()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
bool grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::IsInnerVertex (const Vertex< VID_T > & v) const
+
+inline
+
+ +

Check if vertex v is inner vertex of this fragment.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
True if vertex v is an inner vertex, false otherwise.
+ +
+
+ +

◆ IsOuterVertex()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
bool grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::IsOuterVertex (const Vertex< VID_T > & v) const
+
+inline
+
+ +

Check if vertex v is outer vertex of this fragment.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
True if vertex v is outer vertex, false otherwise.
+ +
+
+ +

◆ OEDests()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
virtual DestList grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::OEDests (const Vertex< VID_T > & v) const
+
+pure virtual
+
+ +

Return the outgoing edge destination fragment ID list of a inner vertex.

+
Note
: For inner vertex v of fragment-0, if outer vertex u and w are children of v. u belongs to fragment-1 and w belongs to fragment-2, then 1 and 2 are in outgoing edge destination fragment ID list of v.
+
+: This method is encapsulated in the corresponding sending message API, SendMsgThroughOEdges, so it is not recommended to use this method directly in application programs.
+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The outgoing edge destination fragment ID list.
+ +

Implemented in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, and grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >.

+ +
+
+ +

◆ OuterVertexGid2Vertex()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::OuterVertexGid2Vertex (VID_T gid,
Vertex< VID_T > & v 
) const
+
+inline
+
+ +

Convert from global id to an outer vertex handle.

+
Parameters
+ + + +
gidInput global id.
vOutput vertex handle.
+
+
+
Returns
True if exists an outer vertex of this fragment with global id as gid, false otherwise.
+ +
+
+ +

◆ OuterVertices()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + +
const outer_vertices_t& grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::OuterVertices () const
+
+inline
+
+ +

Returns the vertex range of outer vertices in this fragment.

+
Returns
The vertex range of outer vertices in this fragment.
+ +
+
+ +

◆ Vertex2Gid()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
vid_t grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::Vertex2Gid (const vertex_tv) const
+
+inlineoverridevirtual
+
+ +

Convert from vertex handle to its global id.

+
Parameters
+ + +
vInput vertex handle.
+
+
+
Returns
Global id of the vertex.
+ +

Implements grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+
+ + + + diff --git a/classgrape_1_1EdgecutFragmentBase.png b/classgrape_1_1EdgecutFragmentBase.png new file mode 100644 index 0000000000000000000000000000000000000000..3ae260d001a9d091ef128742817c0e7bf2f82583 GIT binary patch literal 9707 zcmeHt2~?9;yDt7#X{*RzwTcMj*kY*@IDmiwqQy!P87huUDI#K+LSzUKNUZjUS_N#Z zpah823Ni+n0)!+gN`Al)YGe!{K!AuL2@sQz`F=?(;yVAi>#lXrS?8X$?%s?2eIei8 z``z#G>}S7UuKD?Rn0#vfsgaS9iRX8Rj~f|%nhV@7e7qcJS=mH1a53{ccH&#DRtwy| zo{=QxJiQ6r>Hi)-e!Sw^FbMegal&yQe%H0)63Hj!bt~^mrT^IyDqaPF$-_w=RnE1NruH0SJ zd`-_Qw~F9_TI;Bo1?(+}qOC zej%BzeVK`sLU9npB+d%nP%W0zn<^ANS|`r*D>UYm3>i<|g(+V$|GMvtjvX-epKPZ)F`TxU_=P! zBBY+>Fo1`=h4jkQNfPxnW)tbn02-4Ht?WaTi%^y- zoGy99XQl%4zhoEp({faUULerZrss_<4Gg%{y$aF_ZuO?Wk9EKCU zOog&qj2fd(`fKGcqm^Gy*6%3szY9aoP>?*E%uZqFBX%`9h6+QP{h&>MT|*H0fP7|n z&d1^|Qg=ut?iKFp)@*kYU~V)wjV7*0^vzsTn&JqEK~sdba?^uKArfe>uR2={r-5_1 zM!Xb)#GlG-!YL@)Vs*0|0TNZC(y7YAH`;06-`+Vg1#sldPS|N5{(R64fi#aOAPADE zK9XQ%I<=$PslX{uiROtjlbDGrcal4z8GTojkP;-T$BSG9u0%8obz4Uy3_5=TB zg6KMXG8hp})FNUrFd{g8d$**RlMs!x^))e-q$}BoJF?xvVzj{V1?nO(SoVm67~xKK zNxBZuBt`9DPR{@wn9g#Fx=G|$B!ij3D}l-T>hgI_%V_d7>PG&+$UEClt~MY59ES@B zqU|fd{89-lzm_2Ug)K>sL53oSg!4N8<3uCTT5huDrrOriW_h<6dJQGM-F zehFP3qYiE652>T%#J}9YmEH&dWLopPN8zx>n8Dgf{<}zNg~#UVKA-N~^r^m#?04*H zj2@idu~eNpfW7^fq{PC#FVYU!mIlJfl0H$NU8w;{0W2kLFo3SEUAVErFrcn=J9l>J zS3iZH)q}4AftTm1ml-UlYa#GKkimg7C0#cC z|1N*&Y>CDo=krU-N?`esilCj>zIvMc0g)?@*AaXuqY46%LQ z!cY&fmIob(X@OG|5L3t>n?GKZ4qD5qg;8Ua1osqqN_FsdcX8CC*k%|RmhjL!lTp~Q zrcg*nSqN%6$F}6`%VMO9A#qlt*JDI|?F#m1eO_r{m-)84&$5JVbR*UdK$}PteYj9c zH?5?cr-nzAD#{KNIap>38j73N)M+g?L(C-eg9UC#b7S&Ok>Vnut}4KF0c0i=?EnVd zkGceY+T;Z{i7O{aMK337olT9;K!3ba+7j_zAzPKZ!21N*UWw4==+|z+?L-ECE&bFMan3l-ZFP@QlOwi@G;kx?C`j0RhT&REJGCP z>a^bFPs^)%_z}S}ezdz=vuC{{7)9*xv+xaR8L>?4y}+CviX;C#-I5yjYKSlS<9 z4zm?8@YG5>7qige2gH>F^}#uHmQzWWL-X#9p8h~q(k`5owSS;L2hYza!mQ3CcvnB~ zk-QX)^pesU+?rR#PExE-?#UqZ&w4eo3C5W7o^q2Ri{uG)wviS$5wEHDIc3h!s zarc|OA~aw0)ik=jWuu@bky%`;B)wX*QHpQdV-MNr-o@--KHx8R&Q7JIYJxH$P#5~{ zdg_`iKJVphy=@SLHWVkkG%jgu`zR0B#6rhUwR*u#Yhb8gMJhs#&jh_RF(9m78?0#7 zb<#rn1ucaqzI~TMEr;jyV1gFl2_ijMj-v8IN4=zhjf0IFljeNvlBcq4XMdkgZcSJP zg{>k|T%Y=y8m)l#d%qu&aJNKIO|HF8B#)Lkwj4b4#N#b>?V`&7H${;>mlw?e+?1Nz z8}JpFOGk9eR+{MJeWB=r8E}(aerWl>?tZrfRu0QA$zQyruGT*YH0aL%2!TCzb}jv? zX6I56eq0M#g7>^#O2f?hQQbm+H0)uzmT_jubNiNV86WH>VgFfOMwPkYXCu$%K6rl# zdAAHGvtD;ch*TN0>S$l3L%|Aj!%{{~ym#nOu)N(=uhnFC=BI#*wU*Br);7}fKc;)~ za~DQDUF_2D!r(^S<)u`o6!G$TDGT=K7y5sS-LpVq7ls2v+zMSpUyICN9_4yqPw1f9UH(*_JAMw6*6}UG4C92TWj|U2^-cX(RvrwA>0<_>iT0vz_ha*i#`A z>(WSaY4pKD!N{XnXiMc>2@^3s_bmJ^fM?y%{oDh*Tc7zzWX9iNjjQ`(i`sbjZu(I> zQoePdmTLN1an2?ALZ0_vG(D;GRGm#nI%ufFI_2DVJD~d2UOL^z$1F&T_>MT&XGD@E zAo7HRK}Nfh+g>g$rzv+lF@s-t?$0R0PLz4IkqZ01tQ?=(IJ9P2RPWp4n7vO;SKqV_ zbgxf~8^7htLlc$mY7pce*zTFPxN9$7@M_zj`U_rqq|L2~Yg?+)_UJUx5o|)x3RvI- z{azQ~{OSKJRqNT>Jf&HusIX;D39<=}B0%D|Ja*HJFg(n}VaET))KeXNi(eg|$ zp6M)h97Rc_%iEG?t{QntRginv~c3;YJ$%DFo6iilz9d?ohO30h04|K*UURxY=tS~DLD709+Aj-z! zzCQ2@dIJXqjkX+O6{gliPuHc)NVTC*%l5h5Bws zsot584y~Hc;Ucq+M!V@GP!YvZCs@DUF}c5;>J!b9T~arn$VMa~3%YE6y>y5B_tiOM zp)b-dE2psWd!dC$d!@;F<|XMzzmd&iV7%ysH3EACr-_cMj^xna_T_Rna=GqS-3=G zTjQSjuI0x%1ia(XvS^8sn>^tZ3)!5E_R+pv9>5-2_$3IbY<(fd%qzUXcyRrYTQ8^X z7I!BSZ3>%Q579Yjbw)pRTwsX|RbE-+4Mo9q|7-tCF~EY{5z4jI=jc6eVu3TSxTLF` z9y8pUF^w3(-J1iCPxXYY^8;)GU%h)P5s!lsaSLOmbw^hs8?~I2gE{#2nv)fWkz$u_ zJc_HzD73i6XLH;GoS)|aUeFwMwD!+g1&>U|HS!USZ7vx7Q0E*!=g$$>@(W!~Tr}wJ4!H zlZ$&itMOiK%oc1A#IbnVJS`*^d~Ejk0O?tmKLdc45*#BD+V2}X@QeW|l#mN@5dr?# zN|n~_9v^Ljve&Sx^G$CR;73yOLy?Z6Ff5;!iQMZMvipzQ@v83tj3k+dXt6}3s>L>) z+(hKytjkX7ad1mj^hk|}5(j^)O&2YkzM#;Q1AKu2e*sb_C@y2qbJ^S6YU;OCt)BZ5 zz+quzvNtwR+s?vSCvMgOG!O?;yD8IlI=F3X$3A$1Cw8MZjr#zlJj$|emIywhP=B&c znaDvMNI&Q~zlzX3mjy)m>D5d8NJ}8f=(4XoBR|)VS8ys8S_>y9z+3Cm>9;0`ubG}$ z>I+c47H|NX-T^Ac8~{lo^b8p_bA5o=SG@=Q0GM74y6vJgV`13} z2Mg~Vi+jz@Q|3Ci)>UA$(0P&vQx|Bu>f-Rn?RMS7x|;HTGOb~sd$$MbE|9*3Jq&S> zVb{}L2zrhJU3zT&fS&yP!HITVZuk<0VtPhutY@G4M%5aQS#ol<`R_crrg3U_dhP0} zeYJS$@-h&x(Wv}WI?{MD%WxQ<%_#X?M;cFZ4NGY)hUt#?A-#ZMbOnAfK)2%44uC0u z@?`V>obH4>iVGhQ#_ea=H1A9z=L-Tr*~oposri~_#)gKWI_qYUI|JgWv2YKN2abDS(@rdZ1zLMg z7|Xa%lsDw1qEP)Oi#8&h)3qstZbF_qllsPUo@1BNjulvSiM+40ioDsur;9q+36Y=l#ey95 zWOG5p>=fR1rF1FtG_x8Z+6u~MdZl0cxU^=s%4z?I)TK!kK)+<0@k#al)lVk(PLy?p zclRFSe%gPQxAsZVGdzC+8i~q^hI^=yE0fiS3IlTTx^cgPEC4$2>{d`PuE7z2GPS!uFa z{ruwu6e>?rMQKlJJD)dRe4r_QAn{ z(AG_p<}KBwB6{;LGyIzh)bEH%^{AWOB92ac=DcI5C+#$X}NE57(4- zqG>wL&Z_EwjyO?#I?&*58eSXzmM*fE!vScATul)tW|GO)N;(tjNZ$jpeQhq@=9*Rgr6mIV;p7MFcDF}J~ zE8$zUf0H7Tg?pW(KyMKAf#;+~fQ&I_nBV#`D;zsg{`qB?6-9hd7}7%jhPW+a!Nv(L zoIbK&mgt7O*g!7hh*h++8s!UMqtUvctvfs%4yv~4moE(f^&3>HlnZXkSnkHsRL?W14aR5~;xrI&;BQo$Cb zQlnZ-)>eF{ad|^vg+$?A>_zAQST?tLhmr#a*XoqHu8+HdvMCO5vH*rz zUo$&?wFP&9q0~5S3u0AapE^D9-XCIzDYzi{8l<`vEfxq`s{MxxKqZP9F=$^e{?`T| zAn@-4g8l5ex8I;kY5$i!bOGCzKlNld-G}d?xqjN!Q}ga%s8QC}qCU41%_lsZ(bzVe zPgOZfTn|q^;?2FBR;t2Y$F(Hy^0^;%h`)6YAY`S}*#H)T4mX~Bg=rS-e&TgV zxz@wim18y9Yn(VZ%kp*+bvuiTGM!zie2YB7o~x_*BNH86Qzlwd?z%y@76hyUXHn{8 z_a@=O?SGy^;wKdHF&^F;Q?#W@B?DNCTlum#cAxn5-$GtxNDvf@AFYN*wyO#nY(!xz_Rj4Hsqods) zVvxU3A*)PalQ};d!qM{*1GM2Dc7m1h@mm?S!gIcKlb$81c(8EoxVG^jCZg6l1xOuv zwlfl3LRv_KdVuS3tj7K{qH+%v@{$pwz`z~{QWCS_E?R5(a$xMmQ1`g3cwQkM$2DXh zgp2sA>eQA?1jgV2Qb#wXl*6C>h_O$w?idm!`_Y_3EMyS0tyV~V4g{#u5TLiMwZ8yJ z3{WjO*05U0&Bb#(_&@iQ|9_KQ0QT=F!#4iz0*X?--}!YpkJEbQLii5}*|XZEUwzV5 zyM)FW?_8SGLXUiq@LKm@pU483$p?J&zb0Mw-#rWZpZ_{jWiZ4O*3#6}yEoxP`nxm3 zanJdGF1{eVWjHzjhlgJmUwhdY(oI0B<;#5ry51V&0~|gK)#HLb&G&UOOGg0h?qYA? z!_?h_({a`v75`h7_4qy*-P*=b4yS*C({m;Arr5+Ud7|E05c>#L<^Qk86#yp}p|D3u z5MQiV$?wYxPkSV2NQ#W#CX@{JjaZHDuyK??g?xqdR7H^J1uV+0*PrHpA8Z+N7eGxB zU7z#!n{9OV)Er{|27}H}OM@q8J?z6tbVmjZec!IM};0De#ydR0#&RZu77#1K~YwnJpz^%cf_Th6A&BX`a zhUd?%+3#pyE$wYYMun+`AM>|T_B@_lFBHtanV0TyO}5C16`hEs_-yRMCCu0-aT3lX zQcxbA^IG_O6VHq8uGGIUan&}F6Jii9r(&`p*`=Uk2zm7NuE%Z1xHYUUWbAAGs}fus z_-Qf&cvVujmDoUXcO7md5s@L2a!(6fp)V&1oMZv#4ZZD-sU%o;P|tlh$=xK{gBF5C zcM&c)FysKc{!DOdA7NLYe~=rF*&lj39(sfnpYjl7qX=M)Ww*yxcsE&&1))%v`5ls? z5UY-9g_>5+ZWN4Gur?b97gFjsZ;ZE+)~j$Q;nFc-@YW73@x4EGP$Q1k?pa@P0T~z+ zV2P>hw%Sp#!Et%z(2dgsCe$t@AUi6sO6&(Ike_4WtoW-;k2v)Mu8}(5(HFZvsUd}* z#a>NmA>+c?E_V>+^jJ=1YN8iXw9Qk)S?VCJOkrJ}9YZSN@hPXAA{2p#Y*KJ%U{b)!Gc!b`-@uPyDHcO>OZT?Mzsr^qqm)j zUB6GT50Bt#7hh-#kPK1<4PdGKuKsI8n-DnoSlrpyY$LMD6h=DrW|H6^#(AO<_FD;V@^)^gs9C9&Y`j~%Nk`>Ml6HDeFmBv9_d zpnd{zxNVnd-(#3!FD!=rf%_Il`)utnX5V%2r2KHe%C1VjBj(mbAJHRu_v5JqY%gzP z9+8w1y&$DfcC)UpI*P?SUD6$756m`KS7p=TODfdmKPbW`9Q#jedDRCIZ%BaWERoWX zJ>TwWwM27<#0HSs*t_@>i+A}A04L7BcTqzs{sX96JlwuZ>!aVj%o&kDt~{;6Re%1s TVBnWoMxNjL9IpQ6hb#XJXyVpv literal 0 HcmV?d00001 diff --git a/classgrape_1_1FilterAdjList-members.html b/classgrape_1_1FilterAdjList-members.html new file mode 100644 index 00000000..a9125fe4 --- /dev/null +++ b/classgrape_1_1FilterAdjList-members.html @@ -0,0 +1,95 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::FilterAdjList< VID_T, EDATA_T, PRED_T > Member List
+
+
+ +

This is the complete list of members for grape::FilterAdjList< VID_T, EDATA_T, PRED_T >, including all inherited members.

+ + + + + + + + + + + + + + +
begin() (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >inline
begin() const (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >inline
begin_ (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >private
Empty() const (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >inline
empty() const (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >inline
end() (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >inline
end() const (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >inline
end_ (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >private
FilterAdjList(NbrT *b, NbrT *e, PRED_T pred) (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >inline
NbrT typedef (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >private
NotEmpty() const (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >inline
pred_ (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >private
~FilterAdjList() (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >inline
+ + + + diff --git a/classgrape_1_1FilterAdjList.html b/classgrape_1_1FilterAdjList.html new file mode 100644 index 00000000..ac4d3b96 --- /dev/null +++ b/classgrape_1_1FilterAdjList.html @@ -0,0 +1,138 @@ + + + + + + + +libgrape-lite: grape::FilterAdjList< VID_T, EDATA_T, PRED_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::FilterAdjList< VID_T, EDATA_T, PRED_T > Class Template Reference
+
+
+ + + + + + +

+Classes

class  const_iterator
 
class  iterator
 
+ + + + + + + + + + + + + + + + + +

+Public Member Functions

FilterAdjList (NbrT *b, NbrT *e, PRED_T pred)
 
+bool Empty () const
 
+bool NotEmpty () const
 
+iterator begin ()
 
+iterator end ()
 
+const_iterator begin () const
 
+const_iterator end () const
 
+bool empty () const
 
+ + + +

+Private Types

+using NbrT = Nbr< VID_T, EDATA_T >
 
+ + + + + + + +

+Private Attributes

+NbrTbegin_
 
+NbrTend_
 
+PRED_T pred_
 
+
+ + + + diff --git a/classgrape_1_1FilterAdjList_1_1const__iterator-members.html b/classgrape_1_1FilterAdjList_1_1const__iterator-members.html new file mode 100644 index 00000000..67b88154 --- /dev/null +++ b/classgrape_1_1FilterAdjList_1_1const__iterator-members.html @@ -0,0 +1,94 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iterator Member List
+
+
+ +

This is the complete list of members for grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iterator, including all inherited members.

+ + + + + + + + + + + + + +
const_iterator(const pointer_type &c, const pointer_type &end, const PRED_T &pred) noexcept (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iterator)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iteratorinlineexplicit
current_ (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iterator)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iteratorprivate
end_ (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iterator)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iteratorprivate
operator!=(const const_iterator &rhs) noexcept (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iterator)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iteratorinline
operator*() const noexcept (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iterator)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iteratorinline
operator++() noexcept (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iterator)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iteratorinline
operator++(int) noexcept (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iterator)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iteratorinline
operator->() const noexcept (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iterator)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iteratorinline
operator==(const const_iterator &rhs) noexcept (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iterator)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iteratorinline
pointer_type typedef (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iterator)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iteratorprivate
pred_ (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iterator)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iteratorprivate
reference_type typedef (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iterator)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iteratorprivate
+ + + + diff --git a/classgrape_1_1FilterAdjList_1_1const__iterator.html b/classgrape_1_1FilterAdjList_1_1const__iterator.html new file mode 100644 index 00000000..d5d21ba9 --- /dev/null +++ b/classgrape_1_1FilterAdjList_1_1const__iterator.html @@ -0,0 +1,130 @@ + + + + + + + +libgrape-lite: grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iterator Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iterator Class Reference
+
+
+ + + + + + + + + + + + + + + + +

+Public Member Functions

const_iterator (const pointer_type &c, const pointer_type &end, const PRED_T &pred) noexcept
 
+reference_type operator* () const noexcept
 
+pointer_type operator-> () const noexcept
 
+const_iteratoroperator++ () noexcept
 
+const_iterator operator++ (int) noexcept
 
+bool operator== (const const_iterator &rhs) noexcept
 
+bool operator!= (const const_iterator &rhs) noexcept
 
+ + + + + +

+Private Types

+using pointer_type = const NbrT *
 
+using reference_type = const NbrT &
 
+ + + + + + + +

+Private Attributes

+const NbrTcurrent_
 
+const NbrTend_
 
+const PRED_T & pred_
 
+
+ + + + diff --git a/classgrape_1_1FilterAdjList_1_1iterator-members.html b/classgrape_1_1FilterAdjList_1_1iterator-members.html new file mode 100644 index 00000000..491fa252 --- /dev/null +++ b/classgrape_1_1FilterAdjList_1_1iterator-members.html @@ -0,0 +1,94 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iterator Member List
+
+
+ +

This is the complete list of members for grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iterator, including all inherited members.

+ + + + + + + + + + + + + +
current_ (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iterator)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iteratorprivate
end_ (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iterator)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iteratorprivate
iterator(const pointer_type &c, const pointer_type &end, const PRED_T &pred) noexcept (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iterator)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iteratorinlineexplicit
operator!=(const iterator &rhs) noexcept (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iterator)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iteratorinline
operator*() const noexcept (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iterator)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iteratorinline
operator++() noexcept (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iterator)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iteratorinline
operator++(int) noexcept (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iterator)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iteratorinline
operator->() const noexcept (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iterator)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iteratorinline
operator==(const iterator &rhs) noexcept (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iterator)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iteratorinline
pointer_type typedef (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iterator)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iteratorprivate
pred_ (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iterator)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iteratorprivate
reference_type typedef (defined in grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iterator)grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iteratorprivate
+ + + + diff --git a/classgrape_1_1FilterAdjList_1_1iterator.html b/classgrape_1_1FilterAdjList_1_1iterator.html new file mode 100644 index 00000000..42ff4170 --- /dev/null +++ b/classgrape_1_1FilterAdjList_1_1iterator.html @@ -0,0 +1,130 @@ + + + + + + + +libgrape-lite: grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iterator Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iterator Class Reference
+
+
+ + + + + + + + + + + + + + + + +

+Public Member Functions

iterator (const pointer_type &c, const pointer_type &end, const PRED_T &pred) noexcept
 
+reference_type operator* () const noexcept
 
+pointer_type operator-> () const noexcept
 
+iteratoroperator++ () noexcept
 
+iterator operator++ (int) noexcept
 
+bool operator== (const iterator &rhs) noexcept
 
+bool operator!= (const iterator &rhs) noexcept
 
+ + + + + +

+Private Types

+using pointer_type = NbrT *
 
+using reference_type = NbrT &
 
+ + + + + + + +

+Private Attributes

+NbrTcurrent_
 
+NbrTend_
 
+const PRED_T & pred_
 
+
+ + + + diff --git a/classgrape_1_1FilterConstAdjList-members.html b/classgrape_1_1FilterConstAdjList-members.html new file mode 100644 index 00000000..4a781932 --- /dev/null +++ b/classgrape_1_1FilterConstAdjList-members.html @@ -0,0 +1,93 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T > Member List
+
+
+ +

This is the complete list of members for grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >, including all inherited members.

+ + + + + + + + + + + + +
begin() const (defined in grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >)grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >inline
begin_ (defined in grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >)grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >private
Empty() const (defined in grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >)grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >inline
empty() const (defined in grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >)grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >inline
end() const (defined in grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >)grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >inline
end_ (defined in grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >)grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >private
FilterConstAdjList(const NbrT *b, const NbrT *e, PRED_T pred) (defined in grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >)grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >inline
NbrT typedef (defined in grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >)grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >private
NotEmpty() const (defined in grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >)grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >inline
pred_ (defined in grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >)grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >private
~FilterConstAdjList() (defined in grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >)grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >inline
+ + + + diff --git a/classgrape_1_1FilterConstAdjList.html b/classgrape_1_1FilterConstAdjList.html new file mode 100644 index 00000000..aa01ff1b --- /dev/null +++ b/classgrape_1_1FilterConstAdjList.html @@ -0,0 +1,130 @@ + + + + + + + +libgrape-lite: grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T > Class Template Reference
+
+
+ + + + +

+Classes

class  const_iterator
 
+ + + + + + + + + + + + + +

+Public Member Functions

FilterConstAdjList (const NbrT *b, const NbrT *e, PRED_T pred)
 
+bool Empty () const
 
+bool NotEmpty () const
 
+const_iterator begin () const
 
+const_iterator end () const
 
+bool empty () const
 
+ + + +

+Private Types

+using NbrT = Nbr< VID_T, EDATA_T >
 
+ + + + + + + +

+Private Attributes

+const NbrTbegin_
 
+const NbrTend_
 
+PRED_T pred_
 
+
+ + + + diff --git a/classgrape_1_1FilterConstAdjList_1_1const__iterator-members.html b/classgrape_1_1FilterConstAdjList_1_1const__iterator-members.html new file mode 100644 index 00000000..de68dfda --- /dev/null +++ b/classgrape_1_1FilterConstAdjList_1_1const__iterator-members.html @@ -0,0 +1,94 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iterator Member List
+
+
+ +

This is the complete list of members for grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iterator, including all inherited members.

+ + + + + + + + + + + + + +
const_iterator(const pointer_type &c, const pointer_type &end, const PRED_T &pred) noexcept (defined in grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iterator)grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iteratorinlineexplicit
current_ (defined in grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iterator)grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iteratorprivate
end_ (defined in grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iterator)grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iteratorprivate
operator!=(const const_iterator &rhs) noexcept (defined in grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iterator)grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iteratorinline
operator*() const noexcept (defined in grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iterator)grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iteratorinline
operator++() noexcept (defined in grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iterator)grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iteratorinline
operator++(int) noexcept (defined in grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iterator)grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iteratorinline
operator->() const noexcept (defined in grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iterator)grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iteratorinline
operator==(const const_iterator &rhs) noexcept (defined in grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iterator)grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iteratorinline
pointer_type typedef (defined in grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iterator)grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iteratorprivate
pred_ (defined in grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iterator)grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iteratorprivate
reference_type typedef (defined in grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iterator)grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iteratorprivate
+ + + + diff --git a/classgrape_1_1FilterConstAdjList_1_1const__iterator.html b/classgrape_1_1FilterConstAdjList_1_1const__iterator.html new file mode 100644 index 00000000..667f93d8 --- /dev/null +++ b/classgrape_1_1FilterConstAdjList_1_1const__iterator.html @@ -0,0 +1,130 @@ + + + + + + + +libgrape-lite: grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iterator Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iterator Class Reference
+
+
+ + + + + + + + + + + + + + + + +

+Public Member Functions

const_iterator (const pointer_type &c, const pointer_type &end, const PRED_T &pred) noexcept
 
+reference_type operator* () const noexcept
 
+pointer_type operator-> () const noexcept
 
+const_iteratoroperator++ () noexcept
 
+const_iterator operator++ (int) noexcept
 
+bool operator== (const const_iterator &rhs) noexcept
 
+bool operator!= (const const_iterator &rhs) noexcept
 
+ + + + + +

+Private Types

+using pointer_type = const NbrT *
 
+using reference_type = const NbrT &
 
+ + + + + + + +

+Private Attributes

+const NbrTcurrent_
 
+const NbrTend_
 
+const PRED_T & pred_
 
+
+ + + + diff --git a/classgrape_1_1FixedInArchive-members.html b/classgrape_1_1FixedInArchive-members.html new file mode 100644 index 00000000..c2f94507 --- /dev/null +++ b/classgrape_1_1FixedInArchive-members.html @@ -0,0 +1,112 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::FixedInArchive Member List
+
+
+ +

This is the complete list of members for grape::FixedInArchive, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
add_byte(char v) (defined in grape::FixedInArchive)grape::FixedInArchiveinline
add_bytes(const void *bytes, size_t n) (defined in grape::FixedInArchive)grape::FixedInArchiveinline
allocate(size_type __n) (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
begin_ (defined in grape::FixedInArchive)grape::FixedInArchiveprivate
buffer() (defined in grape::FixedInArchive)grape::FixedInArchiveinline
buffer() const (defined in grape::FixedInArchive)grape::FixedInArchiveinline
buffer_ (defined in grape::FixedInArchive)grape::FixedInArchiveprivate
data() (defined in grape::FixedInArchive)grape::FixedInArchiveinline
data() const (defined in grape::FixedInArchive)grape::FixedInArchiveinline
deallocate(pointer __p, size_type) (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
DefaultAllocator() noexcept (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
DefaultAllocator(const DefaultAllocator &) noexcept (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
DefaultAllocator(DefaultAllocator &&) noexcept (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
FixedInArchive() (defined in grape::FixedInArchive)grape::FixedInArchiveinline
FixedInArchive(FixedInArchive &&rhs) (defined in grape::FixedInArchive)grape::FixedInArchiveinline
init(MessageBuffer &&buf) (defined in grape::FixedInArchive)grape::FixedInArchiveinline
offset_ (defined in grape::FixedInArchive)grape::FixedInArchiveprivate
operator=(const DefaultAllocator &) noexcept (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
operator=(DefaultAllocator &&) noexcept (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
pointer typedef (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >
remaining() const (defined in grape::FixedInArchive)grape::FixedInArchiveinline
reset() (defined in grape::FixedInArchive)grape::FixedInArchiveinline
size() const (defined in grape::FixedInArchive)grape::FixedInArchiveinline
size_type typedef (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >
swap(FixedInArchive &rhs) (defined in grape::FixedInArchive)grape::FixedInArchiveinline
take() (defined in grape::FixedInArchive)grape::FixedInArchiveinline
used() const (defined in grape::FixedInArchive)grape::FixedInArchiveinline
value_type typedef (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >
~DefaultAllocator() noexcept (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
~FixedInArchive() (defined in grape::FixedInArchive)grape::FixedInArchiveinline
+ + + + diff --git a/classgrape_1_1FixedInArchive.html b/classgrape_1_1FixedInArchive.html new file mode 100644 index 00000000..60588e06 --- /dev/null +++ b/classgrape_1_1FixedInArchive.html @@ -0,0 +1,182 @@ + + + + + + + +libgrape-lite: grape::FixedInArchive Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::FixedInArchive Class Reference
+
+
+
+Inheritance diagram for grape::FixedInArchive:
+
+
+ + +grape::DefaultAllocator< _Tp > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

FixedInArchive (FixedInArchive &&rhs)
 
+void init (MessageBuffer &&buf)
 
+char * data ()
 
+const char * data () const
 
+size_t size () const
 
+size_t used () const
 
+size_t remaining () const
 
+void add_byte (char v)
 
+void add_bytes (const void *bytes, size_t n)
 
+void swap (FixedInArchive &rhs)
 
+MicroBuffer take ()
 
+void reset ()
 
+MessageBufferbuffer ()
 
+const MessageBufferbuffer () const
 
- Public Member Functions inherited from grape::DefaultAllocator< _Tp >
DefaultAllocator (const DefaultAllocator &) noexcept
 
DefaultAllocator (DefaultAllocator &&) noexcept
 
+DefaultAllocatoroperator= (const DefaultAllocator &) noexcept
 
+DefaultAllocatoroperator= (DefaultAllocator &&) noexcept
 
+pointer allocate (size_type __n)
 
+void deallocate (pointer __p, size_type)
 
+ + + + + + + +

+Private Attributes

+MessageBuffer buffer_
 
+size_t begin_
 
+size_t offset_
 
+ + + + + + + + +

+Additional Inherited Members

- Public Types inherited from grape::DefaultAllocator< _Tp >
+using pointer = _Tp *
 
+using size_type = size_t
 
+using value_type = _Tp
 
+
+ + + + diff --git a/classgrape_1_1FixedInArchive.png b/classgrape_1_1FixedInArchive.png new file mode 100644 index 0000000000000000000000000000000000000000..aaccca68e69286fbb853e01503dd611d4444c0ed GIT binary patch literal 764 zcmeAS@N?(olHy`uVBq!ia0vp^2Y@($gBeIxq;!=5DTx4|5ZC|z{{xvX-h3_XKQsZz z0^8Ce)h_0UBE#V|J=}dgzV~a4c_Kp*~ZZRk+8E<8DaY=in=TPzQC#T@X_n&{8 zPPNbGPS#ZVTG(w;Byx9 z0=qZ%j};_$&(2fMSfk@mvP^TL)6O|9QwvhWm zTtzhVS26vdwS`yrul~q;<)+~-#^|oOJYQm0L^G!zl}MP8vsX%j;Y-$n62-N@ei+#* zw9fc+^3JQ&b#k8;oLjMqJN902y`bRlvR>VM1*M>qw(PIM)RaEG&B{uMWca=#O31+_ z#W9ybaN%fr)AIUb@_HIr89F&D{EF)-rD+g#gf2d<__`i8IJg_ zbC^^vJ5Bej;BHRYo%NBm{i5s#xc72CxWj99QRu>D?QEG;)(4aS`!jegjN2an?&gQ3 z(#6~KEKPP+F-T4R%zNQ_Y{RpV+eT}OS5v~l?Q2J)@boFyt=akR{0HBmfz5oCK literal 0 HcmV?d00001 diff --git a/classgrape_1_1FragmentBase-members.html b/classgrape_1_1FragmentBase-members.html new file mode 100644 index 00000000..66f430da --- /dev/null +++ b/classgrape_1_1FragmentBase-members.html @@ -0,0 +1,129 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T > Member List
+
+
+ +

This is the complete list of members for grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
deserialize(std::unique_ptr< IOADAPTOR_T > &reader) (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
directed() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
directed_ (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
fid() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
fid_ (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
fnum() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
fnum_ (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
fragment_adj_list_t typedef (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
fragment_const_adj_list_t typedef (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
FragmentBase() (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
FragmentBase(std::shared_ptr< vertex_map_t > vm_ptr) (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineexplicit
GetData(const Vertex< VID_T > &v) const =0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetEdgeNum() const =0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetFragId(const Vertex< VID_T > &u) constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetId(const Vertex< VID_T > &v) constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetIncomingAdjList(const Vertex< VID_T > &v)=0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetIncomingAdjList(const Vertex< VID_T > &v) const =0 (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetIncomingAdjList(const Vertex< VID_T > &v, fid_t fid)=0 (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetIncomingAdjList(const Vertex< VID_T > &v, fid_t fid) const =0 (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetLocalInDegree(const Vertex< VID_T > &v) const =0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetLocalOutDegree(const Vertex< VID_T > &v) const =0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetOutgoingAdjList(const Vertex< VID_T > &v)=0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetOutgoingAdjList(const Vertex< VID_T > &v) const =0 (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetOutgoingAdjList(const Vertex< VID_T > &v, fid_t fid)=0 (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetOutgoingAdjList(const Vertex< VID_T > &v, fid_t fid) const =0 (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
GetTotalVerticesNum() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetVertex(const OID_T &oid, Vertex< VID_T > &v) constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetVertexMap() (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetVertexMap() const (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetVerticesNum() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
Gid2Oid(VID_T gid) const (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
Gid2Vertex(const VID_T &gid, Vertex< VID_T > &v) const =0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
HasChild(const Vertex< VID_T > &v) const =0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
HasParent(const Vertex< VID_T > &v) const =0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
id_parser_ (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
Init(fid_t fid, bool directed, std::vector< internal::Vertex< VID_T, VDATA_T >> &vertices, std::vector< Edge< VID_T, EDATA_T >> &edges)=0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
init(fid_t fid, bool directed) (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
ivnum_ (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
PrepareToRunApp(const CommSpec &comm_spec, PrepareConf conf)=0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
serialize(std::unique_ptr< IOADAPTOR_T > &writer) (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
SetData(const Vertex< VID_T > &v, const VDATA_T &val)=0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
Vertex2Gid(const Vertex< VID_T > &v) const =0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
vertex_map_t typedef (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
Vertices() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
vertices_ (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
vertices_t typedef (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
vm_ptr_ (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
+ + + + diff --git a/classgrape_1_1FragmentBase.html b/classgrape_1_1FragmentBase.html new file mode 100644 index 00000000..01f902d0 --- /dev/null +++ b/classgrape_1_1FragmentBase.html @@ -0,0 +1,1129 @@ + + + + + + + +libgrape-lite: grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T > Class Template Referenceabstract
+
+
+ +

FragmentBase is the base class for fragments. + More...

+ +

#include <fragment_base.h>

+
+Inheritance diagram for grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >:
+
+
+ + +grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T > +grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > > +grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T > +grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > > +grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T > +grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T > + +
+ + + + + + + + + + +

+Public Types

+using vertex_map_t = typename TRAITS_T::vertex_map_t
 
+using fragment_adj_list_t = typename TRAITS_T::fragment_adj_list_t
 
+using fragment_const_adj_list_t = typename TRAITS_T::fragment_const_adj_list_t
 
+using vertices_t = typename TRAITS_T::vertices_t
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

FragmentBase (std::shared_ptr< vertex_map_t > vm_ptr)
 
+std::shared_ptr< vertex_map_t > GetVertexMap ()
 
+const std::shared_ptr< vertex_map_t > GetVertexMap () const
 
virtual void Init (fid_t fid, bool directed, std::vector< internal::Vertex< VID_T, VDATA_T >> &vertices, std::vector< Edge< VID_T, EDATA_T >> &edges)=0
 Construct a fragment with a set of vertices and edges. More...
 
virtual void PrepareToRunApp (const CommSpec &comm_spec, PrepareConf conf)=0
 For some kind of applications, specific data structures will be generated. More...
 
bool directed () const
 Returns true if the fragment is directed, false otherwise. More...
 
fid_t fid () const
 Returns the ID of this fragment. More...
 
fid_t fnum () const
 Returns the number of fragments. More...
 
virtual size_t GetEdgeNum () const =0
 Returns the number of edges in this fragment. More...
 
VID_T GetVerticesNum () const
 Returns the number of vertices in this fragment. More...
 
size_t GetTotalVerticesNum () const
 Returns the number of vertices in the entire graph. More...
 
const vertices_t & Vertices () const
 Get all vertices referenced to this fragment. More...
 
bool GetVertex (const OID_T &oid, Vertex< VID_T > &v) const
 Get a vertex with original ID vid. More...
 
OID_T GetId (const Vertex< VID_T > &v) const
 Get the original ID of a vertex. More...
 
+OID_T Gid2Oid (VID_T gid) const
 
fid_t GetFragId (const Vertex< VID_T > &u) const
 Get the ID of fragment the input vertex belongs to. More...
 
virtual const VDATA_T & GetData (const Vertex< VID_T > &v) const =0
 Get the data of a vertex. More...
 
virtual void SetData (const Vertex< VID_T > &v, const VDATA_T &val)=0
 Set the data of a vertex. More...
 
virtual bool HasChild (const Vertex< VID_T > &v) const =0
 Check if vertex v has a child, that is, existing an edge v->u. More...
 
virtual bool HasParent (const Vertex< VID_T > &v) const =0
 Check if vertex v has a parent, that is, existing an edge u->v. More...
 
virtual int GetLocalInDegree (const Vertex< VID_T > &v) const =0
 Returns the in-degree of vertex v in this fragment. More...
 
virtual int GetLocalOutDegree (const Vertex< VID_T > &v) const =0
 Returns the out-degree of vertex v in this fragment.<Paste> More...
 
virtual bool Gid2Vertex (const VID_T &gid, Vertex< VID_T > &v) const =0
 Convert from global id to a vertex handle. More...
 
virtual VID_T Vertex2Gid (const Vertex< VID_T > &v) const =0
 Convert from vertex handle to its global id. More...
 
virtual AdjList< VID_T, EDATA_T > GetIncomingAdjList (const Vertex< VID_T > &v)=0
 Returns the incoming adjacent vertices of v. More...
 
+virtual ConstAdjList< VID_T, EDATA_T > GetIncomingAdjList (const Vertex< VID_T > &v) const =0
 
+virtual fragment_adj_list_t GetIncomingAdjList (const Vertex< VID_T > &v, fid_t fid)=0
 
+virtual fragment_const_adj_list_t GetIncomingAdjList (const Vertex< VID_T > &v, fid_t fid) const =0
 
virtual AdjList< VID_T, EDATA_T > GetOutgoingAdjList (const Vertex< VID_T > &v)=0
 Returns the outgoing adjacent vertices of v. More...
 
+virtual ConstAdjList< VID_T, EDATA_T > GetOutgoingAdjList (const Vertex< VID_T > &v) const =0
 
+virtual fragment_adj_list_t GetOutgoingAdjList (const Vertex< VID_T > &v, fid_t fid)=0
 
+virtual fragment_const_adj_list_t GetOutgoingAdjList (const Vertex< VID_T > &v, fid_t fid) const =0
 
+ + + + + + + + + +

+Protected Member Functions

+void init (fid_t fid, bool directed)
 
+template<typename IOADAPTOR_T >
void serialize (std::unique_ptr< IOADAPTOR_T > &writer)
 
+template<typename IOADAPTOR_T >
void deserialize (std::unique_ptr< IOADAPTOR_T > &reader)
 
+ + + + + + + + + + + + + + + +

+Protected Attributes

+fid_t fid_
 
+fid_t fnum_
 
+bool directed_
 
+VID_T ivnum_
 
+vertices_t vertices_
 
+std::shared_ptr< vertex_map_t > vm_ptr_
 
+IdParser< VID_T > id_parser_
 
+

Detailed Description

+

template<typename OID_T, typename VID_T, typename VDATA_T, typename EDATA_T, typename TRAITS_T>
+class grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >

+ +

FragmentBase is the base class for fragments.

+
Note
: The pure virtual functions in the class work as interfaces, instructing sub-classes to implement. The override functions in the derived classes would be invoked directly, not via virtual functions.
+
Template Parameters
+ + + + + + +
OID_T
VID_T
VDATA_T
EDATA_T
TRAITS_T
+
+
+

Member Function Documentation

+ +

◆ directed()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + +
bool grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::directed () const
+
+inline
+
+ +

Returns true if the fragment is directed, false otherwise.

+
Returns
true if the fragment is directed, false otherwise.
+ +
+
+ +

◆ fid()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + +
fid_t grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::fid () const
+
+inline
+
+ +

Returns the ID of this fragment.

+
Returns
The ID of this fragment.
+ +
+
+ +

◆ fnum()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + +
fid_t grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::fnum () const
+
+inline
+
+ +

Returns the number of fragments.

+
Returns
The number of fragments.
+ +
+
+ +

◆ GetData()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
virtual const VDATA_T& grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetData (const Vertex< VID_T > & v) const
+
+pure virtual
+
+
+ +

◆ GetEdgeNum()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + +
virtual size_t grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetEdgeNum () const
+
+pure virtual
+
+
+ +

◆ GetFragId()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
fid_t grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetFragId (const Vertex< VID_T > & u) const
+
+inline
+
+ +

Get the ID of fragment the input vertex belongs to.

+
Parameters
+ + +
uInput vertex.
+
+
+
Returns
Its fragment ID.
+ +
+
+ +

◆ GetId()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
OID_T grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetId (const Vertex< VID_T > & v) const
+
+inline
+
+ +

Get the original ID of a vertex.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
Its original ID.
+ +
+
+ +

◆ GetIncomingAdjList()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
virtual AdjList<VID_T, EDATA_T> grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetIncomingAdjList (const Vertex< VID_T > & v)
+
+pure virtual
+
+ +

Returns the incoming adjacent vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The incoming adjacent vertices of v.
+ +

Implemented in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, and grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >.

+ +
+
+ +

◆ GetLocalInDegree()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
virtual int grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetLocalInDegree (const Vertex< VID_T > & v) const
+
+pure virtual
+
+ +

Returns the in-degree of vertex v in this fragment.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
In-degree of vertex v in this fragment.
+ +

Implemented in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, and grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >.

+ +
+
+ +

◆ GetLocalOutDegree()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
virtual int grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetLocalOutDegree (const Vertex< VID_T > & v) const
+
+pure virtual
+
+ +

Returns the out-degree of vertex v in this fragment.<Paste>

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
Out-degree of vertex v in this fragment.
+ +

Implemented in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, and grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >.

+ +
+
+ +

◆ GetOutgoingAdjList()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
virtual AdjList<VID_T, EDATA_T> grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetOutgoingAdjList (const Vertex< VID_T > & v)
+
+pure virtual
+
+ +

Returns the outgoing adjacent vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The outgoing adjacent vertices of v.
+ +

Implemented in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, and grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >.

+ +
+
+ +

◆ GetTotalVerticesNum()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + +
size_t grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetTotalVerticesNum () const
+
+inline
+
+ +

Returns the number of vertices in the entire graph.

+
Returns
The number of vertices in the entire graph.
+ +
+
+ +

◆ GetVertex()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetVertex (const OID_T & oid,
Vertex< VID_T > & v 
) const
+
+inline
+
+ +

Get a vertex with original ID vid.

+
Parameters
+ + + +
vidOriginal ID.
vGot vertex.
+
+
+
Returns
If find the vertex in this fragment, return true. Otherwise, return false.
+ +
+
+ +

◆ GetVerticesNum()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + +
VID_T grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetVerticesNum () const
+
+inline
+
+ +

Returns the number of vertices in this fragment.

+
Returns
The number of vertices in this fragment.
+ +
+
+ +

◆ Gid2Vertex()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
virtual bool grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::Gid2Vertex (const VID_T & gid,
Vertex< VID_T > & v 
) const
+
+pure virtual
+
+ +

Convert from global id to a vertex handle.

+
Parameters
+ + + +
gidInput global id.
vOutput vertex handle.
+
+
+
Returns
True if exists a vertex with global id as gid in this fragment, false otherwise.
+ +

Implemented in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+ +

◆ HasChild()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
virtual bool grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::HasChild (const Vertex< VID_T > & v) const
+
+pure virtual
+
+ +

Check if vertex v has a child, that is, existing an edge v->u.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
True if vertex v has a child, false otherwise.
+ +

Implemented in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, and grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >.

+ +
+
+ +

◆ HasParent()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
virtual bool grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::HasParent (const Vertex< VID_T > & v) const
+
+pure virtual
+
+ +

Check if vertex v has a parent, that is, existing an edge u->v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
True if vertex v has a parent, false otherwise.
+ +

Implemented in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >, and grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >.

+ +
+
+ +

◆ Init()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
virtual void grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::Init (fid_t fid,
bool directed,
std::vector< internal::Vertex< VID_T, VDATA_T >> & vertices,
std::vector< Edge< VID_T, EDATA_T >> & edges 
)
+
+pure virtual
+
+ +

Construct a fragment with a set of vertices and edges.

+
Parameters
+ + + + +
fidFragment ID
verticesA set of vertices.
edgesA set of edges.
+
+
+ +
+
+ +

◆ PrepareToRunApp()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
virtual void grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::PrepareToRunApp (const CommSpeccomm_spec,
PrepareConf conf 
)
+
+pure virtual
+
+
+ +

◆ SetData()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
virtual void grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::SetData (const Vertex< VID_T > & v,
const VDATA_T & val 
)
+
+pure virtual
+
+ +

Set the data of a vertex.

+
Parameters
+ + + +
vInput vertex.
valData to write.
+
+
+
Attention
This will only be applied locally, won't sync on other mirrors globally.
+ +

Implemented in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >, and grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >.

+ +
+
+ +

◆ Vertex2Gid()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + + +
virtual VID_T grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::Vertex2Gid (const Vertex< VID_T > & v) const
+
+pure virtual
+
+ +

Convert from vertex handle to its global id.

+
Parameters
+ + +
vInput vertex handle.
+
+
+
Returns
Global id of the vertex.
+ +

Implemented in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+ +

◆ Vertices()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , typename TRAITS_T >
+ + + + + +
+ + + + + + + +
const vertices_t& grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::Vertices () const
+
+inline
+
+ +

Get all vertices referenced to this fragment.

+
Returns
A vertex set can be iterate on.
+ +
+
+
+ + + + diff --git a/classgrape_1_1FragmentBase.png b/classgrape_1_1FragmentBase.png new file mode 100644 index 0000000000000000000000000000000000000000..c84aa5f99b1dea2dd955bc701d8e219b11deda83 GIT binary patch literal 9367 zcmeHN3s_RwzPE9#8GCqUrs-im&fMtfj7+8ZmaJ)tOsy=EG*_jw|}?C!ovD8@I3yBC2-~C)@1^>CA)U+-D)rxfX6q( zDg^G~ufUV(*VNQxb)N4C{P{`Bp1@!Wppx9eE)Nz#pm&#j*K zSF9BpF0w)NPcKY)w52;oZ#>+!XnW3IuIs=Hfy28$(cNz7Prs3@Gp3`U=HVtkzXw|a zY|(Lql0jGt)#ZI+es=;l~k0yi7i7@!r<;9%&8sDGhRT&*xK47?OxNH@v=WLqkqtEW@^kPsk;#LJZQpEUYsNo!7qWZE`aV zCU;!!JI7~(;>F3d=bjJmB8JEF>D+o^Uu=WJR1PIY;nyw#;pYWIEbJEEk*$w}PDW*f`)^G{THSQ)ODE zOU2-A$vRy{f#spu@#hkJC)o349f-3gcw{kWPZN8YI~;sNlp>K*r%>`~F1b_O=v-fQ zNiQ)={V(=6FcE2}LS_EIoCf4eu?1|no>$1L|Ex0@{Z$jT0Mh zyibUAiC!A9W$`Prs(v2z>o$RfWWz4`&(15}BR9{{2{|B-tapLf79b)F`!)5$UfDsd zk-u@6+eEfnTeR&xR1+_IDsrqw$H9=wo;8Q0A(!>?Q65bV*2$Wf131}Xdpm1-<=ju- zEjFZi)-n!PdPb(M9}dPTPscG4FPmNUh@SpQ^r*DixBMdrPjl?i#G{f=3cBdFKXB6Q zqn8bAY`V8&m;7%Z3=R^akl!uL!>La)DwRV_YByiy`GaQ$y$RiCt5(vuZ#Z(5vJv@` z)C-f;(-aetuCex}v6af&+7sZfCv>#UyW}+ImG39KFuPeCn_2m$w|Z10dokgCl26Kq zsJ-Slrrw|DPMmz%IR$R~R$7qDBuW-AJ5z>}dbD(om9yJj9yYlzxd(ldGW+FNV<5(d zs!wjtK!jhv1{^&Z2M+f{ca;x>F4Ay)eu8PRb9`Se5y@3YKQi`C;Xv|6JwnY2kBY`1{-7>zoakiFUOf#Xd>`MX!f8vhMN z`=B|yH_^TQPe1+~(=q}VNXtiWAFZrpcTKu$)Ed7B2fzN{)t#^Bn&35E8XhR_nrcl~ zW!Irkn8rRmfd%F@nSby58DE<{dP7eVk<~}Qr_6<^z)3(WB&9pzP1Fk3=(MAh68oE+n|p1-4u;nL;M&ic{%EYp;QDD zTe!k2@sfTE<#P_R^)$sN2UG^4Mo$ao1JkU%rHQ}yiX#fP)M-Hj9KTN$CLqPJqcVuQC*qpY?G?wUc14%0Xg!y-ProZmYt>K3RHZcjNctPF;crRE@|1}h?@l;ePHFGd!UNv zr)J!>5hrBlVSF=A`eO1p+QBESh(@U|4vb(|WLMmXP?t2521aQl9PSCifm`-0^p%HC z4f{0UMGBvKpQu?`_u0Tc)EYB$?+r+j!xD2TVtazRuFyjSr6Uq&4tKOC>J7YoAF=gX z98(2a!0kFTC!&oV93G&n_L-AeD{K8pb>3_Gqop#>wvEr?PsQXLC4%vR7)IM?4nxpr zBIX`WM@p`v>Qr$YFAr7hpu=$7wQR1zu+S>t6F$**J~a~^QYBIR-I$}VN* ze5@~$_ORVx>&ZeeQoLK8SO`dMX=H&VTT|kkNIfsm7cCd>13Y1=3^62O34~h!wL^EA z!>;{#3qGdXCGRLZPeAtoK_le(P8e)RcdlHrXeBgOXs%;`WUVUN0#!7%-2x%|&VB_| z{MLLjV`vfmg&P!(@p{N!@GBrKFgJ6RCZxLC;h*VhOF#$fZs7Z_FFt2dR@T7}kepWO z|5TxW1J(do1%f$JdjPcdK$FSIm0`R;+(eMtftT3{eI->Y1ubkHUDEx#_3UE zmk(TyDtmt;&6pqVy>j5`L3JU-G`=3IZ=3)Hk(UqHm>@{^Yq18*xHnllZS*3ZR~fw@ zJ61mp?Bai(=7e=mmbetao(wAC^4!tTfmCqtD?lUF*i$?rjqnSa?CbyNG+ z1vwNd<}7T#S5rRYS6Ewu!(#Mr9Zz=YCcl7# zEjwl$oVQDU{s7J-kARIk{?u{TE>33^e#WiY1pM1>F*W6OnI||JCbwUwe1!Y6`*Kch zSZWr26g<8kq4fJPSf{dpCNWj~*5q^phkA7|YG2+_i9s_f9CpErJzTZA=w?@C`_K@y zN*3UB6=btBs-J9{Z>npf{z;vNPY)Yj!;mg8PEx!Rkb&4&^!*{u+T$`EYsUo92Y)n@ zwioZ6GI-zXxc%XLH^%d{9s9|Z1?sF%AYX05p9ttuw4F}#Etxv3yROGMK5v_Qk~6iw zb(<4nZK`3nQdolr%*Ngj`V}KkM?*Oh876~torEj0g!z*IAVYMQ0J$uc9tz29XGGrC z{yvxZSk7dN{N3}Pv{2$_-zT^~_P_>w)#gWP|2BNYrEhHA{E2beyaQH(HhA8tN+s&o zZIxf>_H+jbQ7aPYOM0p{ad1jnC6SM)$b7&F>o_f8vA@S74G`=m&fZkvjgE!vINhkI z;Y7i5@toQmrGLnJ=t$Airyf|NL#-_3GJ2(r&f}=@0nzSLM)&lCY3WkeIuWUZmoBu$ z^c5nV8Kv`RD2@0+qC=f+#utOOQJ(0Oz-vWe&k7FM7h8{0+KP(4_N*a3D}vc1hF_EJ z5QJ63lqmzuJDAOePRl|WT;ucft1uphliOP4o&aO{kLehss-&lm03uc7K@}xEL%g#V z1Fe(D<&98aX~Kg6bu6q64hv%d)P8JZnVoVNC!L)7Yj7ZUeCIjlZe0P-Nu<0Mf7wf{ zWBfHCkUSRq+6PppL*;X=h8j|27*Ae5@A50Gcoybks`8_NiY@q@4uhh%oxfD8&M%%j zJR&PAFIH>=q<1(LHRU7}Ca)~w%GUQ)xu;o{vyIr~m?WH6R$dNk+Gkz-q9cC3kX4sl zTf}+fxdC3)6e#3-px5ZQLsMP*`?Dzht;zj{Bi%7;$@kpAog-)BlluxR?eM%QMNN2h zhh@5$6ZTDaf1lQ4%HQTVB2MX)6fRY|unjDUn-o1<%~hA_3-gO9RmzODPNYer#?}`` z7=Erxi#RKt>xsaOn1EUK78nnspNGR9?yJ0tlICKH-4f1~Pw)p?;|d9sj69djt-|8( zPkcUWax+lstXPtgmY=BL8iCHLOxOfaFJPB^(*)Yn5~f?n)Y{ zB?8w~hxRbnUg!INm%$Pc%k*CBy{YW{w#=h??E&Q$V|Zh7Gkn6rBzkPX1eZS)((#b1s3FQ6gT?4+fO-(u~!J!}BNHghEgm&t!s0Rf^Fg`bQ1aFPxzc$iv(5 z-h+vJ0XZv!d=hJH7mwy1vf3SFna z=Ajpl>kZ93?^^=WwoLj-Ao=;pCi@>AKrveVX<@sZ|IVzhb!s*0tg$Gbn=DyH)QXvK z#-Z@(4igNlcpZs<*2aOu*)~!-v~32JB;&B%VMmp{~-#N{^Z|@x81N8)_tF| z?n(Fz`?(7cXE*cU`yb^d|7(;;U3V#e3!Z<{CvC#jew?rOdNex5_k!wq0pjFS$@f%O zRi|5`fPl|4v*CG-#QQ4m6Oy`R7QXM(v~B2O_pSUfB>G~@QEqitn+o1g6bBCs`bBqq z582fpk4Zr3p$hSpr%$`_5PV-n;WhoQAJ^1-YlH*hh#{#oJQ_)O)Gya7BkW;8IvZ?9 zULUE*WYDL+iR$ktH=swTfNCN;;WXX2`?iCK{hElVDezchZD(CZ4CE(yjs;-q>a$8& z*s|5nk{imh42W1+p_?1EVudb9eJB{;SDEHx0BMr}&XvG&gepP;c44=lK@Ig3tbg7r ztvE)FxXO7kax8~4mT*}Slxa2qeU(C#??Z2K1W$=|I+1v^!>6&m;6mb#xg1=iSo(WV z0gOy8W|Yo7bYmy0|8s>)Us7vF{=m{oa@&e5pWh+eU$A8|*XqV%73@>_WR|Cj5LB{w z6g6af43!zo@c1KWi#WRBK>Z*wGIO;Ab$5fL;~^n>bX2syT6r<ik`XjcjXj!~?9>WT=rk%cGccX8LKxJRb~=D%eBhO5$ZExonZ zN`H`SZ8$o}TM+?Pd-k~8ox>hiUr&%cZVVIuS}qlG%U&jk8m6?cza?a@V#(I!=XVok zmKOgpLiaaH9$Vc>{C$%KE*opqx|i$+zgQ7hzGYGajLtxsrtgf#^5F)Vq`Zo?GW)2I zbhHsR+qYJS%q)CB)vVkqY$x!xlZ!RXV^c9JBAl18eQpKZ*@uff%lNcfhaT8F^=7H8 zHQH5D_8sL$kdZ^Ru&MWkFQ9cwBDsUOi&|Qx-~l$jVc!?+F#I+6<-XdQWkZk+&trYX zVFco%yF9I2ddDMe=T{?wCqy}F73<)%<CkQ0sssyMN5eww}tXHL@8BrL|jNoFD=X!2$$(*W; zp;~Lf<>EnNPs4rEvMxSX`!bp$4VWqvLty=y(8{v%Nj2bn5;{Is6@YH>CX?jIZ3lo0gv^}kJTg` z!^rjp;SK)NPO&>8#8=3P$M26)FvG9{&8t^?a|ikGob)TI(A}CLrfb2Wq;@TTqvOh} zYQ$|+m8@Ys_}J89qp+p63?l`y#b@If`*vReCkE$mIYe+Z>Jl)(T9rCAg6q$>BRZ>u zVo2z1$c@;5sQx-J4umAHyu|?d3Hp8s*wf`r5^n%hSr8~0crffsQY|;&LVck6pqWL* z0*q{Jgs^{_k>%Ts$VhjIVMqt0H)6uuaAh{I(ZvYdy^)pS>kCT`zJ@=f;q>Q<0~xZT zwfj1;G+D}N5?;LmNBEv@*V8oz5hmwt^`^8@6@=zuLbuAc07pHuQz>j`wY&~6*eJi~ z@}(hT$wkHBlZ5uc-*5j~G2+WY7+6MC_Wn?nxmoor@q|0EZBrUNAwRS2aAmf*uNu0a z>xgBUX)T!20B;{ zgb#q^1H@R{{5i1S#JhA_uTOJ@>RsNiRm3FhvMSB_G6>i3Er`|Nn9B=J)8x~kNkFz? z#A^IYn;~@0D$8z}+UY5)nmhhP8H9%badu_~K*Q={&rEoI-i~eX45Eig=8Y+6z9(xK zB0w65a8r<`*0ns9lC@7lRcF2BxYArum=5@0dd@15en6~{=??;ySTnPRAZ;jmjir%Z z6-{H{%Qm1fjk1Q{-w@4zZ9ZNVcUwQ0F< zn-#3c`s)ziwm(AbI~&2A@gv=Fl6JA8#_bpn*o6*V0DonmR!VpWTay~slWsP;1X%`^ zq|WwER)Mq(vu$I&U-p&-jxa}Jwqp*P=m;Zq-sFw8vtpjNi^k(TCq}iS$`?_zM{Ak} zBdxIx_X>OaC48N2vND74nma*&fR&ACY2Yyq(53gqj@#_HY2hs~^C^zp4*qwr?muxB z4SYFNzvg|Wr>{GC{H{T+9o1sANO-)h*fPT>m1!Sz!uez@kUwd3B9L& z2Yp>BenlEUk4=iy?KRAk2UQ+=cL#d%`4;*V?PEfvOSXU@q+X|t3F6}y^=^EKW`nKn zhv9jh@LTmQwHX;^Y(mteO|1-1gGXXkLiJyM*hk-V{+zgtEvWPXXTeeBfe}2egT()k zy0tg%Wk(J8kJP{*spu@dGmUlw`7-u1`10a|;5qjl4p9dCFBZ4SAf?i(_$&%MVFAq( zJ?IuRV5fGODhf;JJglk2_ZfKaci*)dJN${AFfzQ}$GI^V60!}KvkzBfLH1R4N%|?P zz&>JX#elX;@2z-DcU#`MYUDfjx`+jdKI1>cxXrCU(4cwKS%tyx`|KqXGVyE1U~1Nm0ic-ke6k9+F%$0x_@ z@A(FyGfQwK2MV%?jKGrGaIigC9JnQrNm&l&dY0^5FNL%@%yGn42Eo7$K5}&T;70}L zN7UVRT03{xAbD14RzXzJqT{ITOq_O|J;lo>Kf5k%sW;?jNpDR1B*@wS>d~5RyX|;v zn;D{R_V}H;(yJhuJQ=LaKi#H5=4&84>ApN* zM_ZCh?)owS4~v~iB>bObZ~x@(OnGC!2W0)6)9IhLkdLqN0sf1~0=hNuyUNW!ocUL1 Cti7lJ literal 0 HcmV?d00001 diff --git a/classgrape_1_1GlobalVertexMap-members.html b/classgrape_1_1GlobalVertexMap-members.html new file mode 100644 index 00000000..9b3956da --- /dev/null +++ b/classgrape_1_1GlobalVertexMap-members.html @@ -0,0 +1,129 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T > Member List
+
+
+ +

This is the complete list of members for grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_GetGid(fid_t fid, const internal_oid_t &oid, VID_T &gid) const (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >inline
_GetGid(const internal_oid_t &oid, VID_T &gid) const (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >inline
AddVertex(const OID_T &oid) (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >inlinevirtual
AddVertex(const OID_T &oid, VID_T &gid) (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >inlinevirtual
AddVertex(OID_T &&oid, VID_T &gid) (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >inline
base_t typedef (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >private
comm_spec_ (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >private
deserialize(std::unique_ptr< IOADAPTOR_T > &reader) (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inline
Deserialize(const std::string &prefix, fid_t fid) (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >inline
GetCommSpec() const (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inline
GetFidFromGid(const VID_T &gid) const (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >inline
GetFidFromGid(const VID_T &gid) const (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inline
GetFragmentId(const OID_T &oid) const (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inline
GetFragmentNum() const (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inline
GetGid(fid_t fid, const OID_T &oid, VID_T &gid) const (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >inlinevirtual
GetGid(const OID_T &oid, VID_T &gid) const (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >inlinevirtual
GetInnerVertexSize(fid_t fid) const (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >inlinevirtual
GetLidFromGid(const VID_T &gid) const (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >inline
GetLidFromGid(const VID_T &gid) const (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inline
GetLocalBuilder() (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >inline
GetOid(const VID_T &gid, OID_T &oid) const (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >inlinevirtual
GetOid(fid_t fid, const VID_T &lid, OID_T &oid) const (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >inlinevirtual
GetPartitioner() const (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inline
GetPartitioner() (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inline
GetTotalVertexSize() const (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >inlinevirtual
GlobalVertexMap(const CommSpec &comm_spec) (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >inlineexplicit
GlobalVertexMapBuilder (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >friend
id_parser_ (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >private
indexers_ (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >private
Init() (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >inline
internal_oid_t typedef (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >private
Lid2Gid(fid_t fid, const VID_T &lid) const (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >inline
Lid2Gid(fid_t fid, const VID_T &lid) const (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inline
MaxVertexNum() const (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inline
oid_t typedef (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >
partitioner_ (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >private
partitioner_t typedef (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >
Serialize(const std::string &prefix) (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >inline
serialize(const std::string &path) (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >inlineprivate
serialize(std::unique_ptr< IOADAPTOR_T > &writer) (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inline
SetPartitioner(const HashPartitioner< OID_T > &partitioner) (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inline
SetPartitioner(HashPartitioner< OID_T > &&partitioner) (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inline
UpdateToBalance(std::vector< VID_T > &vnum_list, std::vector< std::vector< VID_T >> &gid_maps) (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >inlinevirtual
VertexMapBase(const CommSpec &comm_spec) (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inlineexplicit
vid_t typedef (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >
~GlobalVertexMap()=default (defined in grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >
~VertexMapBase()=default (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >virtual
+ + + + diff --git a/classgrape_1_1GlobalVertexMap.html b/classgrape_1_1GlobalVertexMap.html new file mode 100644 index 00000000..75db3c82 --- /dev/null +++ b/classgrape_1_1GlobalVertexMap.html @@ -0,0 +1,282 @@ + + + + + + + +libgrape-lite: grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T > Class Template Reference
+
+
+ +

a kind of VertexMapBase which holds global mapping information in each worker. + More...

+ +

#include <global_vertex_map.h>

+
+Inheritance diagram for grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >:
+
+
+ + +grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

GlobalVertexMap (const CommSpec &comm_spec)
 
+void Init ()
 
+size_t GetTotalVertexSize () const
 
+size_t GetInnerVertexSize (fid_t fid) const
 
+void AddVertex (const OID_T &oid)
 
+bool AddVertex (const OID_T &oid, VID_T &gid)
 
+bool AddVertex (OID_T &&oid, VID_T &gid)
 
+bool GetOid (const VID_T &gid, OID_T &oid) const
 
+bool GetOid (fid_t fid, const VID_T &lid, OID_T &oid) const
 
+bool _GetGid (fid_t fid, const internal_oid_t &oid, VID_T &gid) const
 
+bool GetGid (fid_t fid, const OID_T &oid, VID_T &gid) const
 
+bool _GetGid (const internal_oid_t &oid, VID_T &gid) const
 
+bool GetGid (const OID_T &oid, VID_T &gid) const
 
+GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T > GetLocalBuilder ()
 
+template<typename IOADAPTOR_T >
void Serialize (const std::string &prefix)
 
+template<typename IOADAPTOR_T >
void Deserialize (const std::string &prefix, fid_t fid)
 
+void UpdateToBalance (std::vector< VID_T > &vnum_list, std::vector< std::vector< VID_T >> &gid_maps)
 
+VID_T Lid2Gid (fid_t fid, const VID_T &lid) const
 
+fid_t GetFidFromGid (const VID_T &gid) const
 
+VID_T GetLidFromGid (const VID_T &gid) const
 
- Public Member Functions inherited from grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >
VertexMapBase (const CommSpec &comm_spec)
 
+void SetPartitioner (const HashPartitioner< OID_T > &partitioner)
 
+void SetPartitioner (HashPartitioner< OID_T > &&partitioner)
 
+fid_t GetFragmentNum () const
 
+VID_T Lid2Gid (fid_t fid, const VID_T &lid) const
 
+fid_t GetFidFromGid (const VID_T &gid) const
 
+VID_T GetLidFromGid (const VID_T &gid) const
 
+VID_T MaxVertexNum () const
 
+const CommSpecGetCommSpec () const
 
+void serialize (std::unique_ptr< IOADAPTOR_T > &writer)
 
+void deserialize (std::unique_ptr< IOADAPTOR_T > &reader)
 
+fid_t GetFragmentId (const OID_T &oid) const
 
+const HashPartitioner< OID_T > & GetPartitioner () const
 
+HashPartitioner< OID_T > & GetPartitioner ()
 
+ + + + + +

+Private Types

+using base_t = VertexMapBase< OID_T, VID_T, PARTITIONER_T >
 
+using internal_oid_t = typename InternalOID< OID_T >::type
 
+ + + + +

+Private Member Functions

+template<typename IOADAPTOR_T >
void serialize (const std::string &path)
 
+ + + + + + + + + +

+Private Attributes

+std::vector< IdIndexer< internal_oid_t, VID_T > > indexers_
 
+CommSpec comm_spec_
 
+IdParser< VID_T > id_parser_
 
+PARTITIONER_T partitioner_
 
+ + + + +

+Friends

+template<typename _OID_T , typename _VID_T , typename _PARTITIONER_T >
class GlobalVertexMapBuilder
 
+ + + + + + + + + + + + + + + +

+Additional Inherited Members

- Public Types inherited from grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >
+using partitioner_t = HashPartitioner< OID_T >
 
+using oid_t = OID_T
 
+using vid_t = VID_T
 
- Protected Attributes inherited from grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >
+CommSpec comm_spec_
 
+HashPartitioner< OID_T > partitioner_
 
+IdParser< VID_T > id_parser_
 
+

Detailed Description

+

template<typename OID_T, typename VID_T, typename PARTITIONER_T = HashPartitioner<OID_T>>
+class grape::GlobalVertexMap< OID_T, VID_T, PARTITIONER_T >

+ +

a kind of VertexMapBase which holds global mapping information in each worker.

+
Template Parameters
+ + + +
OID_T
VID_T
+
+
+
+ + + + diff --git a/classgrape_1_1GlobalVertexMap.png b/classgrape_1_1GlobalVertexMap.png new file mode 100644 index 0000000000000000000000000000000000000000..04991d0096ea6bf2f82cfd3cf63437a5c99111cc GIT binary patch literal 1332 zcmb`HeNfT|7{`CU&G$=KH?lI77mHbH^K5gNW&KFdCQ4d5^CeO<#o7dO!ZOR1P|M<{ z$bo6Q^el`ZbU=elTTPj1tP~~j^|F+Fp)3_Ljacnx?#lcpM5qCOlZB6{%M7-5%waMw(#iC2UU$&`#v!kQKi9PIV z8(rw+xP5>P`X{vAiC+MK;{zfXmH30*T-_6>;cE{keMPg`O1j4{lV;WWXFU+j*W}QW zLw40@Z2Xe@^4Uk#$M5X3^`$#701AqEMpCLUm~rp#R>_E zOY-#P%{NRnth+H7D2IlQGwbn+-|9qo=%vz2g)UN7sB^;L{6eTPPIajF?24NC9hffT z_Lp+i6HkN2?|f!s^1uz|)Dcncpk8~p{n6~S;>q#|Lx{S_qG`|Es&}@gonIO``b|Je ztGDUCyiEaHk5>fEnXh^qpSIj%e0hSnFvO0iQl3rb4c=AaBy3JL?v5bY$SHm?zXut4 z<|sW!Cy~Z>s-!E0+c1>EK74_N@Oi_*AI}k{x)T!+l9Zt~km_$lOzc* z_&sdu+1$}O0ozj*IsazA^JA{iy_a#zv+8!nc5_(cg``KFGlF8puMWuGR~FsIy-i?e zZ%EobeMZ`PuKFQ2II*)&b!5^9x!ZBuWuAtRKe>DbrrH|dL~GG77){#6b+5?2TPyw? z_AQPkEj#PWBNu{TRe~Am)kTgmDpgj`PV>|o=(U;5l+?^EarLZX8KR@8-^|M@RZYZ) zjnuD!pQOw*?{9Z6(B|QbTbsvB++KNCpfvXB>9w4auIk2B)8*pPg_5oh5WW0dB%G(F zwHN&n1?4CyfyCmQ7owrcteXS65R3u!-ghp6_`bFX^~gNQ^&Kgfol zF|ab5e*jK3_D^ZV()8w~rv?&n5>IDDy(>M%mJOfH(yHwxs} z^^CDmlU=A)Sil^POm%Lacs^D-)es`}cg3s!_Exa6XVZ9CQNIbdV`+St^zisEBzU+aeG2?GH}ZL3!`73h zz(%I5H8*NeVho_*9>|**d8g2nm42N>iPbPBosfEZRpk&OpGQoso>k(ai$p$Np>?U9 zVaO)?Hu|0b|N2jlCa8jFjvK}a2$m_4lye34#xm%0#HdDyy`PPtD7?31t-ve%%1e!g zFvdUmePQ;@R3t^>aHw2#ID83qz*wQZm{w&~cfZ%eSQEZ+a|> zBP+Prf&6EM73zLmsLx-eO{1&Am=Ug9?r)S2vUHn%wtAcQc_3IlI7~;dVZn01+Ptig#t6`5Rhpa2fyr literal 0 HcmV?d00001 diff --git a/classgrape_1_1GlobalVertexMapBuilder-members.html b/classgrape_1_1GlobalVertexMapBuilder-members.html new file mode 100644 index 00000000..8edac511 --- /dev/null +++ b/classgrape_1_1GlobalVertexMapBuilder-members.html @@ -0,0 +1,93 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T > Member List
+
+
+ +

This is the complete list of members for grape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >, including all inherited members.

+ + + + + + + + + + + + +
add_local_vertex(const internal_oid_t &id, VID_T &gid) (defined in grape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >inline
add_vertex(const internal_oid_t &id) (defined in grape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >inline
fid_ (defined in grape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >private
finish(GlobalVertexMap< OID_T, VID_T, PARTITIONER_T > &vertex_map) (defined in grape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >inline
GlobalVertexMap (defined in grape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >friend
GlobalVertexMapBuilder(fid_t fid, IdIndexer< internal_oid_t, VID_T > &indexer, const PARTITIONER_T &partitioner, const IdParser< VID_T > &id_parser) (defined in grape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >inlineprivate
id_parser_ (defined in grape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >private
indexer_ (defined in grape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >private
internal_oid_t typedef (defined in grape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >private
partitioner_ (defined in grape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >private
~GlobalVertexMapBuilder() (defined in grape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >)grape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >inline
+ + + + diff --git a/classgrape_1_1GlobalVertexMapBuilder.html b/classgrape_1_1GlobalVertexMapBuilder.html new file mode 100644 index 00000000..ecc0b076 --- /dev/null +++ b/classgrape_1_1GlobalVertexMapBuilder.html @@ -0,0 +1,133 @@ + + + + + + + +libgrape-lite: grape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T > Class Template Reference
+
+
+ + + + + + + + +

+Public Member Functions

+void add_local_vertex (const internal_oid_t &id, VID_T &gid)
 
+void add_vertex (const internal_oid_t &id)
 
+void finish (GlobalVertexMap< OID_T, VID_T, PARTITIONER_T > &vertex_map)
 
+ + + +

+Private Types

+using internal_oid_t = typename InternalOID< OID_T >::type
 
+ + + +

+Private Member Functions

GlobalVertexMapBuilder (fid_t fid, IdIndexer< internal_oid_t, VID_T > &indexer, const PARTITIONER_T &partitioner, const IdParser< VID_T > &id_parser)
 
+ + + + + + + + + +

+Private Attributes

+fid_t fid_
 
+IdIndexer< internal_oid_t, VID_T > & indexer_
 
+const PARTITIONER_T & partitioner_
 
+const IdParser< VID_T > & id_parser_
 
+ + + + +

+Friends

+template<typename _OID_T , typename _VID_T , typename _PARTITIONER_T >
class GlobalVertexMap
 
+
+ + + + diff --git a/classgrape_1_1HashPartitioner-members.html b/classgrape_1_1HashPartitioner-members.html new file mode 100644 index 00000000..9a9db38c --- /dev/null +++ b/classgrape_1_1HashPartitioner-members.html @@ -0,0 +1,92 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::HashPartitioner< OID_T > Member List
+
+
+ +

This is the complete list of members for grape::HashPartitioner< OID_T >, including all inherited members.

+ + + + + + + + + + + +
deserialize(std::unique_ptr< IOADAPTOR_T > &reader) (defined in grape::HashPartitioner< OID_T >)grape::HashPartitioner< OID_T >inline
fnum_ (defined in grape::HashPartitioner< OID_T >)grape::HashPartitioner< OID_T >private
GetPartitionId(const OID_T &oid) const (defined in grape::HashPartitioner< OID_T >)grape::HashPartitioner< OID_T >inline
HashPartitioner() (defined in grape::HashPartitioner< OID_T >)grape::HashPartitioner< OID_T >inline
HashPartitioner(size_t frag_num) (defined in grape::HashPartitioner< OID_T >)grape::HashPartitioner< OID_T >inlineexplicit
HashPartitioner(size_t frag_num, std::vector< OID_T > &) (defined in grape::HashPartitioner< OID_T >)grape::HashPartitioner< OID_T >inline
operator=(const HashPartitioner &other) (defined in grape::HashPartitioner< OID_T >)grape::HashPartitioner< OID_T >inline
operator=(HashPartitioner &&other) (defined in grape::HashPartitioner< OID_T >)grape::HashPartitioner< OID_T >inline
serialize(std::unique_ptr< IOADAPTOR_T > &writer) (defined in grape::HashPartitioner< OID_T >)grape::HashPartitioner< OID_T >inline
SetPartitionId(const OID_T &oid, fid_t fid) (defined in grape::HashPartitioner< OID_T >)grape::HashPartitioner< OID_T >inline
+ + + + diff --git a/classgrape_1_1HashPartitioner.html b/classgrape_1_1HashPartitioner.html new file mode 100644 index 00000000..bfc47bfb --- /dev/null +++ b/classgrape_1_1HashPartitioner.html @@ -0,0 +1,135 @@ + + + + + + + +libgrape-lite: grape::HashPartitioner< OID_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::HashPartitioner< OID_T > Class Template Reference
+
+
+ +

HashPartitoner is a partitioner with the strategy of hashing on original vertex_ids. + More...

+ +

#include <partitioner.h>

+ + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

HashPartitioner (size_t frag_num)
 
HashPartitioner (size_t frag_num, std::vector< OID_T > &)
 
+fid_t GetPartitionId (const OID_T &oid) const
 
+void SetPartitionId (const OID_T &oid, fid_t fid)
 
+HashPartitioneroperator= (const HashPartitioner &other)
 
+HashPartitioneroperator= (HashPartitioner &&other)
 
+template<typename IOADAPTOR_T >
void serialize (std::unique_ptr< IOADAPTOR_T > &writer)
 
+template<typename IOADAPTOR_T >
void deserialize (std::unique_ptr< IOADAPTOR_T > &reader)
 
+ + + +

+Private Attributes

+fid_t fnum_
 
+

Detailed Description

+

template<typename OID_T>
+class grape::HashPartitioner< OID_T >

+ +

HashPartitoner is a partitioner with the strategy of hashing on original vertex_ids.

+
Template Parameters
+ + +
OID_T
+
+
+
+ + + + diff --git a/classgrape_1_1HashPartitioner_3_01std_1_1string_01_4-members.html b/classgrape_1_1HashPartitioner_3_01std_1_1string_01_4-members.html new file mode 100644 index 00000000..980a67ec --- /dev/null +++ b/classgrape_1_1HashPartitioner_3_01std_1_1string_01_4-members.html @@ -0,0 +1,97 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::HashPartitioner< std::string > Member List
+
+
+ +

This is the complete list of members for grape::HashPartitioner< std::string >, including all inherited members.

+ + + + + + + + + + + + + + + + +
deserialize(std::unique_ptr< IOADAPTOR_T > &reader) (defined in grape::HashPartitioner< std::string >)grape::HashPartitioner< std::string >inline
fnum_ (defined in grape::HashPartitioner< std::string >)grape::HashPartitioner< std::string >private
GetPartitionId(const internal_oid_t &oid) const (defined in grape::HashPartitioner< std::string >)grape::HashPartitioner< std::string >inline
GetPartitionId(const oid_t &oid) const (defined in grape::HashPartitioner< std::string >)grape::HashPartitioner< std::string >inline
HashPartitioner() (defined in grape::HashPartitioner< std::string >)grape::HashPartitioner< std::string >inline
HashPartitioner(size_t frag_num) (defined in grape::HashPartitioner< std::string >)grape::HashPartitioner< std::string >inlineexplicit
HashPartitioner(size_t frag_num, std::vector< std::string > &) (defined in grape::HashPartitioner< std::string >)grape::HashPartitioner< std::string >inline
HashPartitioner(const HashPartitioner &other) (defined in grape::HashPartitioner< std::string >)grape::HashPartitioner< std::string >inline
internal_oid_t typedef (defined in grape::HashPartitioner< std::string >)grape::HashPartitioner< std::string >
oid_t typedef (defined in grape::HashPartitioner< std::string >)grape::HashPartitioner< std::string >
operator=(const HashPartitioner &other) (defined in grape::HashPartitioner< std::string >)grape::HashPartitioner< std::string >inline
operator=(HashPartitioner &&other) (defined in grape::HashPartitioner< std::string >)grape::HashPartitioner< std::string >inline
serialize(std::unique_ptr< IOADAPTOR_T > &writer) (defined in grape::HashPartitioner< std::string >)grape::HashPartitioner< std::string >inline
SetPartitionId(const oid_t &oid, fid_t fid) (defined in grape::HashPartitioner< std::string >)grape::HashPartitioner< std::string >inline
SetPartitionId(const internal_oid_t &oid, fid_t fid) (defined in grape::HashPartitioner< std::string >)grape::HashPartitioner< std::string >inline
+ + + + diff --git a/classgrape_1_1HashPartitioner_3_01std_1_1string_01_4.html b/classgrape_1_1HashPartitioner_3_01std_1_1string_01_4.html new file mode 100644 index 00000000..b20f2eae --- /dev/null +++ b/classgrape_1_1HashPartitioner_3_01std_1_1string_01_4.html @@ -0,0 +1,138 @@ + + + + + + + +libgrape-lite: grape::HashPartitioner< std::string > Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::HashPartitioner< std::string > Class Reference
+
+
+ + + + + + +

+Public Types

+using oid_t = std::string
 
+using internal_oid_t = nonstd::string_view
 
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

HashPartitioner (size_t frag_num)
 
HashPartitioner (size_t frag_num, std::vector< std::string > &)
 
+fid_t GetPartitionId (const internal_oid_t &oid) const
 
+fid_t GetPartitionId (const oid_t &oid) const
 
+void SetPartitionId (const oid_t &oid, fid_t fid)
 
+void SetPartitionId (const internal_oid_t &oid, fid_t fid)
 
+HashPartitioneroperator= (const HashPartitioner &other)
 
HashPartitioner (const HashPartitioner &other)
 
+HashPartitioneroperator= (HashPartitioner &&other)
 
+template<typename IOADAPTOR_T >
void serialize (std::unique_ptr< IOADAPTOR_T > &writer)
 
+template<typename IOADAPTOR_T >
void deserialize (std::unique_ptr< IOADAPTOR_T > &reader)
 
+ + + +

+Private Attributes

+fid_t fnum_
 
+
+ + + + diff --git a/classgrape_1_1IOAdaptorBase-members.html b/classgrape_1_1IOAdaptorBase-members.html new file mode 100644 index 00000000..e41de7c3 --- /dev/null +++ b/classgrape_1_1IOAdaptorBase-members.html @@ -0,0 +1,96 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::IOAdaptorBase Member List
+
+
+ +

This is the complete list of members for grape::IOAdaptorBase, including all inherited members.

+ + + + + + + + + + + + + + + +
Close()=0 (defined in grape::IOAdaptorBase)grape::IOAdaptorBasepure virtual
Configure(const std::string &key, const std::string &value)=0grape::IOAdaptorBasepure virtual
IOAdaptorBase()=default (defined in grape::IOAdaptorBase)grape::IOAdaptorBase
IsExist()=0 (defined in grape::IOAdaptorBase)grape::IOAdaptorBasepure virtual
MakeDirectory(const std::string &path)=0 (defined in grape::IOAdaptorBase)grape::IOAdaptorBasepure virtual
Open()=0 (defined in grape::IOAdaptorBase)grape::IOAdaptorBasepure virtual
Open(const char *mode)=0 (defined in grape::IOAdaptorBase)grape::IOAdaptorBasepure virtual
Read(void *buffer, size_t size)=0 (defined in grape::IOAdaptorBase)grape::IOAdaptorBasepure virtual
ReadArchive(OutArchive &archive)=0 (defined in grape::IOAdaptorBase)grape::IOAdaptorBasepure virtual
ReadLine(std::string &line)=0 (defined in grape::IOAdaptorBase)grape::IOAdaptorBasepure virtual
SetPartialRead(int index, int total_parts)=0grape::IOAdaptorBasepure virtual
Write(void *buffer, size_t size)=0 (defined in grape::IOAdaptorBase)grape::IOAdaptorBasepure virtual
WriteArchive(InArchive &archive)=0 (defined in grape::IOAdaptorBase)grape::IOAdaptorBasepure virtual
~IOAdaptorBase()=default (defined in grape::IOAdaptorBase)grape::IOAdaptorBasevirtual
+ + + + diff --git a/classgrape_1_1IOAdaptorBase.html b/classgrape_1_1IOAdaptorBase.html new file mode 100644 index 00000000..c5c48256 --- /dev/null +++ b/classgrape_1_1IOAdaptorBase.html @@ -0,0 +1,182 @@ + + + + + + + +libgrape-lite: grape::IOAdaptorBase Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::IOAdaptorBase Class Referenceabstract
+
+
+ +

IOAdaptorBase is the base class of I/O adaptors. + More...

+ +

#include <io_adaptor_base.h>

+
+Inheritance diagram for grape::IOAdaptorBase:
+
+
+ + +grape::LocalIOAdaptor + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+virtual void Open ()=0
 
+virtual void Open (const char *mode)=0
 
+virtual void Close ()=0
 
+virtual bool Configure (const std::string &key, const std::string &value)=0
 Configure sub-class specific items. e.g., odps_access_key = abcd; oss_read_concurrency = 16; whether ReadLine for local location uses std::getline;.
 
virtual bool SetPartialRead (int index, int total_parts)=0
 Set each worker only scan related parts of the whole file. More...
 
+virtual bool ReadLine (std::string &line)=0
 
+virtual bool ReadArchive (OutArchive &archive)=0
 
+virtual bool WriteArchive (InArchive &archive)=0
 
+virtual bool Read (void *buffer, size_t size)=0
 
+virtual bool Write (void *buffer, size_t size)=0
 
+virtual void MakeDirectory (const std::string &path)=0
 
+virtual bool IsExist ()=0
 
+

Detailed Description

+

IOAdaptorBase is the base class of I/O adaptors.

+
Note
: The pure virtual functions in the class work as interfaces, instructing sub-classes to implement. The override functions in the derived classes would be invoked directly, not via virtual functions.
+

Member Function Documentation

+ +

◆ SetPartialRead()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
virtual bool grape::IOAdaptorBase::SetPartialRead (int index,
int total_parts 
)
+
+pure virtual
+
+ +

Set each worker only scan related parts of the whole file.

+

for local: read with offset, from a big file.

+ +

Implemented in grape::LocalIOAdaptor.

+ +
+
+
+ + + + diff --git a/classgrape_1_1IOAdaptorBase.png b/classgrape_1_1IOAdaptorBase.png new file mode 100644 index 0000000000000000000000000000000000000000..cd1056a01187121b18835cbe43fb86bb1caef9d0 GIT binary patch literal 694 zcmeAS@N?(olHy`uVBq!ia0vp^JwP15!3-q-Jj#s#QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;29WBGSY&F6czN12z#Go)2< zFJt)n&;C%$WHp0Z&z`^E)c$y*+M%{9;=JnuUgi8bmtI;MCG8{2oiw{6l3$Lee9K6>cl``UakO!`d1mi?`QVSssswA*K0p8Ugyr*o zS24jzXK6PVl}l}cf}LNqe1rsNzSuDLS;-%s%k0M$F6kc-QIO629N%nN7VKo3JTKZ> z?zLaLfYq~qA`){KdT=e>=zHVy&Rws!uochhioZMGZdd7(zdI<9jBS%c72y zw_CM--2EaujZL`C+%Id#+L@K+nK$Rp-x!|ttUXUFH{<eyjqJH+_jt*d`DJf0ln=z+2&ZVBAtVZ@$c>TpBU?OAiboFyt I=akR{02-_?r~m)} literal 0 HcmV?d00001 diff --git a/classgrape_1_1ISyncBuffer-members.html b/classgrape_1_1ISyncBuffer-members.html new file mode 100644 index 00000000..6990408b --- /dev/null +++ b/classgrape_1_1ISyncBuffer-members.html @@ -0,0 +1,87 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::ISyncBuffer Member List
+
+
+ +

This is the complete list of members for grape::ISyncBuffer, including all inherited members.

+ + + + + + +
base() (defined in grape::ISyncBuffer)grape::ISyncBufferinline
data()=0 (defined in grape::ISyncBuffer)grape::ISyncBufferpure virtual
GetTypeId() const =0 (defined in grape::ISyncBuffer)grape::ISyncBufferpure virtual
updated(size_t begin, size_t length) const =0 (defined in grape::ISyncBuffer)grape::ISyncBufferpure virtual
~ISyncBuffer()=default (defined in grape::ISyncBuffer)grape::ISyncBuffervirtual
+ + + + diff --git a/classgrape_1_1ISyncBuffer.html b/classgrape_1_1ISyncBuffer.html new file mode 100644 index 00000000..6aab81e0 --- /dev/null +++ b/classgrape_1_1ISyncBuffer.html @@ -0,0 +1,115 @@ + + + + + + + +libgrape-lite: grape::ISyncBuffer Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::ISyncBuffer Class Referenceabstract
+
+
+ +

ISyncBuffer is a base class of SyncBuffer, which is used for auto parallelization. + More...

+ +

#include <sync_buffer.h>

+
+Inheritance diagram for grape::ISyncBuffer:
+
+
+ + +grape::SyncBuffer< VERTEX_SET_T, T > + +
+ + + + + + + + + + + +

+Public Member Functions

+virtual void * data ()=0
 
+virtual bool updated (size_t begin, size_t length) const =0
 
+virtual const std::type_info & GetTypeId () const =0
 
+template<typename T >
T * base ()
 
+

Detailed Description

+

ISyncBuffer is a base class of SyncBuffer, which is used for auto parallelization.

+
+ + + + diff --git a/classgrape_1_1ISyncBuffer.png b/classgrape_1_1ISyncBuffer.png new file mode 100644 index 0000000000000000000000000000000000000000..12a741625fde7a6fe66028e0b45c5f2b20d8d23e GIT binary patch literal 821 zcmeAS@N?(olHy`uVBq!ia0vp^KY%!ZgBeINJ9z8@QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM; zCadUeylnNc>`2+Zb(-d~cYmDTq|@!bk>ST>7WNNIIQbrU#+)v57`ZsLhs@MaayyzlC7(__-!mp-smP0pLP zQEIB=uHr4L+cg*#cZ!zDKI-Ed}7#C zh7ZxTY}*~DCN ziEE$E=|=$!+g~z12#h-@&%gXh+`;g?`A_l=riZhCSPJsDu*`wUY8DOZz6A{avmP+a zgX@I_3_?LezIKbiyGzO~0(nA?E=T68?da$L>Jt?7uad5b{NLH}<;$GQlg}Tl*t%rq z4z=7X|JTa@o_{qfw>fg!^0zBw|BKknGe}ygwzyD9iCOeR+J4)WRvP}dX1^*v{+R2} z%iTM)e%jP7v);nIR=2Ekn}(ax|Jvw~*%QA1VcApo(f?p^*t0vgj%97BoqFW8?#gzz z+t=7$aO^3Yx#^*8fv6*IoOIyL{Ic6SbFIQJbL`m_U3uh6MP%0TUf$n-es;XS{{5hL zu;H^6lXb$`j(^>qomc+qVA%e1 zdml4@m>6C4zT){-LBW@=zpm*xvDa$D`jsCyN9RBA6O@aMIV*Q_dGOyWhyS}j(pCBt wq;}QSWlu&^cSpq~7IDFkOGIs21Y};xm!B}YE*d9W3{2w;p00i_>zopr0Cn<<0{{R3 literal 0 HcmV?d00001 diff --git a/classgrape_1_1IdIndexer-members.html b/classgrape_1_1IdIndexer-members.html new file mode 100644 index 00000000..69eae52b --- /dev/null +++ b/classgrape_1_1IdIndexer-members.html @@ -0,0 +1,120 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::IdIndexer< KEY_T, INDEX_T > Member List
+
+
+ +

This is the complete list of members for grape::IdIndexer< KEY_T, INDEX_T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_add(const KEY_T &oid, size_t hash_value, INDEX_T &lid) (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >inline
_add(KEY_T &&oid, size_t hash_value, INDEX_T &lid) (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >inline
_add(const KEY_T &oid) (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >inline
_add(KEY_T &&oid) (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >inline
_get_index(const KEY_T &oid, size_t hash, INDEX_T &lid) const (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >inline
add(const KEY_T &oid, INDEX_T &lid) (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >inline
add(KEY_T &&oid, INDEX_T &lid) (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >inline
bucket_count() const (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >inline
compute_max_lookups(size_t num_buckets) (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >inlineprivatestatic
Deserialize(std::unique_ptr< IOADAPTOR_T > &reader) (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >inline
dist_buffer_t typedef (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >
distances_ (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >private
emplace(INDEX_T lid) (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >inlineprivate
emplace_new_value(int8_t distance_from_desired, size_t index, INDEX_T lid) (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >inlineprivate
empty() const (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >inline
entry_num() const (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >inline
get_index(const KEY_T &oid, INDEX_T &lid) const (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >inline
get_key(INDEX_T lid, KEY_T &oid) const (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >inline
grow() (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >inlineprivate
hash_policy_ (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >private
hasher_ (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >private
IdIndexer() (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >inline
ind_buffer_t typedef (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >
indices_ (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >private
key_buffer_t typedef (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >
keys() const (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >inline
keys() (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >inline
keys_ (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >private
max_lookups_ (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >private
num_elements_ (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >private
num_slots_minus_one_ (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >private
rehash(size_t num_buckets) (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >inlineprivate
reset_to_empty_state() (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >inlineprivate
Serialize(std::unique_ptr< IOADAPTOR_T > &writer) (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >inline
size() const (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >inline
swap(IdIndexer< KEY_T, INDEX_T > &rhs) (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >inline
sync_comm::CommImpl (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >friend
~IdIndexer() (defined in grape::IdIndexer< KEY_T, INDEX_T >)grape::IdIndexer< KEY_T, INDEX_T >inline
+ + + + diff --git a/classgrape_1_1IdIndexer.html b/classgrape_1_1IdIndexer.html new file mode 100644 index 00000000..364a4c4e --- /dev/null +++ b/classgrape_1_1IdIndexer.html @@ -0,0 +1,217 @@ + + + + + + + +libgrape-lite: grape::IdIndexer< KEY_T, INDEX_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::IdIndexer< KEY_T, INDEX_T > Class Template Reference
+
+
+ + + + + + + + +

+Public Types

+using key_buffer_t = typename id_indexer_impl::KeyBuffer< KEY_T >::type
 
+using ind_buffer_t = std::vector< INDEX_T, Allocator< INDEX_T > >
 
+using dist_buffer_t = std::vector< int8_t, Allocator< int8_t > >
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+size_t entry_num () const
 
+bool add (const KEY_T &oid, INDEX_T &lid)
 
+bool add (KEY_T &&oid, INDEX_T &lid)
 
+bool _add (const KEY_T &oid, size_t hash_value, INDEX_T &lid)
 
+bool _add (KEY_T &&oid, size_t hash_value, INDEX_T &lid)
 
+void _add (const KEY_T &oid)
 
+void _add (KEY_T &&oid)
 
+size_t bucket_count () const
 
+bool empty () const
 
+size_t size () const
 
+bool get_key (INDEX_T lid, KEY_T &oid) const
 
+bool get_index (const KEY_T &oid, INDEX_T &lid) const
 
+bool _get_index (const KEY_T &oid, size_t hash, INDEX_T &lid) const
 
+void swap (IdIndexer< KEY_T, INDEX_T > &rhs)
 
+const key_buffer_t & keys () const
 
+key_buffer_t & keys ()
 
+template<typename IOADAPTOR_T >
void Serialize (std::unique_ptr< IOADAPTOR_T > &writer)
 
+template<typename IOADAPTOR_T >
void Deserialize (std::unique_ptr< IOADAPTOR_T > &reader)
 
+ + + + + + + + + + + +

+Private Member Functions

+void emplace (INDEX_T lid)
 
+void emplace_new_value (int8_t distance_from_desired, size_t index, INDEX_T lid)
 
+void grow ()
 
+void rehash (size_t num_buckets)
 
+void reset_to_empty_state ()
 
+ + + +

+Static Private Member Functions

+static int8_t compute_max_lookups (size_t num_buckets)
 
+ + + + + + + + + + + + + + + + + +

+Private Attributes

+key_buffer_t keys_
 
+ind_buffer_t indices_
 
+dist_buffer_t distances_
 
+ska::ska::prime_number_hash_policy hash_policy_
 
+int8_t max_lookups_ = id_indexer_impl::min_lookups - 1
 
+size_t num_elements_ = 0
 
+size_t num_slots_minus_one_ = 0
 
+std::hash< KEY_T > hasher_
 
+ + + + +

+Friends

+template<typename _T , typename _Enable >
struct sync_comm::CommImpl
 
+
+ + + + diff --git a/classgrape_1_1IdParser-members.html b/classgrape_1_1IdParser-members.html new file mode 100644 index 00000000..61f5f51f --- /dev/null +++ b/classgrape_1_1IdParser-members.html @@ -0,0 +1,90 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::IdParser< VID_T > Member List
+
+
+ +

This is the complete list of members for grape::IdParser< VID_T >, including all inherited members.

+ + + + + + + + + +
fid_offset_ (defined in grape::IdParser< VID_T >)grape::IdParser< VID_T >private
generate_global_id(fid_t fid, VID_T local_id) const (defined in grape::IdParser< VID_T >)grape::IdParser< VID_T >inline
get_fragment_id(VID_T global_id) const (defined in grape::IdParser< VID_T >)grape::IdParser< VID_T >inline
get_local_id(VID_T global_id) const (defined in grape::IdParser< VID_T >)grape::IdParser< VID_T >inline
id_mask_ (defined in grape::IdParser< VID_T >)grape::IdParser< VID_T >private
IdParser()=default (defined in grape::IdParser< VID_T >)grape::IdParser< VID_T >
init(fid_t fnum) (defined in grape::IdParser< VID_T >)grape::IdParser< VID_T >inline
max_local_id() const (defined in grape::IdParser< VID_T >)grape::IdParser< VID_T >inline
+ + + + diff --git a/classgrape_1_1IdParser.html b/classgrape_1_1IdParser.html new file mode 100644 index 00000000..7b3de496 --- /dev/null +++ b/classgrape_1_1IdParser.html @@ -0,0 +1,111 @@ + + + + + + + +libgrape-lite: grape::IdParser< VID_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::IdParser< VID_T > Class Template Reference
+
+
+ + + + + + + + + + + + +

+Public Member Functions

+DEV_HOST_INLINE void init (fid_t fnum)
 
+DEV_HOST_INLINE VID_T max_local_id () const
 
+DEV_HOST_INLINE VID_T get_local_id (VID_T global_id) const
 
+DEV_HOST_INLINE fid_t get_fragment_id (VID_T global_id) const
 
+DEV_HOST_INLINE VID_T generate_global_id (fid_t fid, VID_T local_id) const
 
+ + + + + +

+Private Attributes

+VID_T id_mask_
 
+int fid_offset_
 
+
+ + + + diff --git a/classgrape_1_1ImmutableCSR-members.html b/classgrape_1_1ImmutableCSR-members.html new file mode 100644 index 00000000..fe6b0966 --- /dev/null +++ b/classgrape_1_1ImmutableCSR-members.html @@ -0,0 +1,105 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::ImmutableCSR< VID_T, NBR_T > Member List
+
+
+ +

This is the complete list of members for grape::ImmutableCSR< VID_T, NBR_T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + +
degree(VID_T i) const (defined in grape::ImmutableCSR< VID_T, NBR_T >)grape::ImmutableCSR< VID_T, NBR_T >inline
Deserialize(std::unique_ptr< IOADAPTOR_T > &reader) (defined in grape::ImmutableCSR< VID_T, NBR_T >)grape::ImmutableCSR< VID_T, NBR_T >inline
edge_num() const (defined in grape::ImmutableCSR< VID_T, NBR_T >)grape::ImmutableCSR< VID_T, NBR_T >inline
edges_ (defined in grape::ImmutableCSR< VID_T, NBR_T >)grape::ImmutableCSR< VID_T, NBR_T >private
empty() const (defined in grape::ImmutableCSR< VID_T, NBR_T >)grape::ImmutableCSR< VID_T, NBR_T >inline
get_begin(VID_T i) (defined in grape::ImmutableCSR< VID_T, NBR_T >)grape::ImmutableCSR< VID_T, NBR_T >inline
get_begin(VID_T i) const (defined in grape::ImmutableCSR< VID_T, NBR_T >)grape::ImmutableCSR< VID_T, NBR_T >inline
get_edges() (defined in grape::ImmutableCSR< VID_T, NBR_T >)grape::ImmutableCSR< VID_T, NBR_T >inline
get_edges_mut() (defined in grape::ImmutableCSR< VID_T, NBR_T >)grape::ImmutableCSR< VID_T, NBR_T >inline
get_end(VID_T i) (defined in grape::ImmutableCSR< VID_T, NBR_T >)grape::ImmutableCSR< VID_T, NBR_T >inline
get_end(VID_T i) const (defined in grape::ImmutableCSR< VID_T, NBR_T >)grape::ImmutableCSR< VID_T, NBR_T >inline
get_offsets() (defined in grape::ImmutableCSR< VID_T, NBR_T >)grape::ImmutableCSR< VID_T, NBR_T >inline
get_offsets_mut() (defined in grape::ImmutableCSR< VID_T, NBR_T >)grape::ImmutableCSR< VID_T, NBR_T >inline
ImmutableCSR() (defined in grape::ImmutableCSR< VID_T, NBR_T >)grape::ImmutableCSR< VID_T, NBR_T >inline
ImmutableCSRBuild (defined in grape::ImmutableCSR< VID_T, NBR_T >)grape::ImmutableCSR< VID_T, NBR_T >friend
ImmutableCSRStreamBuilder (defined in grape::ImmutableCSR< VID_T, NBR_T >)grape::ImmutableCSR< VID_T, NBR_T >friend
is_empty(VID_T i) const (defined in grape::ImmutableCSR< VID_T, NBR_T >)grape::ImmutableCSR< VID_T, NBR_T >inline
nbr_t typedef (defined in grape::ImmutableCSR< VID_T, NBR_T >)grape::ImmutableCSR< VID_T, NBR_T >
offsets_ (defined in grape::ImmutableCSR< VID_T, NBR_T >)grape::ImmutableCSR< VID_T, NBR_T >private
Serialize(std::unique_ptr< IOADAPTOR_T > &writer) (defined in grape::ImmutableCSR< VID_T, NBR_T >)grape::ImmutableCSR< VID_T, NBR_T >inline
vertex_num() const (defined in grape::ImmutableCSR< VID_T, NBR_T >)grape::ImmutableCSR< VID_T, NBR_T >inline
vid_t typedef (defined in grape::ImmutableCSR< VID_T, NBR_T >)grape::ImmutableCSR< VID_T, NBR_T >
~ImmutableCSR() (defined in grape::ImmutableCSR< VID_T, NBR_T >)grape::ImmutableCSR< VID_T, NBR_T >inline
+ + + + diff --git a/classgrape_1_1ImmutableCSR.html b/classgrape_1_1ImmutableCSR.html new file mode 100644 index 00000000..ebd74b97 --- /dev/null +++ b/classgrape_1_1ImmutableCSR.html @@ -0,0 +1,165 @@ + + + + + + + +libgrape-lite: grape::ImmutableCSR< VID_T, NBR_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::ImmutableCSR< VID_T, NBR_T > Class Template Reference
+
+
+ + + + + + +

+Public Types

+using vid_t = VID_T
 
+using nbr_t = NBR_T
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+VID_T vertex_num () const
 
+bool empty () const
 
+size_t edge_num () const
 
+int degree (VID_T i) const
 
+bool is_empty (VID_T i) const
 
+nbr_t * get_begin (VID_T i)
 
+const nbr_t * get_begin (VID_T i) const
 
+nbr_t * get_end (VID_T i)
 
+const nbr_t * get_end (VID_T i) const
 
+Array< nbr_t, Allocator< nbr_t > > const & get_edges ()
 
+Array< nbr_t *, Allocator< nbr_t * > > const & get_offsets ()
 
+Array< nbr_t, Allocator< nbr_t > > & get_edges_mut ()
 
+Array< nbr_t *, Allocator< nbr_t * > > & get_offsets_mut ()
 
+template<typename IOADAPTOR_T >
void Serialize (std::unique_ptr< IOADAPTOR_T > &writer)
 
+template<typename IOADAPTOR_T >
void Deserialize (std::unique_ptr< IOADAPTOR_T > &reader)
 
+ + + + + +

+Private Attributes

+Array< nbr_t, Allocator< nbr_t > > edges_
 
+Array< nbr_t *, Allocator< nbr_t * > > offsets_
 
+ + + + + + + +

+Friends

+template<typename _VID_T , typename _EDATA_T >
class ImmutableCSRBuild
 
+template<typename _VID_T , typename _EDATA_T >
class ImmutableCSRStreamBuilder
 
+
+ + + + diff --git a/classgrape_1_1ImmutableCSRBuild-members.html b/classgrape_1_1ImmutableCSRBuild-members.html new file mode 100644 index 00000000..a4eb284c --- /dev/null +++ b/classgrape_1_1ImmutableCSRBuild-members.html @@ -0,0 +1,100 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::ImmutableCSRBuild< VID_T, NBR_T > Member List
+
+
+ +

This is the complete list of members for grape::ImmutableCSRBuild< VID_T, NBR_T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
add_edge(VID_T src, const nbr_t &nbr) (defined in grape::ImmutableCSRBuild< VID_T, NBR_T >)grape::ImmutableCSRBuild< VID_T, NBR_T >inline
build_offsets() (defined in grape::ImmutableCSRBuild< VID_T, NBR_T >)grape::ImmutableCSRBuild< VID_T, NBR_T >inline
degree_ (defined in grape::ImmutableCSRBuild< VID_T, NBR_T >)grape::ImmutableCSRBuild< VID_T, NBR_T >private
edge_num_ (defined in grape::ImmutableCSRBuild< VID_T, NBR_T >)grape::ImmutableCSRBuild< VID_T, NBR_T >private
edges_ (defined in grape::ImmutableCSRBuild< VID_T, NBR_T >)grape::ImmutableCSRBuild< VID_T, NBR_T >private
finish(ImmutableCSR< VID_T, NBR_T > &ret) (defined in grape::ImmutableCSRBuild< VID_T, NBR_T >)grape::ImmutableCSRBuild< VID_T, NBR_T >inline
ImmutableCSRBuild() (defined in grape::ImmutableCSRBuild< VID_T, NBR_T >)grape::ImmutableCSRBuild< VID_T, NBR_T >inline
inc_degree(VID_T i) (defined in grape::ImmutableCSRBuild< VID_T, NBR_T >)grape::ImmutableCSRBuild< VID_T, NBR_T >inline
init(VID_T vnum) (defined in grape::ImmutableCSRBuild< VID_T, NBR_T >)grape::ImmutableCSRBuild< VID_T, NBR_T >inline
init(const VertexRange< VID_T > &range) (defined in grape::ImmutableCSRBuild< VID_T, NBR_T >)grape::ImmutableCSRBuild< VID_T, NBR_T >inline
iter_ (defined in grape::ImmutableCSRBuild< VID_T, NBR_T >)grape::ImmutableCSRBuild< VID_T, NBR_T >private
nbr_t typedef (defined in grape::ImmutableCSRBuild< VID_T, NBR_T >)grape::ImmutableCSRBuild< VID_T, NBR_T >private
offsets_ (defined in grape::ImmutableCSRBuild< VID_T, NBR_T >)grape::ImmutableCSRBuild< VID_T, NBR_T >private
sort(const FUNC_T &func) (defined in grape::ImmutableCSRBuild< VID_T, NBR_T >)grape::ImmutableCSRBuild< VID_T, NBR_T >inline
vertex_range_t typedef (defined in grape::ImmutableCSRBuild< VID_T, NBR_T >)grape::ImmutableCSRBuild< VID_T, NBR_T >
vid_t typedef (defined in grape::ImmutableCSRBuild< VID_T, NBR_T >)grape::ImmutableCSRBuild< VID_T, NBR_T >private
vnum_ (defined in grape::ImmutableCSRBuild< VID_T, NBR_T >)grape::ImmutableCSRBuild< VID_T, NBR_T >private
~ImmutableCSRBuild() (defined in grape::ImmutableCSRBuild< VID_T, NBR_T >)grape::ImmutableCSRBuild< VID_T, NBR_T >inline
+ + + + diff --git a/classgrape_1_1ImmutableCSRBuild.html b/classgrape_1_1ImmutableCSRBuild.html new file mode 100644 index 00000000..8708c09e --- /dev/null +++ b/classgrape_1_1ImmutableCSRBuild.html @@ -0,0 +1,147 @@ + + + + + + + +libgrape-lite: grape::ImmutableCSRBuild< VID_T, NBR_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::ImmutableCSRBuild< VID_T, NBR_T > Class Template Reference
+
+
+ + + + +

+Public Types

+using vertex_range_t = VertexRange< VID_T >
 
+ + + + + + + + + + + + + + + + +

+Public Member Functions

+void init (VID_T vnum)
 
+void init (const VertexRange< VID_T > &range)
 
+void inc_degree (VID_T i)
 
+void build_offsets ()
 
+void add_edge (VID_T src, const nbr_t &nbr)
 
+template<typename FUNC_T >
void sort (const FUNC_T &func)
 
+void finish (ImmutableCSR< VID_T, NBR_T > &ret)
 
+ + + + + +

+Private Types

+using vid_t = VID_T
 
+using nbr_t = NBR_T
 
+ + + + + + + + + + + + + +

+Private Attributes

+VID_T vnum_
 
+size_t edge_num_
 
+Array< nbr_t, Allocator< nbr_t > > edges_
 
+Array< nbr_t *, Allocator< nbr_t * > > offsets_
 
+std::vector< int > degree_
 
+Array< nbr_t *, Allocator< nbr_t * > > iter_
 
+
+ + + + diff --git a/classgrape_1_1ImmutableCSRStreamBuilder-members.html b/classgrape_1_1ImmutableCSRStreamBuilder-members.html new file mode 100644 index 00000000..42ee5e38 --- /dev/null +++ b/classgrape_1_1ImmutableCSRStreamBuilder-members.html @@ -0,0 +1,86 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::ImmutableCSRStreamBuilder< VID_T, NBR_T > Member List
+
+ + + + + diff --git a/classgrape_1_1ImmutableCSRStreamBuilder.html b/classgrape_1_1ImmutableCSRStreamBuilder.html new file mode 100644 index 00000000..f2a70ea6 --- /dev/null +++ b/classgrape_1_1ImmutableCSRStreamBuilder.html @@ -0,0 +1,103 @@ + + + + + + + +libgrape-lite: grape::ImmutableCSRStreamBuilder< VID_T, NBR_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::ImmutableCSRStreamBuilder< VID_T, NBR_T > Class Template Reference
+
+
+ + + + + + + +

+Public Member Functions

+template<typename ITER_T >
void add_edges (const ITER_T &begin, const ITER_T &end)
 
+void finish (ImmutableCSR< VID_T, NBR_T > &ret)
 
+ + + + + +

+Private Attributes

+std::vector< int > degree_
 
+std::vector< NBR_T > edges_
 
+
+ + + + diff --git a/classgrape_1_1ImmutableEdgecutFragment-members.html b/classgrape_1_1ImmutableEdgecutFragment-members.html new file mode 100644 index 00000000..1cb3be74 --- /dev/null +++ b/classgrape_1_1ImmutableEdgecutFragment-members.html @@ -0,0 +1,259 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T > Member List
+
+
+ +

This is the complete list of members for grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
adj_list_t typedef (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
base_t typedef (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
buildCSR(const typename csr_builder_t::vertex_range_t &vertex_range, std::vector< Edge< VID_T, EDATA_T >> &edges, LoadStrategy load_strategy) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
buildMessageDestination(const MessageStrategy &msg_strategy) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprivate
const_adj_list_t typedef (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
csr_builder_t typedef (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >private
csr_t typedef (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >private
CSREdgecutFragmentBase() (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inline
deserialize(std::unique_ptr< IOADAPTOR_T > &reader) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
Deserialize(const std::string &prefix, const fid_t fid) (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
directed() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
directed_ (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
edata_t typedef (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
edge_t typedef (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
EdgecutFragmentBase() (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
fid() constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
grape::FragmentBase::fid() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
fid_ (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
fnum() constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
grape::FragmentBase::fnum() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
fnum_ (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
fragment_adj_list_t typedef (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
fragment_const_adj_list_t typedef (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
FragmentBase() (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
FragmentBase(std::shared_ptr< vertex_map_t > vm_ptr) (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineexplicit
get_ie_begin(const vertex_t &v) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
get_ie_begin(const vertex_t &v) const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
get_ie_end(const vertex_t &v) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
get_ie_end(const vertex_t &v) const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
get_oe_begin(const vertex_t &v) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
get_oe_begin(const vertex_t &v) const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
get_oe_end(const vertex_t &v) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
get_oe_end(const vertex_t &v) const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
GetData(const vertex_t &v) const overridegrape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlinevirtual
GetEdgeNum() const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
GetFragId(const Vertex< VID_T > &u) constgrape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >::GetFragId(const Vertex< VID_T > &u) constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetId(const Vertex< VID_T > &v) constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetIncomingAdjList(const vertex_t &v, fid_t src_fid) override (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlinevirtual
GetIncomingAdjList(const vertex_t &v, fid_t src_fid) const override (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlinevirtual
GetIncomingAdjList(const Vertex< VID_T > &v)=0grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
GetIncomingAdjList(const Vertex< VID_T > &v) const=0 (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
GetIncomingAdjList(const Vertex< VID_T > &v, fid_t fid)=0 (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
GetIncomingAdjList(const Vertex< VID_T > &v, fid_t fid) const=0 (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >::GetIncomingAdjList(const vertex_t &v) overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >::GetIncomingAdjList(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
GetIncomingEdgeNum() const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inline
GetIncomingInnerVertexAdjList(const vertex_t &v) overridegrape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlinevirtual
GetIncomingInnerVertexAdjList(const vertex_t &v) const overridegrape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlinevirtual
GetIncomingOuterVertexAdjList(const vertex_t &v) overridegrape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlinevirtual
GetIncomingOuterVertexAdjList(const vertex_t &v) const overridegrape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlinevirtual
GetInnerVertex(const OID_T &oid, Vertex< VID_T > &v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetInnerVertexGid(vertex_t v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetInnerVertexId(vertex_t v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetInnerVerticesNum() constgrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inline
grape::EdgecutFragmentBase::GetInnerVerticesNum() constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetLocalInDegree(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
GetLocalOutDegree(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
GetOuterVertexGid(vertex_t v) const overridegrape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlinevirtual
GetOuterVertexId(vertex_t v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetOuterVerticesNum() constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetOutgoingAdjList(const vertex_t &v, fid_t dst_fid) override (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlinevirtual
GetOutgoingAdjList(const vertex_t &v, fid_t dst_fid) const override (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlinevirtual
GetOutgoingAdjList(const Vertex< VID_T > &v)=0grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
GetOutgoingAdjList(const Vertex< VID_T > &v) const=0 (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
GetOutgoingAdjList(const Vertex< VID_T > &v, fid_t fid)=0 (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
GetOutgoingAdjList(const Vertex< VID_T > &v, fid_t fid) const=0 (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >::GetOutgoingAdjList(const vertex_t &v) overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >::GetOutgoingAdjList(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
GetOutgoingEdgeNum() const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inline
GetOutgoingInnerVertexAdjList(const vertex_t &v) overridegrape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlinevirtual
GetOutgoingInnerVertexAdjList(const vertex_t &v) const overridegrape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlinevirtual
GetOutgoingOuterVertexAdjList(const vertex_t &v) overridegrape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlinevirtual
GetOutgoingOuterVertexAdjList(const vertex_t &v) const overridegrape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlinevirtual
GetTotalVerticesNum() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetVertex(const OID_T &oid, Vertex< VID_T > &v) constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetVertexMap() (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetVertexMap() const (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetVerticesNum() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
Gid2Lid(VID_T gid, VID_T &lid) const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
Gid2Lid(VID_T gid, VID_T &lid) const (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
Gid2Oid(VID_T gid) const (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
Gid2Vertex(const vid_t &gid, vertex_t &v) const overridegrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlinevirtual
HasChild(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
HasParent(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
id_parser_ (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
idst_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >protected
idst_built_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >protected
ie_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >protected
IEDests(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
IEDestsSize() const override (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
iespliters_ (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
ImmutableEdgecutFragment() (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
ImmutableEdgecutFragment(std::shared_ptr< vertex_map_t > vm_ptr) (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlineexplicit
init(fid_t fid, bool directed) (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
init(fid_t fid, bool directed) (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
Init(fid_t fid, bool directed, std::vector< internal_vertex_t > &vertices, std::vector< edge_t > &edges) override (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >::Init(fid_t fid, bool directed, std::vector< internal::Vertex< VID_T, VDATA_T >> &vertices, std::vector< Edge< VID_T, EDATA_T >> &edges)=0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
initDestFidList(bool in_edge, bool out_edge, ImmutableCSR< VID_T, fid_t > &csr) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprivate
initMirrorInfo(const CommSpec &comm_spec) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inline
initMirrorInfo(const CommSpec &comm_spec) (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
initOuterVerticesOfFragment() (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlineprotected
inner_vertex_array_t typedef (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
inner_vertices_ (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
inner_vertices_t typedef (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
InnerVertexGid2Lid(VID_T gid, VID_T &lid) const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
InnerVertexGid2Lid(VID_T gid, VID_T &lid) const (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
InnerVertexGid2Vertex(VID_T gid, Vertex< VID_T > &v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
InnerVertices() constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
internal_vertex_t typedef (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
iodst_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >protected
iodst_built_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >protected
IOEDests(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
IOEDestsSize() const override (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
IsBorderVertex(const vertex_t &v) constgrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inline
IsEdgeCut typedef (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
IsIncomingBorderVertex(const vertex_t &v) constgrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inline
IsInnerVertex(const Vertex< VID_T > &v) constgrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inline
grape::EdgecutFragmentBase::IsInnerVertex(const Vertex< VID_T > &v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
IsInnerVertexGid(VID_T gid) const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
IsInnerVertexGid(VID_T gid) const (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
IsInnerVertexLid(VID_T lid) const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
IsInnerVertexLid(VID_T lid) const (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
IsOuterVertex(const Vertex< VID_T > &v) constgrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inline
grape::EdgecutFragmentBase::IsOuterVertex(const Vertex< VID_T > &v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
IsOutgoingBorderVertex(const vertex_t &v) constgrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inline
IsVertexCut typedef (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
ivnum_ (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
load_strategy (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >static
mirror_info_initialized_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >protected
mirror_vertices_t typedef (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
mirrors_of_frag_ (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
MirrorVertices(fid_t fid) const (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
nbr_t typedef (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
odst_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >protected
odst_built_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >protected
oe_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >protected
OEDests(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
OEDestsSize() const override (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
oespliters_ (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
oid_t typedef (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
outer_vertex_array_t typedef (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
outer_vertices_ (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
outer_vertices_of_frag_ (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
outer_vertices_t typedef (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
OuterVertexGid2Lid(VID_T gid, VID_T &lid) const override (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlinevirtual
OuterVertexGid2Lid(VID_T gid, VID_T &lid) const =0 (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >protected
OuterVertexGid2Vertex(VID_T gid, Vertex< VID_T > &v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
OuterVertices() constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
OuterVertices(fid_t fid) const (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
ovg2l_ (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
ovgid_ (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
ovnum_ (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
PrepareToRunApp(const CommSpec &comm_spec, PrepareConf conf) overridegrape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlinevirtual
Serialize(const std::string &prefix) (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
serialize(std::unique_ptr< IOADAPTOR_T > &writer) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
SetData(const vertex_t &v, const VDATA_T &val) overridegrape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlinevirtual
splited_edges_ (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
splited_edges_by_fragment_ (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
splitEdges() (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlineprotected
splitEdgesByFragment() (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlineprotected
sub_vertices_t typedef (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
traits_t typedef (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
type_info() (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlinestatic
vdata_ (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
vdata_t typedef (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
Vertex2Gid(const vertex_t &v) const overridegrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlinevirtual
vertex_array_t typedef (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
vertex_map_t typedef (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
vertex_range_t typedef (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
vertex_t typedef (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
Vertices() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
vertices_ (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
vertices_t typedef (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
vid_t typedef (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
vm_ptr_ (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
~ImmutableEdgecutFragment()=default (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >virtual
+ + + + diff --git a/classgrape_1_1ImmutableEdgecutFragment.html b/classgrape_1_1ImmutableEdgecutFragment.html new file mode 100644 index 00000000..a0ec2d97 --- /dev/null +++ b/classgrape_1_1ImmutableEdgecutFragment.html @@ -0,0 +1,1314 @@ + + + + + + + +libgrape-lite: grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T > Class Template Reference
+
+
+ +

A kind of edgecut fragment. + More...

+ +

#include <immutable_edgecut_fragment.h>

+
+Inheritance diagram for grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >:
+
+
+ + +grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > > +grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T > +grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

+using traits_t = ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >
 
+using base_t = CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, traits_t >
 
+using internal_vertex_t = internal::Vertex< VID_T, VDATA_T >
 
+using edge_t = Edge< VID_T, EDATA_T >
 
+using nbr_t = Nbr< VID_T, EDATA_T >
 
+using vertex_t = Vertex< VID_T >
 
+using vid_t = VID_T
 
+using oid_t = OID_T
 
+using vdata_t = VDATA_T
 
+using edata_t = EDATA_T
 
+using vertex_map_t = typename traits_t::vertex_map_t
 
+using IsEdgeCut = std::true_type
 
+using IsVertexCut = std::false_type
 
+using vertex_range_t = VertexRange< VID_T >
 
+using inner_vertices_t = typename traits_t::inner_vertices_t
 
+using outer_vertices_t = typename traits_t::outer_vertices_t
 
+using vertices_t = typename traits_t::vertices_t
 
+template<typename T >
using inner_vertex_array_t = VertexArray< inner_vertices_t, T >
 
+template<typename T >
using outer_vertex_array_t = VertexArray< outer_vertices_t, T >
 
+template<typename T >
using vertex_array_t = VertexArray< vertices_t, T >
 
+using adj_list_t = typename base_t::adj_list_t
 
+using const_adj_list_t = typename base_t::const_adj_list_t
 
- Public Types inherited from grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >
+using nbr_t = Nbr< VID_T, EDATA_T >
 
+using vertex_t = Vertex< VID_T >
 
+using const_adj_list_t = ConstAdjList< VID_T, EDATA_T >
 
+using adj_list_t = AdjList< VID_T, EDATA_T >
 
+using base_t = EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >
 
- Public Types inherited from grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
+using base_t = FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
 
+using vid_t = VID_T
 
+using vertex_t = Vertex< VID_T >
 
+using inner_vertices_t = typename TRAITS_T::inner_vertices_t
 
+using outer_vertices_t = typename TRAITS_T::outer_vertices_t
 
+using sub_vertices_t = typename TRAITS_T::sub_vertices_t
 
+using mirror_vertices_t = typename TRAITS_T::mirror_vertices_t
 
- Public Types inherited from grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
+using vertex_map_t = typename TRAITS_T::vertex_map_t
 
+using fragment_adj_list_t = typename TRAITS_T::fragment_adj_list_t
 
+using fragment_const_adj_list_t = typename TRAITS_T::fragment_const_adj_list_t
 
+using vertices_t = typename TRAITS_T::vertices_t
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

ImmutableEdgecutFragment (std::shared_ptr< vertex_map_t > vm_ptr)
 
+void Init (fid_t fid, bool directed, std::vector< internal_vertex_t > &vertices, std::vector< edge_t > &edges) override
 
+template<typename IOADAPTOR_T >
void Serialize (const std::string &prefix)
 
+template<typename IOADAPTOR_T >
void Deserialize (const std::string &prefix, const fid_t fid)
 
void PrepareToRunApp (const CommSpec &comm_spec, PrepareConf conf) override
 For some kind of applications, specific data structures will be generated. More...
 
const VDATA_T & GetData (const vertex_t &v) const override
 Get the data of a vertex. More...
 
void SetData (const vertex_t &v, const VDATA_T &val) override
 Set the data of a vertex. More...
 
+bool OuterVertexGid2Lid (VID_T gid, VID_T &lid) const override
 
VID_T GetOuterVertexGid (vertex_t v) const override
 Convert from inner vertex handle to its global id. More...
 
adj_list_t GetIncomingInnerVertexAdjList (const vertex_t &v) override
 Returns the incoming adjacent inner vertices of v. More...
 
const_adj_list_t GetIncomingInnerVertexAdjList (const vertex_t &v) const override
 Returns the incoming adjacent inner vertices of v. More...
 
adj_list_t GetIncomingOuterVertexAdjList (const vertex_t &v) override
 Returns the incoming adjacent outer vertices of v. More...
 
const_adj_list_t GetIncomingOuterVertexAdjList (const vertex_t &v) const override
 Returns the incoming adjacent outer vertices of v. More...
 
adj_list_t GetOutgoingInnerVertexAdjList (const vertex_t &v) override
 Returns the outgoing adjacent inner vertices of v. More...
 
const_adj_list_t GetOutgoingInnerVertexAdjList (const vertex_t &v) const override
 Returns the outgoing adjacent inner vertices of v. More...
 
adj_list_t GetOutgoingOuterVertexAdjList (const vertex_t &v) override
 Returns the outgoing adjacent outer vertices of v. More...
 
const_adj_list_t GetOutgoingOuterVertexAdjList (const vertex_t &v) const override
 Returns the outgoing adjacent outer vertices of v. More...
 
+adj_list_t GetIncomingAdjList (const vertex_t &v, fid_t src_fid) override
 
+const_adj_list_t GetIncomingAdjList (const vertex_t &v, fid_t src_fid) const override
 
+adj_list_t GetOutgoingAdjList (const vertex_t &v, fid_t dst_fid) override
 
+const_adj_list_t GetOutgoingAdjList (const vertex_t &v, fid_t dst_fid) const override
 
+void init (fid_t fid, bool directed)
 
fid_t GetFragId (const Vertex< VID_T > &u) const
 Get the ID of fragment the input vertex belongs to. More...
 
virtual AdjList< VID_T, EDATA_T > GetIncomingAdjList (const Vertex< VID_T > &v)=0
 Returns the incoming adjacent vertices of v. More...
 
+virtual ConstAdjList< VID_T, EDATA_T > GetIncomingAdjList (const Vertex< VID_T > &v) const=0
 
+virtual fragment_adj_list_t GetIncomingAdjList (const Vertex< VID_T > &v, fid_t fid)=0
 
+virtual fragment_const_adj_list_t GetIncomingAdjList (const Vertex< VID_T > &v, fid_t fid) const=0
 
virtual AdjList< VID_T, EDATA_T > GetOutgoingAdjList (const Vertex< VID_T > &v)=0
 Returns the outgoing adjacent vertices of v. More...
 
+virtual ConstAdjList< VID_T, EDATA_T > GetOutgoingAdjList (const Vertex< VID_T > &v) const=0
 
+virtual fragment_adj_list_t GetOutgoingAdjList (const Vertex< VID_T > &v, fid_t fid)=0
 
+virtual fragment_const_adj_list_t GetOutgoingAdjList (const Vertex< VID_T > &v, fid_t fid) const=0
 
- Public Member Functions inherited from grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >
size_t GetEdgeNum () const override
 Returns the number of edges in this fragment. More...
 
+size_t GetOutgoingEdgeNum () const
 
+size_t GetIncomingEdgeNum () const
 
bool HasChild (const vertex_t &v) const override
 Check if vertex v has a child, that is, existing an edge v->u. More...
 
bool HasParent (const vertex_t &v) const override
 Check if vertex v has a parent, that is, existing an edge u->v. More...
 
int GetLocalOutDegree (const vertex_t &v) const override
 Returns the out-degree of vertex v in this fragment.<Paste> More...
 
int GetLocalInDegree (const vertex_t &v) const override
 Returns the in-degree of vertex v in this fragment. More...
 
adj_list_t GetIncomingAdjList (const vertex_t &v) override
 Returns the incoming adjacent vertices of v. More...
 
const_adj_list_t GetIncomingAdjList (const vertex_t &v) const override
 Returns the incoming adjacent vertices of v. More...
 
adj_list_t GetOutgoingAdjList (const vertex_t &v) override
 Returns the outgoing adjacent vertices of v. More...
 
const_adj_list_t GetOutgoingAdjList (const vertex_t &v) const override
 Returns the outgoing adjacent vertices of v. More...
 
bool IsIncomingBorderVertex (const vertex_t &v) const
 Check if inner vertex v is an incoming border vertex, that is, existing edge u->v, u is an outer vertex. More...
 
bool IsOutgoingBorderVertex (const vertex_t &v) const
 Check if inner vertex v is an outgoing border vertex, that is, existing edge v->u, u is an outer vertex. More...
 
bool IsBorderVertex (const vertex_t &v) const
 Check if inner vertex v is an border vertex, that is, existing edge v->u or u->v, u is an outer vertex. More...
 
DestList IEDests (const vertex_t &v) const override
 Return the incoming edge destination fragment ID list of a inner vertex. More...
 
+size_t IEDestsSize () const override
 
DestList OEDests (const vertex_t &v) const override
 Return the outgoing edge destination fragment ID list of a Vertex. More...
 
+size_t OEDestsSize () const override
 
DestList IOEDests (const vertex_t &v) const override
 Return the edge destination fragment ID list of a inner vertex. More...
 
+size_t IOEDestsSize () const override
 
void PrepareToRunApp (const CommSpec &comm_spec, PrepareConf conf) override
 For some kind of applications, specific data structures will be generated. More...
 
bool IsInnerVertex (const Vertex< VID_T > &v) const
 Check if vertex v is inner vertex of this fragment. More...
 
bool IsOuterVertex (const Vertex< VID_T > &v) const
 Check if vertex v is outer vertex of this fragment. More...
 
VID_T GetInnerVerticesNum () const
 Returns the number of inner vertices in this fragment. More...
 
+void initMirrorInfo (const CommSpec &comm_spec)
 
- Public Member Functions inherited from grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
VID_T GetInnerVerticesNum () const
 Returns the number of inner vertices in this fragment. More...
 
VID_T GetOuterVerticesNum () const
 Returns the number of outer vertices in this fragment. More...
 
const inner_vertices_t & InnerVertices () const
 Returns the vertex range of inner vertices in this fragment. More...
 
const outer_vertices_t & OuterVertices () const
 Returns the vertex range of outer vertices in this fragment. More...
 
+const sub_vertices_t & OuterVertices (fid_t fid) const
 
+const mirror_vertices_t & MirrorVertices (fid_t fid) const
 
bool IsInnerVertex (const Vertex< VID_T > &v) const
 Check if vertex v is inner vertex of this fragment. More...
 
bool IsOuterVertex (const Vertex< VID_T > &v) const
 Check if vertex v is outer vertex of this fragment. More...
 
bool GetInnerVertex (const OID_T &oid, Vertex< VID_T > &v) const
 Get a inner vertex with original ID vid. More...
 
OID_T GetInnerVertexId (vertex_t v) const
 Get the original ID of an inner vertex. More...
 
OID_T GetOuterVertexId (vertex_t v) const
 Get the original ID of an outer vertex. More...
 
bool InnerVertexGid2Vertex (VID_T gid, Vertex< VID_T > &v) const
 Convert from global id to an inner vertex handle. More...
 
bool OuterVertexGid2Vertex (VID_T gid, Vertex< VID_T > &v) const
 Convert from global id to an outer vertex handle. More...
 
VID_T GetInnerVertexGid (vertex_t v) const
 Convert from outer vertex handle to its global id. More...
 
bool Gid2Vertex (const vid_t &gid, vertex_t &v) const override
 Convert from global id to a vertex handle. More...
 
vid_t Vertex2Gid (const vertex_t &v) const override
 Convert from vertex handle to its global id. More...
 
fid_t fid () const
 Returns the ID of this fragment. More...
 
fid_t fnum () const
 Returns the number of fragments. More...
 
- Public Member Functions inherited from grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
FragmentBase (std::shared_ptr< vertex_map_t > vm_ptr)
 
+std::shared_ptr< vertex_map_t > GetVertexMap ()
 
+const std::shared_ptr< vertex_map_t > GetVertexMap () const
 
virtual void Init (fid_t fid, bool directed, std::vector< internal::Vertex< VID_T, VDATA_T >> &vertices, std::vector< Edge< VID_T, EDATA_T >> &edges)=0
 Construct a fragment with a set of vertices and edges. More...
 
bool directed () const
 Returns true if the fragment is directed, false otherwise. More...
 
fid_t fid () const
 Returns the ID of this fragment. More...
 
fid_t fnum () const
 Returns the number of fragments. More...
 
VID_T GetVerticesNum () const
 Returns the number of vertices in this fragment. More...
 
size_t GetTotalVerticesNum () const
 Returns the number of vertices in the entire graph. More...
 
const vertices_t & Vertices () const
 Get all vertices referenced to this fragment. More...
 
bool GetVertex (const OID_T &oid, Vertex< VID_T > &v) const
 Get a vertex with original ID vid. More...
 
OID_T GetId (const Vertex< VID_T > &v) const
 Get the original ID of a vertex. More...
 
+OID_T Gid2Oid (VID_T gid) const
 
fid_t GetFragId (const Vertex< VID_T > &u) const
 Get the ID of fragment the input vertex belongs to. More...
 
+ + + +

+Static Public Member Functions

+static std::string type_info ()
 
+ + + +

+Static Public Attributes

+static constexpr LoadStrategy load_strategy = _load_strategy
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Protected Member Functions

+void initOuterVerticesOfFragment ()
 
+void splitEdges ()
 
+void splitEdgesByFragment ()
 
- Protected Member Functions inherited from grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >
+void buildCSR (const typename csr_builder_t::vertex_range_t &vertex_range, std::vector< Edge< VID_T, EDATA_T >> &edges, LoadStrategy load_strategy)
 
+void serialize (std::unique_ptr< IOADAPTOR_T > &writer)
 
+void deserialize (std::unique_ptr< IOADAPTOR_T > &reader)
 
+nbr_tget_ie_begin (const vertex_t &v)
 
+const nbr_tget_ie_begin (const vertex_t &v) const
 
+nbr_tget_ie_end (const vertex_t &v)
 
+const nbr_tget_ie_end (const vertex_t &v) const
 
+nbr_tget_oe_begin (const vertex_t &v)
 
+const nbr_tget_oe_begin (const vertex_t &v) const
 
+nbr_tget_oe_end (const vertex_t &v)
 
+const nbr_tget_oe_end (const vertex_t &v) const
 
+bool Gid2Lid (VID_T gid, VID_T &lid) const
 
+bool InnerVertexGid2Lid (VID_T gid, VID_T &lid) const
 
+bool IsInnerVertexGid (VID_T gid) const
 
+bool IsInnerVertexLid (VID_T lid) const
 
+virtual bool OuterVertexGid2Lid (VID_T gid, VID_T &lid) const =0
 
- Protected Member Functions inherited from grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
+bool IsInnerVertexGid (VID_T gid) const
 
+bool IsInnerVertexLid (VID_T lid) const
 
+bool Gid2Lid (VID_T gid, VID_T &lid) const
 
+bool InnerVertexGid2Lid (VID_T gid, VID_T &lid) const
 
+void initMirrorInfo (const CommSpec &comm_spec)
 
+template<typename IOADAPTOR_T >
void serialize (std::unique_ptr< IOADAPTOR_T > &writer)
 
+template<typename IOADAPTOR_T >
void deserialize (std::unique_ptr< IOADAPTOR_T > &reader)
 
- Protected Member Functions inherited from grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
+void init (fid_t fid, bool directed)
 
+template<typename IOADAPTOR_T >
void serialize (std::unique_ptr< IOADAPTOR_T > &writer)
 
+template<typename IOADAPTOR_T >
void deserialize (std::unique_ptr< IOADAPTOR_T > &reader)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Protected Attributes

+VID_T ovnum_
 
+ska::flat_hash_map< VID_T, VID_T, std::hash< VID_T >, std::equal_to< VID_T >, Allocator< std::pair< VID_T, VID_T > > > ovg2l_
 
+Array< VID_T, Allocator< VID_T > > ovgid_
 
+Array< VDATA_T, Allocator< VDATA_T > > vdata_
 
+std::vector< VertexArray< inner_vertices_t, nbr_t * > > iespliters_
 
+std::vector< VertexArray< inner_vertices_t, nbr_t * > > oespliters_
 
+bool splited_edges_by_fragment_ = false
 
+bool splited_edges_ = false
 
+VID_T ivnum_
 
+bool directed_
 
+fid_t fid_
 
+fid_t fnum_
 
+IdParser< VID_T > id_parser_
 
- Protected Attributes inherited from grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >
+csr_t ie_
 
+csr_t oe_
 
+ImmutableCSR< VID_T, fid_t > idst_
 
+ImmutableCSR< VID_T, fid_t > odst_
 
+ImmutableCSR< VID_T, fid_t > iodst_
 
+bool idst_built_
 
+bool odst_built_
 
+bool iodst_built_
 
+bool mirror_info_initialized_
 
- Protected Attributes inherited from grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
+inner_vertices_t inner_vertices_
 
+outer_vertices_t outer_vertices_
 
+std::vector< sub_vertices_t > outer_vertices_of_frag_
 
+std::vector< mirror_vertices_t > mirrors_of_frag_
 
+IdParser< VID_T > id_parser_
 
+std::shared_ptr< vertex_map_t > vm_ptr_
 
- Protected Attributes inherited from grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
+fid_t fid_
 
+fid_t fnum_
 
+bool directed_
 
+VID_T ivnum_
 
+vertices_t vertices_
 
+std::shared_ptr< vertex_map_t > vm_ptr_
 
+IdParser< VID_T > id_parser_
 
+

Detailed Description

+

template<typename OID_T, typename VID_T, typename VDATA_T, typename EDATA_T, LoadStrategy _load_strategy = LoadStrategy::kOnlyOut, typename VERTEX_MAP_T = GlobalVertexMap<OID_T, VID_T>>
+class grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >

+ +

A kind of edgecut fragment.

+
Template Parameters
+ + + + + + +
OID_TType of original ID.
VID_TType of global ID and local ID.
VDATA_TType of data on vertices.
EDATA_TType of data on edges.
LoadStrategyThe strategy to store adjacency information, default is only_out.
+
+
+

With an edgecut partition, each vertex is assigned to a fragment. In a fragment, inner vertices are those vertices assigned to it, and the outer vertices are the remaining vertices adjacent to some of the inner vertices. The load strategy defines how to store the adjacency between inner and outer vertices.

+

For example, a graph G = {V, E} V = {v0, v1, v2, v3, v4} E = {(v0, v2), (v0, v3), (v1, v0), (v3, v1), (v3, v4), (v4, v1), (v4, v2)}

+

Subset V_0 = {v0, v1} is assigned to fragment_0, so InnerVertices_0 = {v0, v1}

+

If the load strategy is kOnlyIn: All incoming edges (along with the source vertices) of inner vertices will be stored in a fragment. So, OuterVertices_0 = {v3, v4}, E_0 = {(v1, v0), (v3, v1), (v4, v1)}

+

If the load strategy is kOnlyOut: All outgoing edges (along with the destination vertices) of inner vertices will be stored in a fragment. So, OuterVertices_0 = {v2, v3}, E_0 = {(v0, v2), (v0, v3), (v1, v0)}

+

If the load strategy is kBothOutIn: All incoming edges (along with the source vertices) and outgoing edges (along with destination vertices) of inner vertices will be stored in a fragment. So, OuterVertices_0 = {v2, v3, v4}, E_0 = {(v0, v2), (v0, v3), (v1, v0), (v3, v1), (v4, v1), (v4, v2)}

+

Inner vertices and outer vertices of a fragment will be given a local ID {0, 1, ..., ivnum - 1, ivnum, ..., ivnum + ovnum - 1}, then iterate on vertices can be implemented to increment the local ID. Also, the sets of inner vertices, outer vertices and all vertices are ranges of local ID.

+

Member Function Documentation

+ +

◆ GetData()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , LoadStrategy _load_strategy = LoadStrategy::kOnlyOut, typename VERTEX_MAP_T = GlobalVertexMap<OID_T, VID_T>>
+ + + + + +
+ + + + + + + + +
const VDATA_T& grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >::GetData (const vertex_tv) const
+
+inlineoverridevirtual
+
+ +

Get the data of a vertex.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
Data on it.
+ +

Implements grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+ +

◆ GetFragId()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , LoadStrategy _load_strategy = LoadStrategy::kOnlyOut, typename VERTEX_MAP_T = GlobalVertexMap<OID_T, VID_T>>
+ + + + + +
+ + + + +
fid_t grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetFragId
+
+inline
+
+ +

Get the ID of fragment the input vertex belongs to.

+
Parameters
+ + +
uInput vertex.
+
+
+
Returns
Its fragment ID.
+ +
+
+ +

◆ GetIncomingAdjList()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , LoadStrategy _load_strategy = LoadStrategy::kOnlyOut, typename VERTEX_MAP_T = GlobalVertexMap<OID_T, VID_T>>
+ + + + +
virtual AdjList<VID_T, EDATA_T> grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetIncomingAdjList
+
+ +

Returns the incoming adjacent vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The incoming adjacent vertices of v.
+ +
+
+ +

◆ GetIncomingInnerVertexAdjList() [1/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , LoadStrategy _load_strategy = LoadStrategy::kOnlyOut, typename VERTEX_MAP_T = GlobalVertexMap<OID_T, VID_T>>
+ + + + + +
+ + + + + + + + +
const_adj_list_t grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >::GetIncomingInnerVertexAdjList (const vertex_tv) const
+
+inlineoverridevirtual
+
+ +

Returns the incoming adjacent inner vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The incoming adjacent inner vertices of v.
+ +

Implements grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+ +

◆ GetIncomingInnerVertexAdjList() [2/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , LoadStrategy _load_strategy = LoadStrategy::kOnlyOut, typename VERTEX_MAP_T = GlobalVertexMap<OID_T, VID_T>>
+ + + + + +
+ + + + + + + + +
adj_list_t grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >::GetIncomingInnerVertexAdjList (const vertex_tv)
+
+inlineoverridevirtual
+
+ +

Returns the incoming adjacent inner vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The incoming adjacent inner vertices of v.
+ +

Implements grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+ +

◆ GetIncomingOuterVertexAdjList() [1/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , LoadStrategy _load_strategy = LoadStrategy::kOnlyOut, typename VERTEX_MAP_T = GlobalVertexMap<OID_T, VID_T>>
+ + + + + +
+ + + + + + + + +
const_adj_list_t grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >::GetIncomingOuterVertexAdjList (const vertex_tv) const
+
+inlineoverridevirtual
+
+ +

Returns the incoming adjacent outer vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The incoming adjacent outer vertices of v.
+ +

Implements grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+ +

◆ GetIncomingOuterVertexAdjList() [2/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , LoadStrategy _load_strategy = LoadStrategy::kOnlyOut, typename VERTEX_MAP_T = GlobalVertexMap<OID_T, VID_T>>
+ + + + + +
+ + + + + + + + +
adj_list_t grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >::GetIncomingOuterVertexAdjList (const vertex_tv)
+
+inlineoverridevirtual
+
+ +

Returns the incoming adjacent outer vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The incoming adjacent outer vertices of v.
+ +

Implements grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+ +

◆ GetOuterVertexGid()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , LoadStrategy _load_strategy = LoadStrategy::kOnlyOut, typename VERTEX_MAP_T = GlobalVertexMap<OID_T, VID_T>>
+ + + + + +
+ + + + + + + + +
VID_T grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >::GetOuterVertexGid (vertex_t v) const
+
+inlineoverridevirtual
+
+ +

Convert from inner vertex handle to its global id.

+
Parameters
+ + +
vInput vertex handle.
+
+
+
Returns
Global id of the vertex.
+ +

Implements grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+ +

◆ GetOutgoingAdjList()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , LoadStrategy _load_strategy = LoadStrategy::kOnlyOut, typename VERTEX_MAP_T = GlobalVertexMap<OID_T, VID_T>>
+ + + + +
virtual AdjList<VID_T, EDATA_T> grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetOutgoingAdjList
+
+ +

Returns the outgoing adjacent vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The outgoing adjacent vertices of v.
+ +
+
+ +

◆ GetOutgoingInnerVertexAdjList() [1/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , LoadStrategy _load_strategy = LoadStrategy::kOnlyOut, typename VERTEX_MAP_T = GlobalVertexMap<OID_T, VID_T>>
+ + + + + +
+ + + + + + + + +
const_adj_list_t grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >::GetOutgoingInnerVertexAdjList (const vertex_tv) const
+
+inlineoverridevirtual
+
+ +

Returns the outgoing adjacent inner vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The outgoing adjacent inner vertices of v.
+ +

Implements grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+ +

◆ GetOutgoingInnerVertexAdjList() [2/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , LoadStrategy _load_strategy = LoadStrategy::kOnlyOut, typename VERTEX_MAP_T = GlobalVertexMap<OID_T, VID_T>>
+ + + + + +
+ + + + + + + + +
adj_list_t grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >::GetOutgoingInnerVertexAdjList (const vertex_tv)
+
+inlineoverridevirtual
+
+ +

Returns the outgoing adjacent inner vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The outgoing adjacent inner vertices of v.
+ +

Implements grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+ +

◆ GetOutgoingOuterVertexAdjList() [1/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , LoadStrategy _load_strategy = LoadStrategy::kOnlyOut, typename VERTEX_MAP_T = GlobalVertexMap<OID_T, VID_T>>
+ + + + + +
+ + + + + + + + +
const_adj_list_t grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >::GetOutgoingOuterVertexAdjList (const vertex_tv) const
+
+inlineoverridevirtual
+
+ +

Returns the outgoing adjacent outer vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The outgoing adjacent outer vertices of v.
+ +

Implements grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+ +

◆ GetOutgoingOuterVertexAdjList() [2/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , LoadStrategy _load_strategy = LoadStrategy::kOnlyOut, typename VERTEX_MAP_T = GlobalVertexMap<OID_T, VID_T>>
+ + + + + +
+ + + + + + + + +
adj_list_t grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >::GetOutgoingOuterVertexAdjList (const vertex_tv)
+
+inlineoverridevirtual
+
+ +

Returns the outgoing adjacent outer vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The outgoing adjacent outer vertices of v.
+ +

Implements grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+ +

◆ PrepareToRunApp()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , LoadStrategy _load_strategy = LoadStrategy::kOnlyOut, typename VERTEX_MAP_T = GlobalVertexMap<OID_T, VID_T>>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >::PrepareToRunApp (const CommSpeccomm_spec,
PrepareConf conf 
)
+
+inlineoverridevirtual
+
+ +

For some kind of applications, specific data structures will be generated.

+
Parameters
+ + + +
strategy
need_split_edge
+
+
+ +

Implements grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+ +

◆ SetData()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , LoadStrategy _load_strategy = LoadStrategy::kOnlyOut, typename VERTEX_MAP_T = GlobalVertexMap<OID_T, VID_T>>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >::SetData (const vertex_tv,
const VDATA_T & val 
)
+
+inlineoverridevirtual
+
+ +

Set the data of a vertex.

+
Parameters
+ + + +
vInput vertex.
valData to write.
+
+
+
Attention
This will only be applied locally, won't sync on other mirrors globally.
+ +

Implements grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+
+ + + + diff --git a/classgrape_1_1ImmutableEdgecutFragment.png b/classgrape_1_1ImmutableEdgecutFragment.png new file mode 100644 index 0000000000000000000000000000000000000000..24afadc53890753f410f05d0656c68d230f33532 GIT binary patch literal 5106 zcmds*d03L$zQ-|7HkjGYM#tUG*~}~@!>LIN%^5T`r^E*5azsTfw>CK>iJGQV;t)6_ z4mfLBIHi_`h^P%%I0PyxC?Fhc*!$e)KF>Yp&wKCtJn*jdTkrdY^;_%rdB1SS*7}Up zX4%aE06+?S_Ov|!@DHG<-L_F&^xk<#=Bntl$Mzh=OehqJnv>s_!qQ&e7qz~>+S=OI z-x*aBbvK6ETRQ+m7p)znZpdK(K;{Pc^a)6$7$a{cv*5sv(}dS9tAaGXnVHe=N!gYa zD6DjZeTB=CGdf>9m<_WnJSLi*g$^_&1dcTzFg3n)VKeNDex%@;A;#-n$mWkj zWmK(zKPZx-;pTyIyjKwaqM>%H)`IH!uSR;Yx+Vkyya&TVxJAZRQu8=fI?t(H-Vu$s zyhFiE9Y$a{;}!x!ALUZoE>(<>*)5f>OYQuyX1*`mCak3$KGuSBgSC$@_p&Re(-;>@ z1EBd>q9Xz)dmz9zVTjp)ZaNOF=`|rw=i*`sM*`RuJ2~G7?96b7C#9QTTie!$o0|D_ z^P9$tkn_=;roa!RBB~PmW$p-7#o+QRvUdh$^p0q50SK*3F&u(4HyT4w}%)p7L!*0khR zdC`g9zWy1u8-rVQbo_~IeNIqfGwd3Zj*GENTtU<)(CVD!9p|%OW6pIBamZQH?L( zFQBfGAaMU;rybaO9;%>ULf3wJokyabBHfx+pH43(N5mFmffR$7v;|p8Bz8J$|7c4^ zc$(%89s=dcLkaJ;65#iYLi=6$^cX~ajc-$hlv&*nylc8!1HdS)&cPFmYMAh=H^f%s4T3EDVXv(pPt|PAVeUwJW8EqRnGpeJv`SIp?<^^JJ zyRZJR>H(cgM;3B@`FPLLfeWaGo`7-RqJr(H?ox?`rhJRjJBKAqE-X>uS$7szoWx(d zQ=BH9psl$67VCNMvecEfUU(jQHgGrP`O)zqV8lozwx7xk6u=rkyr9)$UlxyK^+RzF zsd1032&Uf>IZ$s0pOm|!(A<7#M^yiAUIcW18sdch-NegK?;~^7zIya9o*;acA~$=5 zd_8))JUp}UN0rXjI!cME*4=;K&+1hDS*~jnOmZazDg_4Nb%jzI!l8T~vvF47+}b2@ z2yltF3fKb>_XKQdJC-T+qk)KxEtLaEv;p?SH=YLqw#17a0&wb|C54HLLICk#=^lx- zkc8)LvmcQ|ZFn(}LcG`>PYOUZ&<5D@-2aEH#4iEy13x9jetit!mrT6R|6Umvdy6hi z1`@2H^1$9gwJ@V^9~hagydP|iOjgeGqTK)4lzQ%e_Ger)W96VxtgJ7%1SNt~IJytj4j1&O0^T z>|1pt6zL)ejPIsweRm~qpsr{MQq!Qkv~pifWy;PSnPRATe+PQOABmBv1*g3^Al~?3 ztKBF9?)7aPhpSwiJs+7M2KKF2lS8Lj$GLoXue8OhC7FPCp{L$&a$4jicysO>=b>z5 z)wgbr^N%ePujWnfe(C_F2(C??z1y!OZ98mHd;zN+*y2{s8`Ta9r<5@GcSYa!L<7F^ zHNw!2dCOg;{8Nbj#33*8`?)Bep0}4OOK7AX^Q^cdTDkI4s~f6V4L8P4loeaYunphc z@w&2q(M{}b@l57D)n`SnwhWT3-k0|LU<2X38|8`(+44<$ z1~(JbXU&hsMz!tu6Gl6v(nnA zmVP?cgwdt-^x8o=yWa@0(3YAFwf$pyExFk|^5FJKSa7|>v?c5QTeTK{`-vBoDN)7` zL`#&7>2u(f(qBoRp+kUd<<%qr>Lt^xKzo=OCLdaOjim!;^7XW^Xn}SU`{k@C;1TrEXnSP&Kvqi2 zV~c@!H6V*Wt}?aR$uSDyq~jXd>MfX>G&qiYKlg1rdfdec$c~=qHUU*BPbu1*OUG<* zu1M!9qA-e1M2ms+EbXS2^aAdXm1!V9HnH|GGf$qpF-nA?#mC zP`pMrNWb)V4z>XvdH>|zD4pKX@PmbQ_kLn67@g~T{^(DP{^DZNdA%Qz|D#;|4`BaT zr7+{1g~r1S`@`R}Hzkk!nOjk!_x`(_x8e7FhwNUkY_J=!h^kW^;xO{1oe=~E(b>mR zGcmeUWw5M0J2Lxkg1+9%%ZWHJAy|-5p89i@x^F8wt^*Q#a@CrfnP`ohZK zdt_&jOzTRLgTl$Xtd5?}3pQ&tH3&E54mz)3ZhU?`*YTAMy53k3yAK3KF_f}WG0XgU zKw??wbjir)uhcIM{bQ_4St%oZ6_NJHJ`H?jVgxl(1X0`*)a3$^uOp2n6pmR$HsgJ+ zRNbqCEaBgM`S7M&^~@>Zi_)e*&j{O@XENwj>(GmPMm8dx;y+I{gkiwgDMy!R{T)^- z&(#VH^7slq1+32bM;(dyZA?ZUWQ$)ZzG2G$a(#X-4a1(ur3*JW?`>MF_CGuL=~?sW zyY#d(#bF-NgE2Pom-efz4^@@xE&gNAim;EK7Ij@+9ziJyIRNoHddIc?>R?S)HmVs| zh?@vd4cHFtaWtZuc?71{8vy+aEwGcNw+>eINT^ONXA~_t?~J!GFTU=va-KP$v-$0b zDqM9hPb=_l%>|WkMUweagwe5WspbBmIt9eY8Ug%bZSjoCS1${Mr2?#AK!|5nZRguN z5-pCo*Ga>^$gGKm$}DYL(+oL9Ca}r>m^6}o0ex{^O_3V%hbfvpaa_-ra{DD=38!g{ zy5|C{h5uKeju-_VKnE2-;|?@y%UtdW>*;SW?^x$iJ?%Vd>wu(R*;tu&O%wlSUfCv9Ru5l8-mpd5BozdV+hV!< zA@!W)2>S4$S<3-|{JK^i>r> ziVJ7}uzh=#WsIkv8IV2mS-U6f4S2vfKl=}`G~RvxlCdV(xI7t!*)M`HLJ}EDG~KPR z;Ve?ZsDUV%pMg1}j@OkF`HZX!^RL|3ZZb!ff0{fyAWV+y6gK`1Rb_>LYlQwT{Pa}~$V zZXoOV#%u19XO&~zGmi|Pie#x-aw7Z5wIgRF>xI=fqHkRB0Ioiq^S@&Ua zhCU88678?k-bWfPD^k~$P93wPU8O`4kB^?+iJq*h`ICHmhf)$?XHfX*!!6bR0Hdy> zokXOaYXf8TtyaH1mZSu|<9Gyjy|jg-B<;u^{ouhFD#bi0@A{CQVt$%i7-<7MD0`bb z#w|4k8kbF>NL+i6y^e)GB^=)vW61|6XZ#n4Zi?3 zJgZEIRM3W+E%bMr&%KI<(S~PoKw++&Na{htS=i1i+z6k7Eev^@)}OQ)SV8&x9^s~j ze)q;+#;$u4_iIQUE`HM&7@g(|4HmEbMBbS5dH583LO6@E3`sNf{-`d8Qp3J9l34ux z!v<&nB@kD++n$E`VrJCmMJ|h3$G_TQ1x$6ae^4f)*H7`;rTk>STtGSpR&W_#tgri9 zoE>oFsjRa>ClM;Xfl`v&@_g}g<>Abf_HoT)SA7bOk-KzTj_b9U1F@2t9BRy?$HMpc zcXkQ}Xlv-{9S5gIcFA*&g}4}y&{td8a`$DHZ3Sz3IPbuY(d73zK3hhxEKGff9Njpx(*qK_~lY3 zpUP|GVN@mHjC*bH#m8_dNdL!>ncm${+6|K8=(aWwnjFkKRc9MoT9JF_GMc{ z%CL*K5$(_)MlN#wfAB-Ku8a7i77q{VSzXF0>N+>5m&a17&fgklwNv~XKy-l3tWTGp H^t|~`ra^jj literal 0 HcmV?d00001 diff --git a/classgrape_1_1InArchive-members.html b/classgrape_1_1InArchive-members.html new file mode 100644 index 00000000..c35f415f --- /dev/null +++ b/classgrape_1_1InArchive-members.html @@ -0,0 +1,98 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::InArchive Member List
+
+
+ +

This is the complete list of members for grape::InArchive, including all inherited members.

+ + + + + + + + + + + + + + + + + +
AddByte(char v) (defined in grape::InArchive)grape::InArchiveinline
AddBytes(const void *head, size_t size) (defined in grape::InArchive)grape::InArchiveinline
buffer_ (defined in grape::InArchive)grape::InArchiveprivate
Clear() (defined in grape::InArchive)grape::InArchiveinline
Empty() const (defined in grape::InArchive)grape::InArchiveinline
GetBuffer() (defined in grape::InArchive)grape::InArchiveinline
GetBuffer() const (defined in grape::InArchive)grape::InArchiveinline
GetSize() const (defined in grape::InArchive)grape::InArchiveinline
InArchive() (defined in grape::InArchive)grape::InArchiveinline
InArchive(InArchive &&rhs) (defined in grape::InArchive)grape::InArchiveinline
operator=(InArchive &&rhs) (defined in grape::InArchive)grape::InArchiveinline
OutArchive (defined in grape::InArchive)grape::InArchivefriend
Reserve(size_t cap) (defined in grape::InArchive)grape::InArchiveinline
Reset() (defined in grape::InArchive)grape::InArchiveinline
Resize(size_t size) (defined in grape::InArchive)grape::InArchiveinline
~InArchive() (defined in grape::InArchive)grape::InArchiveinline
+ + + + diff --git a/classgrape_1_1InArchive.html b/classgrape_1_1InArchive.html new file mode 100644 index 00000000..f157c2af --- /dev/null +++ b/classgrape_1_1InArchive.html @@ -0,0 +1,143 @@ + + + + + + + +libgrape-lite: grape::InArchive Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::InArchive Class Reference
+
+
+ +

InArchive is an archived object for serializing objects. + More...

+ +

#include <in_archive.h>

+ + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

InArchive (InArchive &&rhs)
 
+InArchiveoperator= (InArchive &&rhs)
 
+void Reset ()
 
+char * GetBuffer ()
 
+const char * GetBuffer () const
 
+size_t GetSize () const
 
+void AddByte (char v)
 
+void AddBytes (const void *head, size_t size)
 
+void Resize (size_t size)
 
+void Clear ()
 
+bool Empty () const
 
+void Reserve (size_t cap)
 
+ + + +

+Private Attributes

+std::vector< char > buffer_
 
+ + + +

+Friends

+class OutArchive
 
+

Detailed Description

+

InArchive is an archived object for serializing objects.

+
+ + + + diff --git a/classgrape_1_1IteratorPair-members.html b/classgrape_1_1IteratorPair-members.html new file mode 100644 index 00000000..fb361b56 --- /dev/null +++ b/classgrape_1_1IteratorPair-members.html @@ -0,0 +1,92 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::IteratorPair< T > Member List
+
+
+ +

This is the complete list of members for grape::IteratorPair< T >, including all inherited members.

+ + + + + + + + + + + +
begin() const (defined in grape::IteratorPair< T >)grape::IteratorPair< T >inline
begin_ (defined in grape::IteratorPair< T >)grape::IteratorPair< T >private
empty() const (defined in grape::IteratorPair< T >)grape::IteratorPair< T >inline
end() const (defined in grape::IteratorPair< T >)grape::IteratorPair< T >inline
end_ (defined in grape::IteratorPair< T >)grape::IteratorPair< T >private
IteratorPair(const T begin, const T end) (defined in grape::IteratorPair< T >)grape::IteratorPair< T >inline
operator=(const IteratorPair &ip) (defined in grape::IteratorPair< T >)grape::IteratorPair< T >inline
set_begin(T begin) (defined in grape::IteratorPair< T >)grape::IteratorPair< T >inline
set_end(T end) (defined in grape::IteratorPair< T >)grape::IteratorPair< T >inline
size() const (defined in grape::IteratorPair< T >)grape::IteratorPair< T >inline
+ + + + diff --git a/classgrape_1_1IteratorPair.html b/classgrape_1_1IteratorPair.html new file mode 100644 index 00000000..f0fd6db3 --- /dev/null +++ b/classgrape_1_1IteratorPair.html @@ -0,0 +1,136 @@ + + + + + + + +libgrape-lite: grape::IteratorPair< T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::IteratorPair< T > Class Template Reference
+
+
+ +

IteratorPair is a wrapper for begin and end iterators. + More...

+ +

#include <iterator_pair.h>

+ + + + + + + + + + + + + + + + + + +

+Public Member Functions

IteratorPair (const T begin, const T end)
 
+T begin () const
 
+T end () const
 
+IteratorPairoperator= (const IteratorPair &ip)
 
+bool empty () const
 
+void set_begin (T begin)
 
+void set_end (T end)
 
+int size () const
 
+ + + + + +

+Private Attributes

+T begin_
 
+T end_
 
+

Detailed Description

+

template<typename T>
+class grape::IteratorPair< T >

+ +

IteratorPair is a wrapper for begin and end iterators.

+
Template Parameters
+ + +
TThe type of data type will be iterated over.
+
+
+
+ + + + diff --git a/classgrape_1_1LineParserBase-members.html b/classgrape_1_1LineParserBase-members.html new file mode 100644 index 00000000..c2ea7dce --- /dev/null +++ b/classgrape_1_1LineParserBase-members.html @@ -0,0 +1,86 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::LineParserBase< OID_T, VDATA_T, EDATA_T > Member List
+
+
+ +

This is the complete list of members for grape::LineParserBase< OID_T, VDATA_T, EDATA_T >, including all inherited members.

+ + + + + +
LineParserBase()=default (defined in grape::LineParserBase< OID_T, VDATA_T, EDATA_T >)grape::LineParserBase< OID_T, VDATA_T, EDATA_T >
LineParserForEFile(const std::string &line, OID_T &u, OID_T &v, EDATA_T &e_data)=0grape::LineParserBase< OID_T, VDATA_T, EDATA_T >pure virtual
LineParserForVFile(const std::string &line, OID_T &u, VDATA_T &v_data)=0grape::LineParserBase< OID_T, VDATA_T, EDATA_T >pure virtual
~LineParserBase()=default (defined in grape::LineParserBase< OID_T, VDATA_T, EDATA_T >)grape::LineParserBase< OID_T, VDATA_T, EDATA_T >virtual
+ + + + diff --git a/classgrape_1_1LineParserBase.html b/classgrape_1_1LineParserBase.html new file mode 100644 index 00000000..7f58d79f --- /dev/null +++ b/classgrape_1_1LineParserBase.html @@ -0,0 +1,241 @@ + + + + + + + +libgrape-lite: grape::LineParserBase< OID_T, VDATA_T, EDATA_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::LineParserBase< OID_T, VDATA_T, EDATA_T > Class Template Referenceabstract
+
+
+ +

LineParserBase is the base class for line parsers. + More...

+ +

#include <line_parser_base.h>

+
+Inheritance diagram for grape::LineParserBase< OID_T, VDATA_T, EDATA_T >:
+
+
+ + +grape::TSVLineParser< typename FRAG_T::oid_t, typename FRAG_T::vdata_t, typename FRAG_T::edata_t > +grape::TSVLineParser< OID_T, VDATA_T, EDATA_T > + +
+ + + + + + + + +

+Public Member Functions

virtual void LineParserForEFile (const std::string &line, OID_T &u, OID_T &v, EDATA_T &e_data)=0
 parser of edge file, to parse source vertex_id, destination vertex_id from a line. More...
 
virtual void LineParserForVFile (const std::string &line, OID_T &u, VDATA_T &v_data)=0
 parser of vertex file, to parse vertex_id and vertex_data from a string. More...
 
+

Detailed Description

+

template<typename OID_T, typename VDATA_T, typename EDATA_T>
+class grape::LineParserBase< OID_T, VDATA_T, EDATA_T >

+ +

LineParserBase is the base class for line parsers.

+
Note
: The pure virtual functions in the class work as interfaces, instructing sub-classes to implement. The override functions in the derived classes would be invoked directly, not via virtual functions.
+
Template Parameters
+ + + + +
OID_T
VDATA_T
EDATA_T
+
+
+

Member Function Documentation

+ +

◆ LineParserForEFile()

+ +
+
+
+template<typename OID_T , typename VDATA_T , typename EDATA_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
virtual void grape::LineParserBase< OID_T, VDATA_T, EDATA_T >::LineParserForEFile (const std::string & line,
OID_T & u,
OID_T & v,
EDATA_T & e_data 
)
+
+pure virtual
+
+ +

parser of edge file, to parse source vertex_id, destination vertex_id from a line.

+
Parameters
+ + + + + +
line
u
v
e_data
+
+
+ +

Implemented in grape::TSVLineParser< OID_T, VDATA_T, EDATA_T >.

+ +
+
+ +

◆ LineParserForVFile()

+ +
+
+
+template<typename OID_T , typename VDATA_T , typename EDATA_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual void grape::LineParserBase< OID_T, VDATA_T, EDATA_T >::LineParserForVFile (const std::string & line,
OID_T & u,
VDATA_T & v_data 
)
+
+pure virtual
+
+ +

parser of vertex file, to parse vertex_id and vertex_data from a string.

+
Parameters
+ + + + +
line
u
v_data
+
+
+ +

Implemented in grape::TSVLineParser< OID_T, VDATA_T, EDATA_T >.

+ +
+
+
+ + + + diff --git a/classgrape_1_1LineParserBase.png b/classgrape_1_1LineParserBase.png new file mode 100644 index 0000000000000000000000000000000000000000..89d03913c2fa1c79a94cda78d926a4d82ffad3de GIT binary patch literal 2206 zcmcgud03L^76*#4Ftx?)mdj1aZ8C3*qEcpy8JWnqF;ZGNH_Ij^G!{kF$!)R=8MdmZ zlVg}0la1g4>Sa=IDOoO2ARuXJrGi>6A#gv-`SU){{B^(Q`M$Hf@A;kcopavvyq7U( zeWppaoHP!sA+>r=|5n%Z?~2 zR$NTkPr14>JwI3oL_EZQgIIVs)5F`-qG#dgwD?r1MR7?|CCyOcXoJYlmn4`lw3Ru?~R}+lJ-~*^*{Mmxesih zwi6zk)pwjmWQv=jZM?H$;k?1PWLN9(7Y#ua+X*jqc(o!;if!1;9~iX9UGC)b-^iw=?+@)9!?qOoAp`>g@X*M0HBd}X@_oN1!+O+gBBSffhrGR~m^+9P6mwLI+S0>(8=i57i1FZfIA#|Irb?H*8IxBIFxj}>c$KmR zgi62xaEp^wVUafxsPOT7j;Pd;J9MgjyVoBl-YZ)zvIwHE(QT)TiqD zaZ+-;ey#HI5`?*u=K0y1jcq)kXLaj3p@qivr}w`oyIEhr$mXa6Uy4R(a+a869ovU{ z%4&@t)LuHzsPKCHR#d>7Ea`VBd-oq1n>f$c`m|#=$Wf$6F2U5bGOpBEJb%)OcJk55;GG=Wv_n8i1e3mYd^i*ozhA`yplQfPH5_>M49%t zUr7OKrnAQejhztL$DkacY|>6(XYs;j`!@QFE9&WiZ}}4rXTvL!=tQW(yXVEG^Ik@2 z-{;n!@z_j?U4x>!JJW3M_8q_$lG9u`y`O6WlO5~tNW_5z#*DWRDPoMd@KtMU*IY<= zBQuvzcNCgQ#M94;6Es8?HHdnyI6vuD+}pE>k{Y|fVF|tYe#yY4T|M)OHx{EP*7=`{ z#gU7#HbHr>OJ3{qUe{0M3Xv55!Oi?nGuY9W7x63|no`x{4=IXBLS*s0n9N<`9ff<{ zR1<>VCwT`WEJWvch-=|WDWu^+XdGeDLinMuUl+>`n97+)gcOPAp;_d424z1*^fP^R znloPmDZ-I|REiAHiQVI{c@wwP#3aO(hT5WuOB`yH$<4hht(dcttb2+%Z-|*>hV_F-#n~#u(`jYa9~;z@Mi&xf?n2E`VrsMU%Y@_RYYBK_ zG>wbs^1ycWpIZGqQ)Y_^Fqe+@5ZIWmL|q+$-KiqhF%+Z%?$maaXhzbZmn4dA{}57S zuI4y9#Bwaw$zw^6)@!^Q3!P;PXFe?|H0PXuRduV3^5E<<>*PMF6(@#G3`^jVuWZZN z$D|gAx1*?nTs6Aho;l)J95j(teFJW?!w^rLx7xEpvlEUg9!;ibx5W3wy5*NKkMthr z+=ylld;%I`fN_{`$M+gcjuBf(`+f2@uK;eXw@_$xHtQpO7{h literal 0 HcmV?d00001 diff --git a/classgrape_1_1LocalIOAdaptor-members.html b/classgrape_1_1LocalIOAdaptor-members.html new file mode 100644 index 00000000..a47d403d --- /dev/null +++ b/classgrape_1_1LocalIOAdaptor-members.html @@ -0,0 +1,115 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::LocalIOAdaptor Member List
+
+
+ +

This is the complete list of members for grape::LocalIOAdaptor, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
buff (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorprivate
Close() override (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorvirtual
Configure(const std::string &key, const std::string &value) overridegrape::LocalIOAdaptorvirtual
enable_partial_read_ (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorprivate
file_ (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorprivate
FileLocation enum name (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorprivate
fs_ (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorprivate
index_ (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorprivate
IOAdaptorBase()=default (defined in grape::IOAdaptorBase)grape::IOAdaptorBase
IsExist() override (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorvirtual
kFileLocationBegin enum value (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorprivate
kFileLocationCurrent enum value (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorprivate
kFileLocationEnd enum value (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorprivate
LINE_SIZE (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorprivatestatic
LocalIOAdaptor(std::string location) (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorexplicit
location_ (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorprivate
MakeDirectory(const std::string &path) override (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorvirtual
Open() override (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorvirtual
Open(const char *mode) override (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorvirtual
partial_read_offset_ (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorprivate
Read(void *buffer, size_t size) override (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorvirtual
ReadArchive(OutArchive &archive) override (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorvirtual
ReadLine(std::string &line) override (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorvirtual
seek(int64_t offset, FileLocation seek_from) (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorprivate
SetPartialRead(int index, int total_parts) overridegrape::LocalIOAdaptorvirtual
setPartialReadImpl() (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorprivate
tell() (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorprivate
total_parts_ (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorprivate
using_std_getline_ (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorprivate
Write(void *buffer, size_t size) override (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorvirtual
WriteArchive(InArchive &archive) override (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptorvirtual
~IOAdaptorBase()=default (defined in grape::IOAdaptorBase)grape::IOAdaptorBasevirtual
~LocalIOAdaptor() override (defined in grape::LocalIOAdaptor)grape::LocalIOAdaptor
+ + + + diff --git a/classgrape_1_1LocalIOAdaptor.html b/classgrape_1_1LocalIOAdaptor.html new file mode 100644 index 00000000..856af411 --- /dev/null +++ b/classgrape_1_1LocalIOAdaptor.html @@ -0,0 +1,244 @@ + + + + + + + +libgrape-lite: grape::LocalIOAdaptor Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+ +
+ +

A default adaptor to read/write files from local locations. + More...

+ +

#include <local_io_adaptor.h>

+
+Inheritance diagram for grape::LocalIOAdaptor:
+
+
+ + +grape::IOAdaptorBase + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

LocalIOAdaptor (std::string location)
 
+void Open () override
 
+void Open (const char *mode) override
 
+void Close () override
 
+bool Configure (const std::string &key, const std::string &value) override
 Configure sub-class specific items. e.g., odps_access_key = abcd; oss_read_concurrency = 16; whether ReadLine for local location uses std::getline;.
 
bool SetPartialRead (int index, int total_parts) override
 Set each worker only scan related parts of the whole file. More...
 
+bool ReadLine (std::string &line) override
 
+bool ReadArchive (OutArchive &archive) override
 
+bool WriteArchive (InArchive &archive) override
 
+bool Read (void *buffer, size_t size) override
 
+bool Write (void *buffer, size_t size) override
 
+void MakeDirectory (const std::string &path) override
 
+bool IsExist () override
 
+ + + +

+Private Types

enum  FileLocation { kFileLocationBegin = 0 +, kFileLocationCurrent = 1 +, kFileLocationEnd = 2 + }
 
+ + + + + + + +

+Private Member Functions

+int64_t tell ()
 
+void seek (int64_t offset, FileLocation seek_from)
 
+bool setPartialReadImpl ()
 
+ + + + + + + + + + + + + + + + + + + +

+Private Attributes

+FILE * file_
 
+std::fstream fs_
 
+std::string location_
 
+bool using_std_getline_
 
+char buff [LINE_SIZE] {}
 
+bool enable_partial_read_
 
+std::vector< int64_t > partial_read_offset_
 
+int total_parts_
 
+int index_
 
+ + + +

+Static Private Attributes

+static constexpr size_t LINE_SIZE = 65535
 
+

Detailed Description

+

A default adaptor to read/write files from local locations.

+

Member Function Documentation

+ +

◆ SetPartialRead()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
bool grape::LocalIOAdaptor::SetPartialRead (int index,
int total_parts 
)
+
+overridevirtual
+
+ +

Set each worker only scan related parts of the whole file.

+

for local: read with offset, from a big file.

+ +

Implements grape::IOAdaptorBase.

+ +
+
+
+ + + + diff --git a/classgrape_1_1LocalIOAdaptor.png b/classgrape_1_1LocalIOAdaptor.png new file mode 100644 index 0000000000000000000000000000000000000000..4c2b2ad3f819822354ce8b27177638bf46980a77 GIT binary patch literal 682 zcmeAS@N?(olHy`uVBq!ia0vp^JwP15!3-q-Jj#s#QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;zt8UZRAO4o2H(NRX&EH=&#oUMP-Yhc6JGFD?*^b0B+21XhpJ=Vk{ruhF>U#Yv zPl_5YYW_Z`+Ebc!`$^Jq13T4qFJye;@4ng4wsW%KF}|!ct>(hnXQX`3JfAf)Q7-%0 zJGHeRU#Dx`3&}sd_U8B9vvWhuD!_=EQPR#zb@_vkQ^no2MwK8rlPd0l= z2u}3iR8|st*<#uE_=XF^e}{O6-5KgL*01l)C~LBe{I>8Wm)dSlg|I^mE?yE19-Pbq znu!cbsyq%$S{OT~7%)r}Vp9l0NWQFZ(Ofzu)`jtgGgRqb?$0T;=VC91$M-y&oGkEC zJVEP%#9v#9x1V0eO)ulS?X_Is*SWu|4YC$`a4p^Fdn5bK9rth9tA1_$`tm~U@tRY< zfjjh*4Uc?E{9W^%b58BKx3?LN-PBKfGb>i;uetJ!sHR%gwE0Oh^6U?+cs`d=`kQ{@ zGhd19WB$6^R*D|Fyi70gkJhnSkq28I_D=S*xprpP>@9EB-@l`+`#ISBs@az3KJ6Rt zUOBugkL%pbg + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T > Member List
+
+
+ +

This is the complete list of members for grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
_GetGid(fid_t fid, const internal_oid_t &oid, VID_T &gid) const (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >inline
_GetGid(const internal_oid_t &oid, VID_T &gid) const (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >inline
AddVertex(const OID_T &oid) (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >inlinevirtual
AddVertex(const OID_T &oid, VID_T &gid) (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >inlinevirtual
base_t typedef (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >private
comm_spec_ (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >private
Deserialize(const std::string &prefix, fid_t fid) (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >inline
deserialize(std::unique_ptr< IOADAPTOR_T > &reader) (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inline
GetCommSpec() const (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inline
GetFidFromGid(const VID_T &gid) const (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >inline
GetFidFromGid(const VID_T &gid) const (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inline
GetFragmentId(const OID_T &oid) const (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inline
GetFragmentNum() const (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inline
GetGid(fid_t fid, const OID_T &oid, VID_T &gid) const (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >inlinevirtual
GetGid(const OID_T &oid, VID_T &gid) const (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >inlinevirtual
GetInnerVertexSize(fid_t fid) const (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >inlinevirtual
GetLidFromGid(const VID_T &gid) const (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >inline
GetLidFromGid(const VID_T &gid) const (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inline
GetLocalBuilder() (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >inline
GetOid(const VID_T &gid, OID_T &oid) const (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >inlinevirtual
GetOid(fid_t fid, const VID_T &lid, OID_T &oid) const (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >inlinevirtual
GetPartitioner() const (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inline
GetPartitioner() (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inline
GetTotalVertexSize() const (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >inlinevirtual
gid_to_index_ (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >private
id_parser_ (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >private
Init() (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >inline
internal_oid_t typedef (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >private
Lid2Gid(fid_t fid, const VID_T &lid) const (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >inline
Lid2Gid(fid_t fid, const VID_T &lid) const (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inline
LocalVertexMap(const CommSpec &comm_spec) (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >inlineexplicit
LocalVertexMapBuilder (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >friend
MaxVertexNum() const (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inline
oid_t typedef (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >
oid_to_index_ (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >private
partitioner_ (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >private
partitioner_t typedef (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >
Serialize(const std::string &prefix) (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >inline
serialize(std::unique_ptr< IOADAPTOR_T > &writer) (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inline
SetPartitioner(const HashPartitioner< OID_T > &partitioner) (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inline
SetPartitioner(HashPartitioner< OID_T > &&partitioner) (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inline
UpdateToBalance(std::vector< VID_T > &vnum_list, std::vector< std::vector< VID_T >> &gid_maps) (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >inlinevirtual
VertexMapBase(const CommSpec &comm_spec) (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >inlineexplicit
vertices_num_ (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >private
vid_t typedef (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >
~LocalVertexMap()=default (defined in grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >
~VertexMapBase()=default (defined in grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >)grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >virtual
+ + + + diff --git a/classgrape_1_1LocalVertexMap.html b/classgrape_1_1LocalVertexMap.html new file mode 100644 index 00000000..90c8be81 --- /dev/null +++ b/classgrape_1_1LocalVertexMap.html @@ -0,0 +1,260 @@ + + + + + + + +libgrape-lite: grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T > Class Template Reference
+
+
+
+Inheritance diagram for grape::LocalVertexMap< OID_T, VID_T, PARTITIONER_T >:
+
+
+ + +grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

LocalVertexMap (const CommSpec &comm_spec)
 
+void Init ()
 
+size_t GetTotalVertexSize () const
 
+size_t GetInnerVertexSize (fid_t fid) const
 
+void AddVertex (const OID_T &oid)
 
+bool AddVertex (const OID_T &oid, VID_T &gid)
 
+bool GetOid (const VID_T &gid, OID_T &oid) const
 
+bool GetOid (fid_t fid, const VID_T &lid, OID_T &oid) const
 
+bool GetGid (fid_t fid, const OID_T &oid, VID_T &gid) const
 
+bool _GetGid (fid_t fid, const internal_oid_t &oid, VID_T &gid) const
 
+bool GetGid (const OID_T &oid, VID_T &gid) const
 
+bool _GetGid (const internal_oid_t &oid, VID_T &gid) const
 
+LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T > GetLocalBuilder ()
 
+template<typename IOADAPTOR_T >
void Serialize (const std::string &prefix)
 
+template<typename IOADAPTOR_T >
void Deserialize (const std::string &prefix, fid_t fid)
 
+void UpdateToBalance (std::vector< VID_T > &vnum_list, std::vector< std::vector< VID_T >> &gid_maps)
 
+VID_T Lid2Gid (fid_t fid, const VID_T &lid) const
 
+fid_t GetFidFromGid (const VID_T &gid) const
 
+VID_T GetLidFromGid (const VID_T &gid) const
 
- Public Member Functions inherited from grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >
VertexMapBase (const CommSpec &comm_spec)
 
+void SetPartitioner (const HashPartitioner< OID_T > &partitioner)
 
+void SetPartitioner (HashPartitioner< OID_T > &&partitioner)
 
+fid_t GetFragmentNum () const
 
+VID_T Lid2Gid (fid_t fid, const VID_T &lid) const
 
+fid_t GetFidFromGid (const VID_T &gid) const
 
+VID_T GetLidFromGid (const VID_T &gid) const
 
+VID_T MaxVertexNum () const
 
+const CommSpecGetCommSpec () const
 
+void serialize (std::unique_ptr< IOADAPTOR_T > &writer)
 
+void deserialize (std::unique_ptr< IOADAPTOR_T > &reader)
 
+fid_t GetFragmentId (const OID_T &oid) const
 
+const HashPartitioner< OID_T > & GetPartitioner () const
 
+HashPartitioner< OID_T > & GetPartitioner ()
 
+ + + + + +

+Private Types

+using base_t = VertexMapBase< OID_T, VID_T, PARTITIONER_T >
 
+using internal_oid_t = typename InternalOID< OID_T >::type
 
+ + + + + + + + + + + + + +

+Private Attributes

+std::vector< IdIndexer< internal_oid_t, VID_T > > oid_to_index_
 
+std::vector< IdIndexer< VID_T, VID_T > > gid_to_index_
 
+std::vector< VID_T > vertices_num_
 
+CommSpec comm_spec_
 
+IdParser< VID_T > id_parser_
 
+PARTITIONER_T partitioner_
 
+ + + + +

+Friends

+template<typename _OID_T , typename _VID_T , typename _PARTITIONER_T >
class LocalVertexMapBuilder
 
+ + + + + + + + + + + + + + + +

+Additional Inherited Members

- Public Types inherited from grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >
+using partitioner_t = HashPartitioner< OID_T >
 
+using oid_t = OID_T
 
+using vid_t = VID_T
 
- Protected Attributes inherited from grape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >
+CommSpec comm_spec_
 
+HashPartitioner< OID_T > partitioner_
 
+IdParser< VID_T > id_parser_
 
+
+ + + + diff --git a/classgrape_1_1LocalVertexMap.png b/classgrape_1_1LocalVertexMap.png new file mode 100644 index 0000000000000000000000000000000000000000..b8e759a5bb42704aa2539b23daabc60d650cf208 GIT binary patch literal 1328 zcmeAS@N?(olHy`uVBq!ia0y~yV4MhK2XHV0$@exp4ge{M0G|-o|Ns93nJ?aaE$u%v z0muU50|ySUcHWT(ayd$Z{DK*Pia_A%sSqOu2A2JvE{-7;jBn>&oHW~j$CZEj%)kHr z^Mnkhlf zb*Q*rid34s)2#V#vGux_Kh-_uLwV$%l#&yy$E5Y3= zrn}ltWL*`OESj{$ZFb_x*54$`*=hfA_mApMVx6fTYP}RLhv)o+hqae>>-SmB0rnSqet6y)h`?R_II%^QK?{>VeOzVjQ zQ}siRUA}5u)aoJL$ou4jh=ee(xpBc>j{rBCAm-{x} zeW@JYIpfNl{=dQUm3+5Wef4^i6yd-8Hp}bNmzcZ@Ke_B#y_P|5@wxpfpKtT*UiI>u z%k&rg+ty`m-F+c!ZB$A4>QBA#H#4ebI%6l5g>?2cvS+Qz-L-0Rp0_5ijjBC7Wy$&%^0yXG`eOcc)ijl*Dlhf5Iz56^P-9)r z#xnQJ7FyC&cL>qbk_oP{rV>!jL${g&|3^lEEcNh_Pdd z3X^~*P|>7G91cL!8a%v|7=THLK}oZd8VWA`cTSnLOw-i&vWSZhgJy#OhVknKE1y66 zm{)mMV(a}W&-oR7`}aTEcIUcz-GMXzFK)A2H(!_e=!cK_yFUlch}c!RE0f`#rr5+u zoDH$Ll^S_-cmBU7XqmJ-?#`;=^iH;>M;}rxvuhEH;hb z=D@ylf-k!-Dg-{3de-&%#08Ocj(c}kx#?~r}y>msJg#)U;H_RgYgQN?)^!VuiUjU^!3-1Q3cs+4WAz0bL)++aqyby@9!uY zx!yU$a%KL?@3Cj!`8)Z3V831Lk|T2Lf5#t2p64Asw^a}P-DP!o=KH#QQwI6cJ^d|e zo8Fw?*246~Dw(?=@T>_#d&!EduXlwWn2Y56XS%aCIh0$0wO~JbQhDhJi(}_{hPju6 WsyI#_ISee`7(8A5T-G@yGywqD8)rWN literal 0 HcmV?d00001 diff --git a/classgrape_1_1LocalVertexMapBuilder-members.html b/classgrape_1_1LocalVertexMapBuilder-members.html new file mode 100644 index 00000000..35b9dc99 --- /dev/null +++ b/classgrape_1_1LocalVertexMapBuilder-members.html @@ -0,0 +1,94 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T > Member List
+
+
+ +

This is the complete list of members for grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >, including all inherited members.

+ + + + + + + + + + + + + +
add_local_vertex(const internal_oid_t &id, VID_T &gid) (defined in grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >inline
add_vertex(const internal_oid_t &id) (defined in grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >inline
fid_ (defined in grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >private
finish(LocalVertexMap< OID_T, VID_T, PARTITIONER_T > &vertex_map) (defined in grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >inline
gid_to_index_ (defined in grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >private
id_parser_ (defined in grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >private
internal_oid_t typedef (defined in grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >private
LocalVertexMap (defined in grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >friend
LocalVertexMapBuilder(fid_t fid, std::vector< IdIndexer< internal_oid_t, VID_T >> &oid_to_index, std::vector< IdIndexer< VID_T, VID_T >> &gid_to_index, const PARTITIONER_T &partitioner, const IdParser< VID_T > &id_parser) (defined in grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >inlineprivate
oid_to_index_ (defined in grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >private
partitioner_ (defined in grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >private
~LocalVertexMapBuilder() (defined in grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >)grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >inline
+ + + + diff --git a/classgrape_1_1LocalVertexMapBuilder.html b/classgrape_1_1LocalVertexMapBuilder.html new file mode 100644 index 00000000..f7f050c7 --- /dev/null +++ b/classgrape_1_1LocalVertexMapBuilder.html @@ -0,0 +1,136 @@ + + + + + + + +libgrape-lite: grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T > Class Template Reference
+
+
+ + + + + + + + +

+Public Member Functions

+void add_local_vertex (const internal_oid_t &id, VID_T &gid)
 
+void add_vertex (const internal_oid_t &id)
 
+void finish (LocalVertexMap< OID_T, VID_T, PARTITIONER_T > &vertex_map)
 
+ + + +

+Private Types

+using internal_oid_t = typename InternalOID< OID_T >::type
 
+ + + +

+Private Member Functions

LocalVertexMapBuilder (fid_t fid, std::vector< IdIndexer< internal_oid_t, VID_T >> &oid_to_index, std::vector< IdIndexer< VID_T, VID_T >> &gid_to_index, const PARTITIONER_T &partitioner, const IdParser< VID_T > &id_parser)
 
+ + + + + + + + + + + +

+Private Attributes

+fid_t fid_
 
+std::vector< IdIndexer< internal_oid_t, VID_T > > & oid_to_index_
 
+std::vector< IdIndexer< VID_T, VID_T > > & gid_to_index_
 
+const PARTITIONER_T & partitioner_
 
+const IdParser< VID_T > id_parser_
 
+ + + + +

+Friends

+template<typename _OID_T , typename _VID_T , typename _PARTITIONER_T >
class LocalVertexMap
 
+
+ + + + diff --git a/classgrape_1_1MessageBufferPool-members.html b/classgrape_1_1MessageBufferPool-members.html new file mode 100644 index 00000000..23ee51ce --- /dev/null +++ b/classgrape_1_1MessageBufferPool-members.html @@ -0,0 +1,97 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::MessageBufferPool Member List
+
+
+ +

This is the complete list of members for grape::MessageBufferPool, including all inherited members.

+ + + + + + + + + + + + + + + + +
chunk_size() const (defined in grape::MessageBufferPool)grape::MessageBufferPoolinline
chunk_size_ (defined in grape::MessageBufferPool)grape::MessageBufferPoolprivate
extra_used_size_ (defined in grape::MessageBufferPool)grape::MessageBufferPoolprivate
give(MessageBuffer &&buf) (defined in grape::MessageBufferPool)grape::MessageBufferPoolinline
init(size_t size, size_t chunk) (defined in grape::MessageBufferPool)grape::MessageBufferPoolinline
init_size_ (defined in grape::MessageBufferPool)grape::MessageBufferPoolprivate
lock_ (defined in grape::MessageBufferPool)grape::MessageBufferPoolprivate
MessageBufferPool() (defined in grape::MessageBufferPool)grape::MessageBufferPoolinline
peak_extra_used_size_ (defined in grape::MessageBufferPool)grape::MessageBufferPoolprivate
peak_used_size_ (defined in grape::MessageBufferPool)grape::MessageBufferPoolprivate
que_ (defined in grape::MessageBufferPool)grape::MessageBufferPoolprivate
take(size_t expect_chunk) (defined in grape::MessageBufferPool)grape::MessageBufferPoolinline
take_default() (defined in grape::MessageBufferPool)grape::MessageBufferPoolinline
used_size_ (defined in grape::MessageBufferPool)grape::MessageBufferPoolprivate
~MessageBufferPool() (defined in grape::MessageBufferPool)grape::MessageBufferPoolinline
+ + + + diff --git a/classgrape_1_1MessageBufferPool.html b/classgrape_1_1MessageBufferPool.html new file mode 100644 index 00000000..ea4293b0 --- /dev/null +++ b/classgrape_1_1MessageBufferPool.html @@ -0,0 +1,129 @@ + + + + + + + +libgrape-lite: grape::MessageBufferPool Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::MessageBufferPool Class Reference
+
+
+ + + + + + + + + + + + +

+Public Member Functions

+void init (size_t size, size_t chunk)
 
+MessageBuffer take (size_t expect_chunk)
 
+MessageBuffer take_default ()
 
+void give (MessageBuffer &&buf)
 
+size_t chunk_size () const
 
+ + + + + + + + + + + + + + + + + +

+Private Attributes

+SpinLock lock_
 
+std::deque< MessageBufferque_
 
+size_t init_size_
 
+size_t chunk_size_
 
+size_t used_size_
 
+size_t peak_used_size_
 
+size_t extra_used_size_
 
+size_t peak_extra_used_size_
 
+
+ + + + diff --git a/classgrape_1_1MessageInBuffer-members.html b/classgrape_1_1MessageInBuffer-members.html new file mode 100644 index 00000000..cd6038de --- /dev/null +++ b/classgrape_1_1MessageInBuffer-members.html @@ -0,0 +1,89 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::MessageInBuffer Member List
+
+
+ +

This is the complete list of members for grape::MessageInBuffer, including all inherited members.

+ + + + + + + + +
arc_ (defined in grape::MessageInBuffer)grape::MessageInBufferprivate
GetMessage(MESSAGE_T &msg) (defined in grape::MessageInBuffer)grape::MessageInBufferinline
GetMessage(const GRAPH_T &frag, typename GRAPH_T::vertex_t &v, MESSAGE_T &msg) (defined in grape::MessageInBuffer)grape::MessageInBufferinline
Init(OutArchive &&arc) (defined in grape::MessageInBuffer)grape::MessageInBufferinline
Init(const MicroBuffer &buf) (defined in grape::MessageInBuffer)grape::MessageInBufferinline
MessageInBuffer() (defined in grape::MessageInBuffer)grape::MessageInBufferinline
MessageInBuffer(OutArchive &&arc) (defined in grape::MessageInBuffer)grape::MessageInBufferinlineexplicit
+ + + + diff --git a/classgrape_1_1MessageInBuffer.html b/classgrape_1_1MessageInBuffer.html new file mode 100644 index 00000000..89c91dd6 --- /dev/null +++ b/classgrape_1_1MessageInBuffer.html @@ -0,0 +1,117 @@ + + + + + + + +libgrape-lite: grape::MessageInBuffer Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::MessageInBuffer Class Reference
+
+
+ +

MessageInBuffer holds a grape::OutArchive, which contains a bunch of messages. Used By JavaParallelMessageManager to process messages in a parallel manner. + More...

+ +

#include <message_in_buffer.h>

+ + + + + + + + + + + + + + +

+Public Member Functions

MessageInBuffer (OutArchive &&arc)
 
+void Init (OutArchive &&arc)
 
+void Init (const MicroBuffer &buf)
 
+template<typename MESSAGE_T >
bool GetMessage (MESSAGE_T &msg)
 
+template<typename GRAPH_T , typename MESSAGE_T >
bool GetMessage (const GRAPH_T &frag, typename GRAPH_T::vertex_t &v, MESSAGE_T &msg)
 
+ + + +

+Private Attributes

+OutArchive arc_
 
+

Detailed Description

+

MessageInBuffer holds a grape::OutArchive, which contains a bunch of messages. Used By JavaParallelMessageManager to process messages in a parallel manner.

+
+ + + + diff --git a/classgrape_1_1MessageManagerBase-members.html b/classgrape_1_1MessageManagerBase-members.html new file mode 100644 index 00000000..62d0d58a --- /dev/null +++ b/classgrape_1_1MessageManagerBase-members.html @@ -0,0 +1,94 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::MessageManagerBase Member List
+
+
+ +

This is the complete list of members for grape::MessageManagerBase, including all inherited members.

+ + + + + + + + + + + + + +
Finalize()=0grape::MessageManagerBasepure virtual
FinishARound()=0grape::MessageManagerBasepure virtual
ForceContinue()=0grape::MessageManagerBasepure virtual
ForceTerminate(const std::string &info="")=0grape::MessageManagerBasepure virtual
GetMsgSize() const =0grape::MessageManagerBasepure virtual
GetTerminateInfo() const =0grape::MessageManagerBasepure virtual
Init(MPI_Comm comm)=0grape::MessageManagerBasepure virtual
MessageManagerBase() (defined in grape::MessageManagerBase)grape::MessageManagerBaseinline
Start()=0grape::MessageManagerBasepure virtual
StartARound()=0grape::MessageManagerBasepure virtual
ToTerminate()=0grape::MessageManagerBasepure virtual
~MessageManagerBase() (defined in grape::MessageManagerBase)grape::MessageManagerBaseinlinevirtual
+ + + + diff --git a/classgrape_1_1MessageManagerBase.html b/classgrape_1_1MessageManagerBase.html new file mode 100644 index 00000000..ea89bbf2 --- /dev/null +++ b/classgrape_1_1MessageManagerBase.html @@ -0,0 +1,334 @@ + + + + + + + +libgrape-lite: grape::MessageManagerBase Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::MessageManagerBase Class Referenceabstract
+
+
+ +

MessageManagerBase is the base class for message managers. + More...

+ +

#include <message_manager_base.h>

+
+Inheritance diagram for grape::MessageManagerBase:
+
+
+ + +grape::BatchShuffleMessageManager +grape::DefaultMessageManager +grape::ParallelMessageManager +grape::ParallelMessageManagerOpt +grape::AutoParallelMessageManager< FRAG_T > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

virtual void Init (MPI_Comm comm)=0
 Initialize message manager. More...
 
+virtual void Start ()=0
 This function will be called before Init step of applications.
 
+virtual void StartARound ()=0
 This function will be called before each evaluation step of applications.
 
+virtual void FinishARound ()=0
 This function will be called after each evaluation step of applications.
 
+virtual void Finalize ()=0
 This function will be called after the evaluation of applications.
 
virtual bool ToTerminate ()=0
 This function will be called by worker after a step to determine whether evaluation is terminated. More...
 
virtual size_t GetMsgSize () const =0
 Get size of messages sent by this message manager instance. The return value is valid only after FinishARound is called. StartARound will reset the value to zero. More...
 
virtual void ForceContinue ()=0
 Force continue to evaluate one more round even if all workers stop sending message. More...
 
virtual void ForceTerminate (const std::string &info="")=0
 Force all workers terminate after this round of evaluation. More...
 
virtual const TerminateInfoGetTerminateInfo () const =0
 This function is called to get gathered termination info after evaluation finished. More...
 
+

Detailed Description

+

MessageManagerBase is the base class for message managers.

+
Note
: The pure virtual functions in the class work as interfaces, instructing sub-classes to implement. The override functions in the derived classes would be invoked directly, not via virtual functions.
+

Member Function Documentation

+ +

◆ ForceContinue()

+ +
+
+ + + + + +
+ + + + + + + +
virtual void grape::MessageManagerBase::ForceContinue ()
+
+pure virtual
+
+ +

Force continue to evaluate one more round even if all workers stop sending message.

+

This function can be called by applications.

+ +

Implemented in grape::ParallelMessageManagerOpt, grape::ParallelMessageManager, grape::DefaultMessageManager, grape::BatchShuffleMessageManager, and grape::AutoParallelMessageManager< FRAG_T >.

+ +
+
+ +

◆ ForceTerminate()

+ +
+
+ + + + + +
+ + + + + + + + +
virtual void grape::MessageManagerBase::ForceTerminate (const std::string & info = "")
+
+pure virtual
+
+ +

Force all workers terminate after this round of evaluation.

+

This function can be called by applications.

Parameters
+ + +
infoTermination info.
+
+
+ +

Implemented in grape::ParallelMessageManagerOpt, grape::ParallelMessageManager, grape::DefaultMessageManager, and grape::BatchShuffleMessageManager.

+ +
+
+ +

◆ GetMsgSize()

+ +
+
+ + + + + +
+ + + + + + + +
virtual size_t grape::MessageManagerBase::GetMsgSize () const
+
+pure virtual
+
+ +

Get size of messages sent by this message manager instance. The return value is valid only after FinishARound is called. StartARound will reset the value to zero.

+
Returns
Size of messages sent by this message manager instance.
+ +

Implemented in grape::ParallelMessageManagerOpt, grape::ParallelMessageManager, grape::DefaultMessageManager, and grape::BatchShuffleMessageManager.

+ +
+
+ +

◆ GetTerminateInfo()

+ +
+
+ + + + + +
+ + + + + + + +
virtual const TerminateInfo& grape::MessageManagerBase::GetTerminateInfo () const
+
+pure virtual
+
+ +

This function is called to get gathered termination info after evaluation finished.

+
Returns
Termination info.
+ +

Implemented in grape::ParallelMessageManagerOpt, grape::ParallelMessageManager, grape::DefaultMessageManager, and grape::BatchShuffleMessageManager.

+ +
+
+ +

◆ Init()

+ +
+
+ + + + + +
+ + + + + + + + +
virtual void grape::MessageManagerBase::Init (MPI_Comm comm)
+
+pure virtual
+
+ +

Initialize message manager.

+
Parameters
+ + +
commMPI_Comm object.
+
+
+ +

Implemented in grape::ParallelMessageManagerOpt, grape::ParallelMessageManager, grape::DefaultMessageManager, and grape::BatchShuffleMessageManager.

+ +
+
+ +

◆ ToTerminate()

+ +
+
+ + + + + +
+ + + + + + + +
virtual bool grape::MessageManagerBase::ToTerminate ()
+
+pure virtual
+
+ +

This function will be called by worker after a step to determine whether evaluation is terminated.

+
Returns
Whether evaluation is terminated.
+ +

Implemented in grape::ParallelMessageManagerOpt, grape::ParallelMessageManager, grape::DefaultMessageManager, grape::BatchShuffleMessageManager, and grape::AutoParallelMessageManager< FRAG_T >.

+ +
+
+
+ + + + diff --git a/classgrape_1_1MessageManagerBase.png b/classgrape_1_1MessageManagerBase.png new file mode 100644 index 0000000000000000000000000000000000000000..71f308d6ba916047d34aea56f4f9ba032db8605f GIT binary patch literal 3032 zcmcImdr(tX8mFr)6_joTM4`a0jexIW)u;u5r4=wd5(I?;AwfY=LWoo(1QKYO4z8t$ zTyU`QxnckUm?|0949^d2q ze&4wsg!SEGYGZ0-WV8iy@u&(rSH2aSx(;xH$?PN%-39FvDu^!{mMf9bjXVqJb- zvF%M~)P;?GVdkTo{`J-UY?ju{IP=-W|OxW1iIC7;@ z0D=|aIB<8LR&o#z)qj`h-`IL#S zslHA4cv4D^Lp_#cW@^e==&;g;hgM}D3+>TLXfuzan#s#+ikjJR-fr=?t@KuEP8s!( zC9rf#2BUXpV=m!cGU_>w)V5EOlDp@Z)N86`VGe?+Jad?wntX9RI zJ>hdr)w|(tzbGp!i@C<-n5#v_$-KbkD4h*OhC2$+M-g*<#5GJe^_NbMIY^*92?N(o z#n4q;U8926EE&|kURso$;R}ncCtm&}X_=l4H+pYysIcZWbWkW--z!%molgOGUU|pTe$0v~EJZ zwv+_o=GD%Jfz##DvWUnaa9pk+J~t-&kQ;p}=B?B+X`EwYf%E}Mj&}Kc==NKQ zO>4jR>qevxNMPA*Xva4avh0IDZmaZO()R4LapT!%w=Y!Ewsaf-<^dV(+HqjBd?vXmDx6K*)s@EEixH5>ySnbRhGOanYClL*90t`2 zMShSsgZX9#nhgfSw@^9D5pQP@Fm>Z{lKl1TAyJDq+1115%Id;k=>(>ZZ&8KnGHqLm z;LW)?7D$^IDELP@6u=Sp$Q@ZUY`vRXfPyH4I|?rxO4~P)85FtL^J;FIPIv9QlAoLH z;F)nN1?qKA@`Gw$m%!*1UoPWz2wAzi3{{}CCduX0^$T9Aqd#O4BAfj$Y0)@{eLOgF zX3+IWkF2BA!=B<sDrGr_x@aat1Y3ZGCRy(t{<>W9MhRpx6iE-+VjI^E`NlIsA11p-lx`~&aSH_5=oQ4J#=!DF}m4icAiaNOtQ}_HUk*nvw zE2BPgVB<1bDs53kyX4xP%_WQvbXR&=o@=j0Lt1yN{iZW_3D15{T7R=wHHSGkLbxfs z!XBMZl2uSkh6ibDPYZoubcV7ZHn%fg{$jn`_2~foiPNE`8?M$X5*Xb&pd6_Pxu6Rm zj)BCao+2~5XZY>uIt#@f#6mQz`B{F%ww3$W#r$Dhyc~Bwc`+KQRVR?`Vj7a==tBP= zh}WJC3C5hth{_K-rmK#c9`4NDHGe52?bNv9j$NIPN!SkE}a`A4(dE1X(XG)tXx$+UZcV= z%>&~&nnNOe%#z-;Ro7EGueW^9Sr7JWi-;_!JFd)gm6eE!d6cwO4ySeb!d5kJgh-I~ zr0?poae2t}oom(wNpxGOg*d2dp;#1Q7Y21OOHd0XhN}Lb{R3v6Eq-RX zQN1p!qn18TnmI0AdV1`kR;B2Yb-0M}i7741=dn~=BY$yxO3Y&Vs%_nelGiItM*I=` z{NppC@WP2A>*?jo1##k}bA2*RTu9T<&(&0iZdJahX^pCF&nZQ*XNOUDOXmFJNfoOZ zA0iR*rjh5H)-uj{cFQSM^FzrF519VdGY>eb-rX3$lv80Y9sB22n8*>gmcj#aPT)D5 zOtToWEQD`$oXyDLk>vb4kaTZeZblNB42fM{7R1)Id_P%F8#{tgXu0cjKOL6?Nj+cf z0tnN+ug4=m7lE`FvrPlP#Ulbc-G(}*J(r3wRkw70P~lU+#U~wCN*YE> z45RY|g0sPP1+L2v&m_jn8y3&>?CN@EQAHm~t0GqI1n8^c$3*ORyu^cP0;YIKK*s1DD8j;5 z6ASw6n^buV&}WGOH*h9AoZSrG?29AkmY=51Ocqjna1p9Ra_+7jWFf_eJf^=^M3G2! zH>wziBYKDeL1$k=zvj~(7~R%0uLA6&Nu{zn(`=6RCw)_hz8n!-w83C+i^%mO zl^f&mo-a#8HhB$={TkPbNt>wE(~iV(hMr~`Gcve?-UZjAa%O5oP54UvZLK*ZvSO#r z;=t8YICFls9n_2O%w2FIjhn)LicQR>*RQLbcDz6!s@*fF&^@>2Y8)GvEga+fPIUd`l&$l~xP{(!ngpwHmHOl}1 literal 0 HcmV?d00001 diff --git a/classgrape_1_1MutableCSR.html b/classgrape_1_1MutableCSR.html new file mode 100644 index 00000000..dec11d6a --- /dev/null +++ b/classgrape_1_1MutableCSR.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: grape::MutableCSR< VID_T, NBR_T > Class Template Reference + + + + + + + + + + +
+
+
grape::MutableCSR< VID_T, NBR_T > Class Template Reference
+
+
+
+ + + + diff --git a/classgrape_1_1MutableCSRBuilder.html b/classgrape_1_1MutableCSRBuilder.html new file mode 100644 index 00000000..00cf6c32 --- /dev/null +++ b/classgrape_1_1MutableCSRBuilder.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: grape::MutableCSRBuilder< VID_T, NBR_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::MutableCSRBuilder< VID_T, NBR_T > Class Template Reference
+
+
+
+ + + + diff --git a/classgrape_1_1MutableCSRBuilder_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4-members.html b/classgrape_1_1MutableCSRBuilder_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4-members.html new file mode 100644 index 00000000..24231ef3 --- /dev/null +++ b/classgrape_1_1MutableCSRBuilder_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4-members.html @@ -0,0 +1,104 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > > Member List
+
+
+ +

This is the complete list of members for grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + +
add_edge(VID_T src, const nbr_t &nbr) (defined in grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >inline
adj_list_t typedef (defined in grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >private
adj_lists_ (defined in grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >private
buffer_ (defined in grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >private
build_offsets() (defined in grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >inline
capacity_ (defined in grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >private
degree_ (defined in grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >private
finish(MutableCSR< VID_T, Nbr< VID_T, EDATA_T >> &ret) (defined in grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >inline
inc_degree(VID_T i) (defined in grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >inline
init(VID_T vnum) (defined in grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >inline
init(const vertex_range_t &range) (defined in grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >inline
iter_ (defined in grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >private
MutableCSRBuilder() (defined in grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >inline
nbr_t typedef (defined in grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >private
relax_rate (defined in grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >privatestatic
resize(VID_T vnum) (defined in grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >inline
sort(const FUNC_T &func) (defined in grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >inline
vertex_num() const (defined in grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >inline
vertex_range_t typedef (defined in grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >
vid_t typedef (defined in grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >private
vnum_ (defined in grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >private
~MutableCSRBuilder() (defined in grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >inline
+ + + + diff --git a/classgrape_1_1MutableCSRBuilder_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4.html b/classgrape_1_1MutableCSRBuilder_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4.html new file mode 100644 index 00000000..7e8035e6 --- /dev/null +++ b/classgrape_1_1MutableCSRBuilder_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4.html @@ -0,0 +1,163 @@ + + + + + + + +libgrape-lite: grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > > Class Template Reference
+
+
+ + + + +

+Public Types

+using vertex_range_t = VertexRange< VID_T >
 
+ + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+void init (VID_T vnum)
 
+void init (const vertex_range_t &range)
 
+void inc_degree (VID_T i)
 
+void resize (VID_T vnum)
 
+VID_T vertex_num () const
 
+void build_offsets ()
 
+void add_edge (VID_T src, const nbr_t &nbr)
 
+template<typename FUNC_T >
void sort (const FUNC_T &func)
 
+void finish (MutableCSR< VID_T, Nbr< VID_T, EDATA_T >> &ret)
 
+ + + + + + + +

+Private Types

+using vid_t = VID_T
 
+using nbr_t = Nbr< vid_t, EDATA_T >
 
+using adj_list_t = mutable_csr_impl::AdjList< nbr_t >
 
+ + + + + + + + + + + + + +

+Private Attributes

+VID_T vnum_
 
+std::vector< int > capacity_
 
+std::vector< adj_list_tadj_lists_
 
+std::vector< nbr_t * > iter_
 
+std::vector< int > degree_
 
+mutable_csr_impl::Blob< vid_t, nbr_tbuffer_
 
+ + + +

+Static Private Attributes

+static constexpr double relax_rate = 1.5
 
+
+ + + + diff --git a/classgrape_1_1MutableCSR_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4-members.html b/classgrape_1_1MutableCSR_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4-members.html new file mode 100644 index 00000000..65dd3b6b --- /dev/null +++ b/classgrape_1_1MutableCSR_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4-members.html @@ -0,0 +1,132 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > > Member List
+
+
+ +

This is the complete list of members for grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
adj_list_t typedef (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >private
adj_lists_ (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >private
binary_find(VID_T i, VID_T nbr) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
binary_find(VID_T i, VID_T nbr) const (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
buffers_ (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >private
capacity_ (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >private
clear_edges() (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
dedup_neighbors(vid_t i) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
dedup_neighbors_dense(const std::vector< int > &degree_to_add) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
dedup_neighbors_sparse(const std::map< vid_t, int > &degree_to_add) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
degree(VID_T i) const (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
Deserialize(std::unique_ptr< IOADAPTOR_T > &reader) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
edge_num() const (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
empty() const (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
find(VID_T i, VID_T nbr) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
find(VID_T i, VID_T nbr) const (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
get_begin(VID_T i) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
get_begin(VID_T i) const (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
get_end(VID_T i) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
get_end(VID_T i) const (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
is_empty(VID_T i) const (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
MutableCSR() (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
MutableCSRBuilder (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >friend
nbr_t typedef (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >private
next_ (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >private
prev_ (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >private
put_edge(vid_t src, const nbr_t &value) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
put_edge(vid_t src, nbr_t &&value) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
relax_rate (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >privatestatic
remove_if(const FUNC_T &func) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
remove_node(vid_t i) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inlineprivate
remove_one_with_tomb(vid_t src, vid_t dst) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
remove_one_with_tomb_if(const FUNC_T &func) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
remove_tombs(vid_t i) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
remove_vertex(vid_t i) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
remove_with_tomb(vid_t src, vid_t dst) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
remove_with_tomb_if(const FUNC_T &func) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
reserve_edges_dense(const std::vector< int > &degree_to_add) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
reserve_edges_sparse(const std::map< vid_t, int > &degree_to_add) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
reserve_vertices(vid_t vnum) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
Serialize(std::unique_ptr< IOADAPTOR_T > &writer) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
shrink(vid_t i, size_t delta) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
sort_neighbors(vid_t i) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
sort_neighbors_dense(const std::vector< int > &degree_to_add) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
sort_neighbors_sparse(const std::map< vid_t, int > &degree_to_add) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
update(vid_t src, vid_t dst, const EDATA_T &value) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
update_one(vid_t src, vid_t dst, const EDATA_T &value) (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
vertex_num() const (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
vid_t typedef (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >private
~MutableCSR() (defined in grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >)grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >inline
+ + + + diff --git a/classgrape_1_1MutableCSR_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4.html b/classgrape_1_1MutableCSR_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4.html new file mode 100644 index 00000000..88ef6b63 --- /dev/null +++ b/classgrape_1_1MutableCSR_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4.html @@ -0,0 +1,256 @@ + + + + + + + +libgrape-lite: grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > > Class Template Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+VID_T vertex_num () const
 
+bool empty () const
 
+size_t edge_num () const
 
+int degree (VID_T i) const
 
+bool is_empty (VID_T i) const
 
+nbr_tget_begin (VID_T i)
 
+const nbr_tget_begin (VID_T i) const
 
+nbr_tget_end (VID_T i)
 
+const nbr_tget_end (VID_T i) const
 
+nbr_tfind (VID_T i, VID_T nbr)
 
+const nbr_tfind (VID_T i, VID_T nbr) const
 
+nbr_tbinary_find (VID_T i, VID_T nbr)
 
+const nbr_tbinary_find (VID_T i, VID_T nbr) const
 
+void reserve_vertices (vid_t vnum)
 
+void reserve_edges_dense (const std::vector< int > &degree_to_add)
 
+void reserve_edges_sparse (const std::map< vid_t, int > &degree_to_add)
 
+nbr_tput_edge (vid_t src, const nbr_t &value)
 
+nbr_tput_edge (vid_t src, nbr_t &&value)
 
+void dedup_neighbors (vid_t i)
 
+void sort_neighbors (vid_t i)
 
+void dedup_neighbors_dense (const std::vector< int > &degree_to_add)
 
+void dedup_neighbors_sparse (const std::map< vid_t, int > &degree_to_add)
 
+void sort_neighbors_dense (const std::vector< int > &degree_to_add)
 
+void sort_neighbors_sparse (const std::map< vid_t, int > &degree_to_add)
 
+bool remove_one_with_tomb (vid_t src, vid_t dst)
 
+bool remove_with_tomb (vid_t src, vid_t dst)
 
+void remove_vertex (vid_t i)
 
+void shrink (vid_t i, size_t delta)
 
+void update_one (vid_t src, vid_t dst, const EDATA_T &value)
 
+void update (vid_t src, vid_t dst, const EDATA_T &value)
 
+template<typename FUNC_T >
bool remove_one_with_tomb_if (const FUNC_T &func)
 
+template<typename FUNC_T >
vid_t remove_with_tomb_if (const FUNC_T &func)
 
+template<typename FUNC_T >
void remove_if (const FUNC_T &func)
 
+void remove_tombs (vid_t i)
 
+void clear_edges ()
 
+template<typename IOADAPTOR_T >
void Serialize (std::unique_ptr< IOADAPTOR_T > &writer)
 
+template<typename IOADAPTOR_T >
void Deserialize (std::unique_ptr< IOADAPTOR_T > &reader)
 
+ + + + + + + +

+Private Types

+using vid_t = VID_T
 
+using nbr_t = Nbr< VID_T, EDATA_T >
 
+using adj_list_t = mutable_csr_impl::AdjList< nbr_t >
 
+ + + +

+Private Member Functions

+void remove_node (vid_t i)
 
+ + + + + + + + + + + +

+Private Attributes

+std::vector< int > capacity_
 
+std::vector< vid_t > prev_
 
+std::vector< vid_t > next_
 
+std::vector< adj_list_tadj_lists_
 
+std::vector< mutable_csr_impl::Blob< vid_t, nbr_t > > buffers_
 
+ + + +

+Static Private Attributes

+static constexpr double relax_rate = 1.5
 
+ + + + +

+Friends

+template<typename _VID_T , typename _NBR_T >
class MutableCSRBuilder
 
+
+ + + + diff --git a/classgrape_1_1MutableEdgecutFragment-members.html b/classgrape_1_1MutableEdgecutFragment-members.html new file mode 100644 index 00000000..631cf099 --- /dev/null +++ b/classgrape_1_1MutableEdgecutFragment-members.html @@ -0,0 +1,162 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T > Member List
+
+
+ +

This is the complete list of members for grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
adj_list_t typedef (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
base_t typedef (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
buildCSR(const typename csr_builder_t::vertex_range_t &vertex_range, std::vector< Edge< VID_T, EDATA_T >> &edges, LoadStrategy load_strategy) (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
const_adj_list_t typedef (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
Deserialize(const std::string &prefix, const fid_t fid) (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
edata_t typedef (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
edge_t typedef (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
fragment_adj_list_t typedef (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
fragment_const_adj_list_t typedef (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
get_ie_begin(const vertex_t &v) (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlineprotected
get_ie_begin(const vertex_t &v) const (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlineprotected
get_ie_end(const vertex_t &v) (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlineprotected
get_ie_end(const vertex_t &v) const (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlineprotected
get_oe_begin(const vertex_t &v) (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlineprotected
get_oe_begin(const vertex_t &v) const (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlineprotected
get_oe_end(const vertex_t &v) (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlineprotected
get_oe_end(const vertex_t &v) const (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlineprotected
GetData(const vertex_t &v) const override (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetIncomingAdjList(const vertex_t &v, fid_t dst_fid) override (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetIncomingAdjList(const vertex_t &v, fid_t dst_fid) const override (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetIncomingAdjList(const vertex_t &v) overridegrape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetIncomingAdjList(const vertex_t &v) const overridegrape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetIncomingInnerVertexAdjList(const vertex_t &v) override (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetIncomingInnerVertexAdjList(const vertex_t &v) const override (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetIncomingOuterVertexAdjList(const vertex_t &v) override (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetIncomingOuterVertexAdjList(const vertex_t &v) const override (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetOuterVertexGid(vertex_t v) const override (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetOutgoingAdjList(const vertex_t &v, fid_t dst_fid) override (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetOutgoingAdjList(const vertex_t &v, fid_t dst_fid) const override (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetOutgoingAdjList(const vertex_t &v) overridegrape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetOutgoingAdjList(const vertex_t &v) const overridegrape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetOutgoingInnerVertexAdjList(const vertex_t &v) override (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetOutgoingInnerVertexAdjList(const vertex_t &v) const override (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetOutgoingOuterVertexAdjList(const vertex_t &v) override (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetOutgoingOuterVertexAdjList(const vertex_t &v) const override (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
Gid2Lid(VID_T gid, VID_T &lid) const (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
Gid2Vertex(const VID_T &gid, vertex_t &v) const override (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
ie_ (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
iespliter_ (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >private
Init(fid_t fid, bool directed, std::vector< internal_vertex_t > &vertices, std::vector< edge_t > &edges) override (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
initOuterVerticesOfFragment() (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlineprivate
inner_vertex_array_t typedef (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
inner_vertices_t typedef (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
internal_vertex_t typedef (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
IsEdgeCut typedef (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
IsInnerVertex(const Vertex< VID_T > &v) constgrape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
IsInnerVertexGid(VID_T gid) const (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
IsVertexCut typedef (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
ivdata_ (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >private
load_strategy (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >static
MutableEdgecutFragment(std::shared_ptr< vertex_map_t > vm_ptr) (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlineexplicit
Mutate(Mutation< vid_t, vdata_t, edata_t > &mutation) (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
nbr_t typedef (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
oe_ (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
oespliter_ (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >private
oid_t typedef (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
outer_vertex_array_t typedef (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
outer_vertices_t typedef (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
OuterVertexGid2Lid(VID_T gid, VID_T &lid) const override (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
outerVertexIndexToLid(VID_T index) const (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlineprivate
outerVertexLidToIndex(VID_T lid) const (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlineprivate
ovdata_ (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >private
ovg2i_ (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >private
ovgid_ (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >private
ovnum_ (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >private
parseOrAddOuterVertexGid(VID_T gid) (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlineprivate
PrepareToRunApp(const CommSpec &comm_spec, PrepareConf conf) override (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
Serialize(const std::string &prefix) (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
SetData(const vertex_t &v, const VDATA_T &val) override (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
splitEdges() (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlineprivate
traits_t typedef (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
type_info() (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlinestatic
vdata_t typedef (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
Vertex2Gid(const vertex_t &v) const override (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
vertex_array_t typedef (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
vertex_map_t typedef (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
vertex_t typedef (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
vertices_t typedef (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
vid_t typedef (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
~MutableEdgecutFragment()=default (defined in grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >virtual
+ + + + diff --git a/classgrape_1_1MutableEdgecutFragment.html b/classgrape_1_1MutableEdgecutFragment.html new file mode 100644 index 00000000..d6b1860b --- /dev/null +++ b/classgrape_1_1MutableEdgecutFragment.html @@ -0,0 +1,532 @@ + + + + + + + +libgrape-lite: grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T > Class Template Reference
+
+
+
+Inheritance diagram for grape::MutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >:
+
+
+ +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

+using traits_t = MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >
 
+using base_t = CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, traits_t >
 
+using internal_vertex_t = internal::Vertex< VID_T, VDATA_T >
 
+using edge_t = Edge< VID_T, EDATA_T >
 
+using nbr_t = Nbr< VID_T, EDATA_T >
 
+using vertex_t = Vertex< VID_T >
 
+using vid_t = VID_T
 
+using oid_t = OID_T
 
+using vdata_t = VDATA_T
 
+using edata_t = EDATA_T
 
+using vertex_map_t = typename traits_t::vertex_map_t
 
+using IsEdgeCut = std::true_type
 
+using IsVertexCut = std::false_type
 
+using inner_vertices_t = typename traits_t::inner_vertices_t
 
+using outer_vertices_t = typename traits_t::outer_vertices_t
 
+using vertices_t = typename traits_t::vertices_t
 
+using fragment_adj_list_t = typename traits_t::fragment_adj_list_t
 
+using fragment_const_adj_list_t = typename traits_t::fragment_const_adj_list_t
 
+template<typename T >
using inner_vertex_array_t = VertexArray< inner_vertices_t, T >
 
+template<typename T >
using outer_vertex_array_t = VertexArray< outer_vertices_t, T >
 
+template<typename T >
using vertex_array_t = VertexArray< vertices_t, T >
 
+using adj_list_t = typename base_t::adj_list_t
 
+using const_adj_list_t = typename base_t::const_adj_list_t
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

MutableEdgecutFragment (std::shared_ptr< vertex_map_t > vm_ptr)
 
+void Init (fid_t fid, bool directed, std::vector< internal_vertex_t > &vertices, std::vector< edge_t > &edges) override
 
+void Mutate (Mutation< vid_t, vdata_t, edata_t > &mutation)
 
+template<typename IOADAPTOR_T >
void Serialize (const std::string &prefix)
 
+template<typename IOADAPTOR_T >
void Deserialize (const std::string &prefix, const fid_t fid)
 
+void PrepareToRunApp (const CommSpec &comm_spec, PrepareConf conf) override
 
+const VDATA_T & GetData (const vertex_t &v) const override
 
+void SetData (const vertex_t &v, const VDATA_T &val) override
 
+bool OuterVertexGid2Lid (VID_T gid, VID_T &lid) const override
 
+VID_T GetOuterVertexGid (vertex_t v) const override
 
+bool Gid2Vertex (const VID_T &gid, vertex_t &v) const override
 
+VID_T Vertex2Gid (const vertex_t &v) const override
 
+fragment_adj_list_t GetOutgoingAdjList (const vertex_t &v, fid_t dst_fid) override
 
+fragment_const_adj_list_t GetOutgoingAdjList (const vertex_t &v, fid_t dst_fid) const override
 
+fragment_adj_list_t GetIncomingAdjList (const vertex_t &v, fid_t dst_fid) override
 
+fragment_const_adj_list_t GetIncomingAdjList (const vertex_t &v, fid_t dst_fid) const override
 
+adj_list_t GetIncomingInnerVertexAdjList (const vertex_t &v) override
 
+const_adj_list_t GetIncomingInnerVertexAdjList (const vertex_t &v) const override
 
+adj_list_t GetIncomingOuterVertexAdjList (const vertex_t &v) override
 
+const_adj_list_t GetIncomingOuterVertexAdjList (const vertex_t &v) const override
 
+adj_list_t GetOutgoingInnerVertexAdjList (const vertex_t &v) override
 
+const_adj_list_t GetOutgoingInnerVertexAdjList (const vertex_t &v) const override
 
+adj_list_t GetOutgoingOuterVertexAdjList (const vertex_t &v) override
 
+const_adj_list_t GetOutgoingOuterVertexAdjList (const vertex_t &v) const override
 
+void buildCSR (const typename csr_builder_t::vertex_range_t &vertex_range, std::vector< Edge< VID_T, EDATA_T >> &edges, LoadStrategy load_strategy)
 
+bool IsInnerVertexGid (VID_T gid) const
 
+bool Gid2Lid (VID_T gid, VID_T &lid) const
 
bool IsInnerVertex (const Vertex< VID_T > &v) const
 Check if vertex v is inner vertex of this fragment. More...
 
adj_list_t GetIncomingAdjList (const vertex_t &v) override
 Returns the incoming adjacent vertices of v. More...
 
const_adj_list_t GetIncomingAdjList (const vertex_t &v) const override
 Returns the incoming adjacent vertices of v. More...
 
adj_list_t GetOutgoingAdjList (const vertex_t &v) override
 Returns the outgoing adjacent vertices of v. More...
 
const_adj_list_t GetOutgoingAdjList (const vertex_t &v) const override
 Returns the outgoing adjacent vertices of v. More...
 
+ + + +

+Static Public Member Functions

+static std::string type_info ()
 
+ + + + + +

+Public Attributes

+csr_t ie_
 
+csr_t oe_
 
+ + + +

+Static Public Attributes

+static constexpr LoadStrategy load_strategy = _load_strategy
 
+ + + + + + + + + + + + + + + + + +

+Protected Member Functions

+nbr_tget_ie_begin (const vertex_t &v)
 
+const nbr_tget_ie_begin (const vertex_t &v) const
 
+nbr_tget_ie_end (const vertex_t &v)
 
+const nbr_tget_ie_end (const vertex_t &v) const
 
+nbr_tget_oe_begin (const vertex_t &v)
 
+const nbr_tget_oe_begin (const vertex_t &v) const
 
+nbr_tget_oe_end (const vertex_t &v)
 
+const nbr_tget_oe_end (const vertex_t &v) const
 
+ + + + + + + + + + + +

+Private Member Functions

+VID_T outerVertexLidToIndex (VID_T lid) const
 
+VID_T outerVertexIndexToLid (VID_T index) const
 
+void splitEdges ()
 
+VID_T parseOrAddOuterVertexGid (VID_T gid)
 
+void initOuterVerticesOfFragment ()
 
+ + + + + + + + + + + + + + + +

+Private Attributes

+VID_T ovnum_
 
+ska::flat_hash_map< VID_T, VID_T > ovg2i_
 
+std::vector< VID_T > ovgid_
 
+Array< VDATA_T, Allocator< VDATA_T > > ivdata_
 
+Array< VDATA_T, Allocator< VDATA_T > > ovdata_
 
+VertexArray< inner_vertices_t, nbr_t * > iespliter_
 
+VertexArray< inner_vertices_t, nbr_t * > oespliter_
 
+

Member Function Documentation

+ +

◆ GetIncomingAdjList() [1/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , LoadStrategy _load_strategy = LoadStrategy::kOnlyOut, typename VERTEX_MAP_T = GlobalVertexMap<OID_T, VID_T, HashPartitioner<OID_T>>>
+ + + + + +
+ + + + +
const_adj_list_t grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetIncomingAdjList
+
+inlineoverride
+
+ +

Returns the incoming adjacent vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The incoming adjacent vertices of v.
+
Attention
Only inner vertex is available.
+ +
+
+ +

◆ GetIncomingAdjList() [2/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , LoadStrategy _load_strategy = LoadStrategy::kOnlyOut, typename VERTEX_MAP_T = GlobalVertexMap<OID_T, VID_T, HashPartitioner<OID_T>>>
+ + + + + +
+ + + + +
adj_list_t grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetIncomingAdjList
+
+inlineoverride
+
+ +

Returns the incoming adjacent vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The incoming adjacent vertices of v.
+
Attention
Only inner vertex is available.
+ +
+
+ +

◆ GetOutgoingAdjList() [1/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , LoadStrategy _load_strategy = LoadStrategy::kOnlyOut, typename VERTEX_MAP_T = GlobalVertexMap<OID_T, VID_T, HashPartitioner<OID_T>>>
+ + + + + +
+ + + + +
const_adj_list_t grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetOutgoingAdjList
+
+inlineoverride
+
+ +

Returns the outgoing adjacent vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The outgoing adjacent vertices of v.
+
Attention
Only inner vertex is available.
+ +
+
+ +

◆ GetOutgoingAdjList() [2/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , LoadStrategy _load_strategy = LoadStrategy::kOnlyOut, typename VERTEX_MAP_T = GlobalVertexMap<OID_T, VID_T, HashPartitioner<OID_T>>>
+ + + + + +
+ + + + +
adj_list_t grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::GetOutgoingAdjList
+
+inlineoverride
+
+ +

Returns the outgoing adjacent vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The outgoing adjacent vertices of v.
+
Attention
Only inner vertex is available.
+ +
+
+ +

◆ IsInnerVertex()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , LoadStrategy _load_strategy = LoadStrategy::kOnlyOut, typename VERTEX_MAP_T = GlobalVertexMap<OID_T, VID_T, HashPartitioner<OID_T>>>
+ + + + + +
+ + + + +
bool grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >::IsInnerVertex
+
+inline
+
+ +

Check if vertex v is inner vertex of this fragment.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
True if vertex v is an inner vertex, false otherwise.
+ +
+
+
+ + + + diff --git a/classgrape_1_1MutableEdgecutFragment.png b/classgrape_1_1MutableEdgecutFragment.png new file mode 100644 index 0000000000000000000000000000000000000000..b0cf539508f22e607642ff3b298db0917ea0961e GIT binary patch literal 2546 zcmds(dpMNa9>*u7+@h3QE_*jKiI8j2xQC2tawnHeE{DM|gCZf9T^gc{LAmdmX_|># z+U|E58l)PxTxQbPBx00XXv}^&yK~N;=lpxt^StZ#d)M!~-skzgYpu_-aJGoEV#0F5 zAP`6lZf#)?0tw^;x$RzlpbyF_(guQz?RiH_9*+m4GhbG&-fO=PWIIo5YwK>@xDxQX zH^Ls_00KnYZLr%Bm?x9~w=i>z+BIJ=l1NmOv=Be#)yO-{W0K4(T}eZoCJH)*)fUza zk3@HS8#d2+d+}{9TAFTpRBT`P|@|520J*Gaz8N0}_h|f)!A_kU;yX z(cLYjyd$MsGY$%1ZA^IW+_h}Z9C45N>eA`HY+_e%D&+I8BV8fyDzWmfhTimwO&ZAf zy@5#$eVP-@-JEcdiMoL}%?ne5Ql>s!IEP9$yG$+C{T&4!{N#c^%~F8Fr$$u+Y!#o4 zByU|__QWeXbf}CeFvYD_2WoUv(@T0KlT+)dI5T6z8pAEmuO)^l!nZ@{&?CVo6imMaRkUd6oe{{)G)nbO_$?~06 z`9qazHS>N~Q_+&i($(otO9tJYl3t^h=o$ghM+}v|B=!pq@dZ2{v7FU0z_o=geIqjt zm@{d|2q;UK4@_|ON1P^pJ$AmooI4vfwz*(~zPQfP80Q&DkdJVt;>gQq9%R4tmK@Tc zB<%~5s>;}B_Ml0`oN!qg@fb86-*ieD{Z`Iz1BR-Tm8HK^z|Q6wO-B~*4wWXWOFWhe z8s(Ux|CI1p;yyJLqfsIsrAB2fe^hCr`7Tx@ee@87=G7$6EYru)S(va83`v!Jzs=|D zGKxP>n`T{;L2cja%Xc*EIkD8Xk<4Heh&oj~-eo!G zW1*4mA#b(TF+sOppo$B|^`O@=A(^emJu!o=nz`s@V?w4UR+Y3S&A?Cj5Yno}HWxHD zwDe_+W#|ctMqmUKFCAl|dciI~&MN2YO5vf&)zC{$%xd~G8gxAE8P+fc#X`o)R@cX9>z)%lVjz6ZG!9JgD!uukAag^+`IK`Jgu({4 zKF;Nio!U@f^n2ePmTCTMiH-1Z-Vxajoj+W`h!yf}HYE@oM9ZvU~> z$exO;Hg4Z#`^*#e+d48ebzA(d7;qHg2`M?YX|`|HApgQ-2qBgm=hw zs!2_0>DPWg{-XWlzMj+CK>^8C<@FzW)Z%y5-lGX2lRtpNQs0G*atj~Mt)EhTg|>n5 zthSs+SRrk}6$he!$@9o5x!L}xGH7^@8D^mhKJsH=oDrWx`<#+6W1W>HQ>%C4T-diV z395Q7ze;+Nlybbd50+0R{Mm%fwdx{LQq7|i-ga;Hz8KAny5Z9Dr9`(oCue*hVCK?7 z#+wueu+!x27G;F8*l*U?up(#AUe`Nss~2}UKUYw=$~I5tY^8w>=q^oYVt*1}=~(gc zS8fTNfh(J#Ug_=4V_%+R9=;-fiRu>ah850;O4DDtc*ddO%HcTH^i(#^DJb_-1DinJ zXZ-S;KzS12^nC2HQ|^Je`IF-=F^|ohj$doCYbrTZx^O2!U+<+;U6CZYR1VQMpNrw% zC{vlU_RxNt>Tn20;0b^r%`WZHHwq&WCpg@lv-3_p(Mj8^Y%cZwWntJ6}H-v0G4 zwqwuIbNyTNSfzn6C28_e$w(TVAyA&Wy`n{;G7HCF#s4ek|7W`iSX3(t+lqn7mcrCQnA? z(Wj7!g-=f2O%GLG+M)Y!02O3_z5d?+tq`c}&&1cm_1MnQC722NHsi& zs(lvI(zM?5O(;rdgTA_@bAuiP0DNf=G{9)7ru*R2N2NUmI#aI=E%gq E02e`tk^lez literal 0 HcmV?d00001 diff --git a/classgrape_1_1MutationContext-members.html b/classgrape_1_1MutationContext-members.html new file mode 100644 index 00000000..b5fdba1e --- /dev/null +++ b/classgrape_1_1MutationContext-members.html @@ -0,0 +1,128 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::MutationContext< FRAG_T > Member List
+
+
+ +

This is the complete list of members for grape::MutationContext< FRAG_T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
add_edge(const oid_t &src, const oid_t &dst, const edata_t &data) (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >inline
add_edge(const vertex_t &src, const vertex_t &dst, const edata_t &data) (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >inline
add_vertex(const oid_t &id, const vdata_t &data) (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >inline
apply_mutation(std::shared_ptr< fragment_t > fragment, const CommSpec &comm_spec) (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >inline
ContextBase()=default (defined in grape::ContextBase)grape::ContextBase
edata_list typedef (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
edata_t typedef (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
edata_to_add_ (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
edata_to_update_ (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
edst_to_add_ (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
edst_to_remove_ (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
edst_to_update_ (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
esrc_to_add_ (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
esrc_to_remove_ (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
esrc_to_update_ (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
fragment_ (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
fragment_t typedef (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
id_to_add_ (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
id_to_remove_ (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
id_to_update_ (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
MutationContext(const fragment_t &fragment) (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >inlineexplicit
oid_list typedef (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
oid_t typedef (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
Output(std::ostream &os)grape::ContextBaseinlinevirtual
parsed_vertices_to_update_ (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
parsed_vid_to_remove_ (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
partitioner_ (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
partitioner_t typedef (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
remove_edge(const oid_t &src, const oid_t &dst) (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >inline
remove_edge(const vertex_t &src, const vertex_t &dst) (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >inline
remove_vertex(const oid_t &id) (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >inline
remove_vertex(const vertex_t &v) (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >inline
update_edge(const oid_t &src, const oid_t &dst, const edata_t &data) (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >inline
update_edge(const vertex_t &src, const vertex_t &dst, const edata_t &data) (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >inline
update_vertex(const oid_t &id, const vdata_t &data) (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >inline
update_vertex(const vertex_t &v, const vdata_t &data) (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >inline
vdata_list typedef (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
vdata_t typedef (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
vdata_to_add_ (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
vdata_to_update_ (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
vertex_map_t typedef (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
vertex_t typedef (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
vid_list typedef (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
vid_t typedef (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
vm_ptr_ (defined in grape::MutationContext< FRAG_T >)grape::MutationContext< FRAG_T >private
~ContextBase()=default (defined in grape::ContextBase)grape::ContextBasevirtual
+ + + + diff --git a/classgrape_1_1MutationContext.html b/classgrape_1_1MutationContext.html new file mode 100644 index 00000000..0fdbadf6 --- /dev/null +++ b/classgrape_1_1MutationContext.html @@ -0,0 +1,236 @@ + + + + + + + +libgrape-lite: grape::MutationContext< FRAG_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::MutationContext< FRAG_T > Class Template Reference
+
+
+
+Inheritance diagram for grape::MutationContext< FRAG_T >:
+
+
+ + +grape::ContextBase + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

MutationContext (const fragment_t &fragment)
 
+void add_vertex (const oid_t &id, const vdata_t &data)
 
+void add_edge (const oid_t &src, const oid_t &dst, const edata_t &data)
 
+void add_edge (const vertex_t &src, const vertex_t &dst, const edata_t &data)
 
+void update_vertex (const oid_t &id, const vdata_t &data)
 
+void update_vertex (const vertex_t &v, const vdata_t &data)
 
+void update_edge (const oid_t &src, const oid_t &dst, const edata_t &data)
 
+void update_edge (const vertex_t &src, const vertex_t &dst, const edata_t &data)
 
+void remove_vertex (const oid_t &id)
 
+void remove_vertex (const vertex_t &v)
 
+void remove_edge (const oid_t &src, const oid_t &dst)
 
+void remove_edge (const vertex_t &src, const vertex_t &dst)
 
+void apply_mutation (std::shared_ptr< fragment_t > fragment, const CommSpec &comm_spec)
 
- Public Member Functions inherited from grape::ContextBase
virtual void Output (std::ostream &os)
 Output function to implement for result output. More...
 
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Private Types

+using fragment_t = FRAG_T
 
+using oid_t = typename FRAG_T::oid_t
 
+using vid_t = typename FRAG_T::vid_t
 
+using vdata_t = typename FRAG_T::vdata_t
 
+using edata_t = typename FRAG_T::edata_t
 
+using vertex_map_t = typename FRAG_T::vertex_map_t
 
+using partitioner_t = typename vertex_map_t::partitioner_t
 
+using vertex_t = typename FRAG_T::vertex_t
 
+using oid_list = typename ShuffleBuffer< oid_t >::type
 
+using vid_list = typename ShuffleBuffer< vid_t >::type
 
+using vdata_list = typename ShuffleBuffer< vdata_t >::type
 
+using edata_list = typename ShuffleBuffer< edata_t >::type
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Private Attributes

+const fragment_t & fragment_
 
+const std::shared_ptr< vertex_map_t > vm_ptr_
 
+const partitioner_t & partitioner_
 
+std::vector< oid_list > id_to_add_
 
+std::vector< vdata_list > vdata_to_add_
 
+std::vector< oid_list > esrc_to_add_
 
+std::vector< oid_list > edst_to_add_
 
+std::vector< edata_list > edata_to_add_
 
+std::vector< internal::Vertex< vid_t, vdata_t > > parsed_vertices_to_update_
 
+std::vector< oid_list > id_to_update_
 
+std::vector< vdata_list > vdata_to_update_
 
+std::vector< oid_list > esrc_to_update_
 
+std::vector< oid_list > edst_to_update_
 
+std::vector< edata_list > edata_to_update_
 
+std::vector< vid_t > parsed_vid_to_remove_
 
+std::vector< oid_list > id_to_remove_
 
+std::vector< oid_list > esrc_to_remove_
 
+std::vector< oid_list > edst_to_remove_
 
+
+ + + + diff --git a/classgrape_1_1MutationContext.png b/classgrape_1_1MutationContext.png new file mode 100644 index 0000000000000000000000000000000000000000..53afdff7501fd677c74627aa6d621ae6675ce359 GIT binary patch literal 794 zcmeAS@N?(olHy`uVBq!ia0vp^SAjTygBeKfe0<;*kdg@S332`Z|38rV;?396{zDUh zEHFNB-~emq9eE&^qa?^Lm;tB=1g@S6F=Aj~TIuQH7*fIbcJA$>*9ttY)3>L8`ai!$ zCP$BHPWR+*Aw0e1O)D96TaIYI-nH&60SVi?)UGGrPZ7k^!PW;Y-{9_thV?=yZlnGnf!~8a1Q-d)3WUB>MgSWr)HI} zczjQJ)nT1LQFVjw@w$rf3$kq9O=-HA}ut+${4{w~1tmyi6js}Uh{HybidRrwq1 ztL6D=p{J^+-Il<$uXpvSHN;=yO|angEZyDPVXAVK%~avqjF8Q2OcfWGFnw6)$@;)~ zGS`82HPHrsUo8e;kTBSptYoOk2x9zk0ad{P^{8p7l72c2&6zOC@|BB9Oo^}p=zxtdp5?{fZq?pY-%^EYRib)-qYQ%2kSx%Jua zCeOI*X@61W*758^JZ8UV?do>CTQD!kwtv@BuG13r$;SI+{oV9`N1pIEwOE_CYqsN2 z&Wsgaj7Kl$RQRSIn_24p+$!YeKFO;ASEDC7M?Lrcn0?YG!PnaQ{$i^l)4Y5`f1dEC zbzAD&wJPIezWJ@079Bc5))aC$Y{ zKaC-|ZL>D4jJ{fnjTTzS`QQtUnPbp5Kv&_?6Cp}brA>=t=V z{dV+JU0pWAkD$rnb}O8|u3)Mu; + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::NonblockingQueue< T > Member List
+
+
+ +

This is the complete list of members for grape::NonblockingQueue< T >, including all inherited members.

+ + + + + + + + + +
Clear() (defined in grape::NonblockingQueue< T >)grape::NonblockingQueue< T >inline
Get(T &item)grape::NonblockingQueue< T >inline
lock_ (defined in grape::NonblockingQueue< T >)grape::NonblockingQueue< T >private
NonblockingQueue() (defined in grape::NonblockingQueue< T >)grape::NonblockingQueue< T >inline
Put(const T &item)grape::NonblockingQueue< T >inline
Put(T &&item)grape::NonblockingQueue< T >inline
queue_ (defined in grape::NonblockingQueue< T >)grape::NonblockingQueue< T >private
~NonblockingQueue() (defined in grape::NonblockingQueue< T >)grape::NonblockingQueue< T >inline
+ + + + diff --git a/classgrape_1_1NonblockingQueue.html b/classgrape_1_1NonblockingQueue.html new file mode 100644 index 00000000..1135e29e --- /dev/null +++ b/classgrape_1_1NonblockingQueue.html @@ -0,0 +1,237 @@ + + + + + + + +libgrape-lite: grape::NonblockingQueue< T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::NonblockingQueue< T > Class Template Reference
+
+
+ +

A concurrent queue guarded by a spinlock and can be accessed by multi-producers and multi-consumers simultaneously. + More...

+ +

#include <concurrent_queue.h>

+ + + + + + + + + + + + + +

+Public Member Functions

void Put (const T &item)
 Put an entity into this queue. More...
 
void Put (T &&item)
 Put an entity into this queue. More...
 
bool Get (T &item)
 Get an entity from this queue. More...
 
+void Clear ()
 
+ + + + + +

+Private Attributes

+std::deque< T > queue_
 
+SpinLock lock_
 
+

Detailed Description

+

template<typename T>
+class grape::NonblockingQueue< T >

+ +

A concurrent queue guarded by a spinlock and can be accessed by multi-producers and multi-consumers simultaneously.

+
Template Parameters
+ + +
TType of entities in the queue.
+
+
+

Member Function Documentation

+ +

◆ Get()

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
bool grape::NonblockingQueue< T >::Get (T & item)
+
+inline
+
+ +

Get an entity from this queue.

+

This function won't be blocked.

+
Parameters
+ + +
itemReference of an entity to hold the got data.
+
+
+
Returns
If got data, return true. Otherwise, return false.
+ +
+
+ +

◆ Put() [1/2]

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void grape::NonblockingQueue< T >::Put (const T & item)
+
+inline
+
+ +

Put an entity into this queue.

+

This function won't be blocked.

+
Parameters
+ + +
itemThe entity to be put.
+
+
+ +
+
+ +

◆ Put() [2/2]

+ +
+
+
+template<typename T >
+ + + + + +
+ + + + + + + + +
void grape::NonblockingQueue< T >::Put (T && item)
+
+inline
+
+ +

Put an entity into this queue.

+

This function won't be blocked.

+
Parameters
+ + +
itemThe entity to be put.
+
+
+ +
+
+
+ + + + diff --git a/classgrape_1_1OutArchive-members.html b/classgrape_1_1OutArchive-members.html new file mode 100644 index 00000000..2a07ec68 --- /dev/null +++ b/classgrape_1_1OutArchive-members.html @@ -0,0 +1,103 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::OutArchive Member List
+
+
+ +

This is the complete list of members for grape::OutArchive, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
Allocate(size_t size) (defined in grape::OutArchive)grape::OutArchiveinline
begin_ (defined in grape::OutArchive)grape::OutArchive
buffer_ (defined in grape::OutArchive)grape::OutArchive
Clear() (defined in grape::OutArchive)grape::OutArchiveinline
Empty() const (defined in grape::OutArchive)grape::OutArchiveinline
end_ (defined in grape::OutArchive)grape::OutArchive
GetBuffer() (defined in grape::OutArchive)grape::OutArchiveinline
GetBuffer() const (defined in grape::OutArchive)grape::OutArchiveinline
GetBytes(unsigned int size) (defined in grape::OutArchive)grape::OutArchiveinline
GetSize() const (defined in grape::OutArchive)grape::OutArchiveinline
operator=(InArchive &&rhs) (defined in grape::OutArchive)grape::OutArchiveinline
operator=(OutArchive &&rhs) (defined in grape::OutArchive)grape::OutArchiveinline
OutArchive() (defined in grape::OutArchive)grape::OutArchiveinline
OutArchive(const OutArchive &rhs) (defined in grape::OutArchive)grape::OutArchiveinline
OutArchive(size_t size) (defined in grape::OutArchive)grape::OutArchiveinlineexplicit
OutArchive(OutArchive &&oa) (defined in grape::OutArchive)grape::OutArchiveinline
OutArchive(InArchive &&ia) (defined in grape::OutArchive)grape::OutArchiveinlineexplicit
Peek(T &value) (defined in grape::OutArchive)grape::OutArchiveinline
Rewind() (defined in grape::OutArchive)grape::OutArchiveinline
SetSlice(char *buffer, size_t size) (defined in grape::OutArchive)grape::OutArchiveinline
~OutArchive() (defined in grape::OutArchive)grape::OutArchiveinline
+ + + + diff --git a/classgrape_1_1OutArchive.html b/classgrape_1_1OutArchive.html new file mode 100644 index 00000000..4ed324a8 --- /dev/null +++ b/classgrape_1_1OutArchive.html @@ -0,0 +1,155 @@ + + + + + + + +libgrape-lite: grape::OutArchive Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::OutArchive Class Reference
+
+
+ +

OutArchive is an archived object for deserializing objects. + More...

+ +

#include <out_archive.h>

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

OutArchive (const OutArchive &rhs)
 
OutArchive (size_t size)
 
OutArchive (OutArchive &&oa)
 
OutArchive (InArchive &&ia)
 
+OutArchiveoperator= (InArchive &&rhs)
 
+OutArchiveoperator= (OutArchive &&rhs)
 
+void Clear ()
 
+void Allocate (size_t size)
 
+void Rewind ()
 
+void SetSlice (char *buffer, size_t size)
 
+char * GetBuffer ()
 
+const char * GetBuffer () const
 
+size_t GetSize () const
 
+bool Empty () const
 
+void * GetBytes (unsigned int size)
 
+template<typename T >
void Peek (T &value)
 
+ + + + + + + +

+Public Attributes

+std::vector< char > buffer_
 
+char * begin_
 
+char * end_
 
+

Detailed Description

+

OutArchive is an archived object for deserializing objects.

+
+ + + + diff --git a/classgrape_1_1ParallelAppBase-members.html b/classgrape_1_1ParallelAppBase-members.html new file mode 100644 index 00000000..8d88e864 --- /dev/null +++ b/classgrape_1_1ParallelAppBase-members.html @@ -0,0 +1,92 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T > Member List
+
+
+ +

This is the complete list of members for grape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T >, including all inherited members.

+ + + + + + + + + + + +
EstimateMessageSize(const FRAG_T &graph, size_t &send_size, size_t &recv_size) (defined in grape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T >)grape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T >inlinevirtual
IncEval(const FRAG_T &graph, CONTEXT_T &context, message_manager_t &messages)=0grape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T >pure virtual
load_strategy (defined in grape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T >)grape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T >static
message_manager_t typedef (defined in grape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T >)grape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T >
message_strategy (defined in grape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T >)grape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T >static
need_split_edges (defined in grape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T >)grape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T >static
need_split_edges_by_fragment (defined in grape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T >)grape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T >static
ParallelAppBase()=default (defined in grape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T >)grape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T >
PEval(const FRAG_T &graph, CONTEXT_T &context, message_manager_t &messages)=0grape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T >pure virtual
~ParallelAppBase()=default (defined in grape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T >)grape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T >virtual
+ + + + diff --git a/classgrape_1_1ParallelAppBase.html b/classgrape_1_1ParallelAppBase.html new file mode 100644 index 00000000..b9ae6171 --- /dev/null +++ b/classgrape_1_1ParallelAppBase.html @@ -0,0 +1,273 @@ + + + + + + + +libgrape-lite: grape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T > Class Template Referenceabstract
+
+
+ +

ParallelAppBase is a base class for parallel apps. Users can process messages in a more flexible way in this kind of app. It contains an ParallelMessageManager to process messages, which enables send/receive messages during computation. This strategy improves performance by overlapping the communication time and the evaluation time. + More...

+ +

#include <parallel_app_base.h>

+ + + + +

+Public Types

+using message_manager_t = MESSAGE_MANAGER_T
 
+ + + + + + + + + +

+Public Member Functions

virtual void PEval (const FRAG_T &graph, CONTEXT_T &context, message_manager_t &messages)=0
 Partial evaluation to implement. More...
 
virtual void IncEval (const FRAG_T &graph, CONTEXT_T &context, message_manager_t &messages)=0
 Incremental evaluation to implement. More...
 
+virtual void EstimateMessageSize (const FRAG_T &graph, size_t &send_size, size_t &recv_size)
 
+ + + + + + + + + +

+Static Public Attributes

+static constexpr bool need_split_edges = false
 
+static constexpr bool need_split_edges_by_fragment = false
 
static constexpr MessageStrategy message_strategy
 
+static constexpr LoadStrategy load_strategy = LoadStrategy::kOnlyOut
 
+

Detailed Description

+

template<typename FRAG_T, typename CONTEXT_T, typename MESSAGE_MANAGER_T = ParallelMessageManager>
+class grape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T >

+ +

ParallelAppBase is a base class for parallel apps. Users can process messages in a more flexible way in this kind of app. It contains an ParallelMessageManager to process messages, which enables send/receive messages during computation. This strategy improves performance by overlapping the communication time and the evaluation time.

+
Template Parameters
+ + + +
FRAG_T
CONTEXT_T
+
+
+

Member Function Documentation

+ +

◆ IncEval()

+ +
+
+
+template<typename FRAG_T , typename CONTEXT_T , typename MESSAGE_MANAGER_T = ParallelMessageManager>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual void grape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T >::IncEval (const FRAG_T & graph,
CONTEXT_T & context,
message_manager_t & messages 
)
+
+pure virtual
+
+ +

Incremental evaluation to implement.

+
Note
: This pure virtual function works as an interface, instructing users to implement in the specific app. The IncEval in the inherited apps would be invoked directly, not via virtual functions.
+
Parameters
+ + + + +
graph
context
messages
+
+
+ +
+
+ +

◆ PEval()

+ +
+
+
+template<typename FRAG_T , typename CONTEXT_T , typename MESSAGE_MANAGER_T = ParallelMessageManager>
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual void grape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T >::PEval (const FRAG_T & graph,
CONTEXT_T & context,
message_manager_t & messages 
)
+
+pure virtual
+
+ +

Partial evaluation to implement.

+
Note
: This pure virtual function works as an interface, instructing users to implement in the specific app. The PEval in the inherited apps would be invoked directly, not via virtual functions.
+
Parameters
+ + + + +
graph
context
messages
+
+
+ +
+
+

Member Data Documentation

+ +

◆ message_strategy

+ +
+
+
+template<typename FRAG_T , typename CONTEXT_T , typename MESSAGE_MANAGER_T = ParallelMessageManager>
+ + + + + +
+ + + + +
constexpr MessageStrategy grape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T >::message_strategy
+
+staticconstexpr
+
+Initial value: +
+
+
+ + + + diff --git a/classgrape_1_1ParallelEngine-members.html b/classgrape_1_1ParallelEngine-members.html new file mode 100644 index 00000000..d81c20d6 --- /dev/null +++ b/classgrape_1_1ParallelEngine-members.html @@ -0,0 +1,110 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::ParallelEngine Member List
+
+
+ +

This is the complete list of members for grape::ParallelEngine, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
bitwise_iterate(VID_T begin, VID_T end, const Bitset &bitset, VID_T offset, int tid, const ITER_FUNC_T &iter_func) (defined in grape::ParallelEngine)grape::ParallelEngineinline
ForEach(const VertexRange< VID_T > &range, const ITER_FUNC_T &iter_func, int chunk_size=1024)grape::ParallelEngineinline
ForEach(const DualVertexRange< VID_T > &range, const ITER_FUNC_T &iter_func, int chunk_size=1024) (defined in grape::ParallelEngine)grape::ParallelEngineinline
ForEach(const VertexVector< VID_T > &vertices, const ITER_FUNC_T &iter_func, int chunk_size=1024)grape::ParallelEngineinline
ForEach(const ITERATOR_T &begin, const ITERATOR_T &end, const ITER_FUNC_T &iter_func, int chunk_size=1024) (defined in grape::ParallelEngine)grape::ParallelEngineinline
ForEach(const VertexRange< VID_T > &range, const INIT_FUNC_T &init_func, const ITER_FUNC_T &iter_func, const FINALIZE_FUNC_T &finalize_func, int chunk_size=1024)grape::ParallelEngineinline
ForEach(const DualVertexRange< VID_T > &range, const INIT_FUNC_T &init_func, const ITER_FUNC_T &iter_func, const FINALIZE_FUNC_T &finalize_func, int chunk_size=1024) (defined in grape::ParallelEngine)grape::ParallelEngineinline
ForEach(const VertexVector< VID_T > &vertices, const INIT_FUNC_T &init_func, const ITER_FUNC_T &iter_func, const FINALIZE_FUNC_T &finalize_func, int chunk_size=1024)grape::ParallelEngineinline
ForEach(const ITERATOR_T &begin, const ITERATOR_T &end, const INIT_FUNC_T &init_func, const ITER_FUNC_T &iter_func, const FINALIZE_FUNC_T &finalize_func, int chunk_size=1024)grape::ParallelEngineinline
ForEach(const DenseVertexSet< VertexRange< VID_T >> &dense_set, const ITER_FUNC_T &iter_func, int chunk_size=1024)grape::ParallelEngineinline
ForEach(const DenseVertexSet< VertexVector< VID_T >> &dense_set, const ITER_FUNC_T &iter_func, int chunk_size=1024) (defined in grape::ParallelEngine)grape::ParallelEngineinline
ForEach(const DenseVertexSet< DualVertexRange< VID_T >> &dense_set, const ITER_FUNC_T &iter_func, int chunk_size=1024) (defined in grape::ParallelEngine)grape::ParallelEngineinline
ForEach(const DenseVertexSet< VertexRange< VID_T >> &dense_set, const VertexRange< VID_T > &range, const ITER_FUNC_T &iter_func, int chunk_size=1024)grape::ParallelEngineinline
ForEach(const DenseVertexSet< VertexVector< VID_T >> &dense_set, const VertexRange< VID_T > &range, const ITER_FUNC_T &iter_func, int chunk_size=1024) (defined in grape::ParallelEngine)grape::ParallelEngineinline
ForEach(const DenseVertexSet< DualVertexRange< VID_T >> &dense_set, const VertexRange< VID_T > &range, const ITER_FUNC_T &iter_func, int chunk_size=1024) (defined in grape::ParallelEngine)grape::ParallelEngineinline
ForEach(const DenseVertexSet< VERTEX_SET_T > &dense_set, const VertexVector< VID_T > &vertices, const ITER_FUNC_T &iter_func, int chunk_size=1024)grape::ParallelEngineinline
ForEach(const DenseVertexSet< VertexRange< VID_T >> &dense_set, const INIT_FUNC_T &init_func, const ITER_FUNC_T &iter_func, const FINALIZE_FUNC_T &finalize_func, int chunk_size=10 *1024)grape::ParallelEngineinline
ForEach(const DenseVertexSet< VertexVector< VID_T >> &dense_set, const INIT_FUNC_T &init_func, const ITER_FUNC_T &iter_func, const FINALIZE_FUNC_T &finalize_func, int chunk_size=10 *1024) (defined in grape::ParallelEngine)grape::ParallelEngineinline
ForEach(const DenseVertexSet< DualVertexRange< VID_T >> &dense_set, const INIT_FUNC_T &init_func, const ITER_FUNC_T &iter_func, const FINALIZE_FUNC_T &finalize_func, int chunk_size=10 *1024) (defined in grape::ParallelEngine)grape::ParallelEngineinline
GetThreadPool() (defined in grape::ParallelEngine)grape::ParallelEngineinline
InitParallelEngine(const ParallelEngineSpec &spec=DefaultParallelEngineSpec()) (defined in grape::ParallelEngine)grape::ParallelEngineinline
parallel_iterate(VID_T begin, VID_T end, const Bitset &bitset, VID_T offset, const ITER_FUNC_T &iter_func, int chunk_size) (defined in grape::ParallelEngine)grape::ParallelEngineinline
ParallelEngine() (defined in grape::ParallelEngine)grape::ParallelEngineinline
thread_num() (defined in grape::ParallelEngine)grape::ParallelEngineinline
thread_num_ (defined in grape::ParallelEngine)grape::ParallelEngineprivate
thread_pool_ (defined in grape::ParallelEngine)grape::ParallelEngineprivate
wordwise_iterate(VID_T begin, VID_T end, const Bitset &bitset, VID_T offset, int tid, const ITER_FUNC_T &iter_func) (defined in grape::ParallelEngine)grape::ParallelEngineinline
~ParallelEngine() (defined in grape::ParallelEngine)grape::ParallelEngineinlinevirtual
+ + + + diff --git a/classgrape_1_1ParallelEngine.html b/classgrape_1_1ParallelEngine.html new file mode 100644 index 00000000..ed44515c --- /dev/null +++ b/classgrape_1_1ParallelEngine.html @@ -0,0 +1,822 @@ + + + + + + + +libgrape-lite: grape::ParallelEngine Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::ParallelEngine Class Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+void InitParallelEngine (const ParallelEngineSpec &spec=DefaultParallelEngineSpec())
 
+ThreadPoolGetThreadPool ()
 
template<typename ITER_FUNC_T , typename VID_T >
void ForEach (const VertexRange< VID_T > &range, const ITER_FUNC_T &iter_func, int chunk_size=1024)
 Iterate on vertexes of a VertexRange concurrently. More...
 
+template<typename ITER_FUNC_T , typename VID_T >
void ForEach (const DualVertexRange< VID_T > &range, const ITER_FUNC_T &iter_func, int chunk_size=1024)
 
template<typename ITER_FUNC_T , typename VID_T >
void ForEach (const VertexVector< VID_T > &vertices, const ITER_FUNC_T &iter_func, int chunk_size=1024)
 Iterate on discontinuous vertices concurrently. More...
 
+template<typename ITERATOR_T , typename ITER_FUNC_T >
void ForEach (const ITERATOR_T &begin, const ITERATOR_T &end, const ITER_FUNC_T &iter_func, int chunk_size=1024)
 
template<typename INIT_FUNC_T , typename ITER_FUNC_T , typename FINALIZE_FUNC_T , typename VID_T >
void ForEach (const VertexRange< VID_T > &range, const INIT_FUNC_T &init_func, const ITER_FUNC_T &iter_func, const FINALIZE_FUNC_T &finalize_func, int chunk_size=1024)
 Iterate on vertexes of a VertexRange concurrently, initialize function and finalize function can be provided to each thread. More...
 
+template<typename INIT_FUNC_T , typename ITER_FUNC_T , typename FINALIZE_FUNC_T , typename VID_T >
void ForEach (const DualVertexRange< VID_T > &range, const INIT_FUNC_T &init_func, const ITER_FUNC_T &iter_func, const FINALIZE_FUNC_T &finalize_func, int chunk_size=1024)
 
template<typename INIT_FUNC_T , typename ITER_FUNC_T , typename FINALIZE_FUNC_T , typename VID_T >
void ForEach (const VertexVector< VID_T > &vertices, const INIT_FUNC_T &init_func, const ITER_FUNC_T &iter_func, const FINALIZE_FUNC_T &finalize_func, int chunk_size=1024)
 Iterate on discontinuous vertices concurrently, initialize function and finalize function can be provided to each thread. More...
 
template<typename ITERATOR_T , typename INIT_FUNC_T , typename ITER_FUNC_T , typename FINALIZE_FUNC_T >
void ForEach (const ITERATOR_T &begin, const ITERATOR_T &end, const INIT_FUNC_T &init_func, const ITER_FUNC_T &iter_func, const FINALIZE_FUNC_T &finalize_func, int chunk_size=1024)
 Iterate a range specified by iterator pair concurrently. More...
 
template<typename ITER_FUNC_T , typename VID_T >
void ForEach (const DenseVertexSet< VertexRange< VID_T >> &dense_set, const ITER_FUNC_T &iter_func, int chunk_size=1024)
 Iterate on vertexes of a DenseVertexSet concurrently. More...
 
+template<typename ITER_FUNC_T , typename VID_T >
void ForEach (const DenseVertexSet< VertexVector< VID_T >> &dense_set, const ITER_FUNC_T &iter_func, int chunk_size=1024)
 
+template<typename ITER_FUNC_T , typename VID_T >
void ForEach (const DenseVertexSet< DualVertexRange< VID_T >> &dense_set, const ITER_FUNC_T &iter_func, int chunk_size=1024)
 
+template<typename ITER_FUNC_T , typename VID_T >
void bitwise_iterate (VID_T begin, VID_T end, const Bitset &bitset, VID_T offset, int tid, const ITER_FUNC_T &iter_func)
 
+template<typename ITER_FUNC_T , typename VID_T >
void wordwise_iterate (VID_T begin, VID_T end, const Bitset &bitset, VID_T offset, int tid, const ITER_FUNC_T &iter_func)
 
+template<typename ITER_FUNC_T , typename VID_T >
void parallel_iterate (VID_T begin, VID_T end, const Bitset &bitset, VID_T offset, const ITER_FUNC_T &iter_func, int chunk_size)
 
template<typename ITER_FUNC_T , typename VID_T >
void ForEach (const DenseVertexSet< VertexRange< VID_T >> &dense_set, const VertexRange< VID_T > &range, const ITER_FUNC_T &iter_func, int chunk_size=1024)
 Iterate on vertexes of a DenseVertexSet concurrently. More...
 
+template<typename ITER_FUNC_T , typename VID_T >
void ForEach (const DenseVertexSet< VertexVector< VID_T >> &dense_set, const VertexRange< VID_T > &range, const ITER_FUNC_T &iter_func, int chunk_size=1024)
 
+template<typename ITER_FUNC_T , typename VID_T >
void ForEach (const DenseVertexSet< DualVertexRange< VID_T >> &dense_set, const VertexRange< VID_T > &range, const ITER_FUNC_T &iter_func, int chunk_size=1024)
 
template<typename ITER_FUNC_T , typename VID_T , typename VERTEX_SET_T >
void ForEach (const DenseVertexSet< VERTEX_SET_T > &dense_set, const VertexVector< VID_T > &vertices, const ITER_FUNC_T &iter_func, int chunk_size=1024)
 Iterate on vertexes of a DenseVertexSet concurrently. More...
 
template<typename INIT_FUNC_T , typename ITER_FUNC_T , typename FINALIZE_FUNC_T , typename VID_T >
void ForEach (const DenseVertexSet< VertexRange< VID_T >> &dense_set, const INIT_FUNC_T &init_func, const ITER_FUNC_T &iter_func, const FINALIZE_FUNC_T &finalize_func, int chunk_size=10 *1024)
 Iterate on vertexes of a DenseVertexSet concurrently, initialize function and finalize function can be provided to each thread. More...
 
+template<typename INIT_FUNC_T , typename ITER_FUNC_T , typename FINALIZE_FUNC_T , typename VID_T >
void ForEach (const DenseVertexSet< VertexVector< VID_T >> &dense_set, const INIT_FUNC_T &init_func, const ITER_FUNC_T &iter_func, const FINALIZE_FUNC_T &finalize_func, int chunk_size=10 *1024)
 
+template<typename INIT_FUNC_T , typename ITER_FUNC_T , typename FINALIZE_FUNC_T , typename VID_T >
void ForEach (const DenseVertexSet< DualVertexRange< VID_T >> &dense_set, const INIT_FUNC_T &init_func, const ITER_FUNC_T &iter_func, const FINALIZE_FUNC_T &finalize_func, int chunk_size=10 *1024)
 
+uint32_t thread_num ()
 
+ + + + + +

+Private Attributes

+ThreadPool thread_pool_
 
+uint32_t thread_num_
 
+

Member Function Documentation

+ +

◆ ForEach() [1/9]

+ +
+
+
+template<typename ITER_FUNC_T , typename VID_T , typename VERTEX_SET_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ParallelEngine::ForEach (const DenseVertexSet< VERTEX_SET_T > & dense_set,
const VertexVector< VID_T > & vertices,
const ITER_FUNC_T & iter_func,
int chunk_size = 1024 
)
+
+inline
+
+ +

Iterate on vertexes of a DenseVertexSet concurrently.

+
Template Parameters
+ + + +
ITER_FUNC_TType of vertex program.
VID_TType of vertex id.
+
+
+
Parameters
+ + + + + +
dense_setThe vertex set to be iterated.
verticesThe vertices to be iterated.
iter_funcVertex program to be applied on each vertex.
chunk_sizeVertices granularity to be scheduled by threads.
+
+
+ +
+
+ +

◆ ForEach() [2/9]

+ +
+
+
+template<typename INIT_FUNC_T , typename ITER_FUNC_T , typename FINALIZE_FUNC_T , typename VID_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ParallelEngine::ForEach (const DenseVertexSet< VertexRange< VID_T >> & dense_set,
const INIT_FUNC_T & init_func,
const ITER_FUNC_T & iter_func,
const FINALIZE_FUNC_T & finalize_func,
int chunk_size = 10 * 1024 
)
+
+inline
+
+ +

Iterate on vertexes of a DenseVertexSet concurrently, initialize function and finalize function can be provided to each thread.

+
Template Parameters
+ + + + + +
INIT_FUNC_TType of thread init program.
ITER_FUNC_TType of vertex program.
FINALIZE_FUNC_TType of thread finalize program.
VID_TType of vertex id.
+
+
+
Parameters
+ + + + + + +
dense_setThe vertex set to be iterated.
init_funcInitializing function to be invoked by each thread before iterating on vertexes.
iter_funcVertex program to be applied on each vertex.
finalize_funcFinalizing function to be invoked by each thread after iterating on vertexes.
chunk_sizeVertices granularity to be scheduled by threads.
+
+
+ +
+
+ +

◆ ForEach() [3/9]

+ +
+
+
+template<typename ITER_FUNC_T , typename VID_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ParallelEngine::ForEach (const DenseVertexSet< VertexRange< VID_T >> & dense_set,
const ITER_FUNC_T & iter_func,
int chunk_size = 1024 
)
+
+inline
+
+ +

Iterate on vertexes of a DenseVertexSet concurrently.

+
Template Parameters
+ + + +
ITER_FUNC_TType of vertex program.
VID_TType of vertex id.
+
+
+
Parameters
+ + + + +
dense_setThe vertex set to be iterated.
iter_funcVertex program to be applied on each vertex.
chunk_sizeVertices granularity to be scheduled by threads.
+
+
+ +
+
+ +

◆ ForEach() [4/9]

+ +
+
+
+template<typename ITER_FUNC_T , typename VID_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ParallelEngine::ForEach (const DenseVertexSet< VertexRange< VID_T >> & dense_set,
const VertexRange< VID_T > & range,
const ITER_FUNC_T & iter_func,
int chunk_size = 1024 
)
+
+inline
+
+ +

Iterate on vertexes of a DenseVertexSet concurrently.

+
Template Parameters
+ + + +
ITER_FUNC_TType of vertex program.
VID_TType of vertex id.
+
+
+
Parameters
+ + + + + +
dense_setThe vertex set to be iterated.
rangeThe vertex range to be iterated.
iter_funcVertex program to be applied on each vertex.
chunk_sizeVertices granularity to be scheduled by threads.
+
+
+ +
+
+ +

◆ ForEach() [5/9]

+ +
+
+
+template<typename ITERATOR_T , typename INIT_FUNC_T , typename ITER_FUNC_T , typename FINALIZE_FUNC_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ParallelEngine::ForEach (const ITERATOR_T & begin,
const ITERATOR_T & end,
const INIT_FUNC_T & init_func,
const ITER_FUNC_T & iter_func,
const FINALIZE_FUNC_T & finalize_func,
int chunk_size = 1024 
)
+
+inline
+
+ +

Iterate a range specified by iterator pair concurrently.

+
Template Parameters
+ + + +
ITER_FUNC_TType of vertex program.
ITERATOR_TType of range iterator.
+
+
+
Parameters
+ + + + + + + +
beginThe begin iterator of range.
endThe end iterator of range.
init_funcInitializing function to be invoked by each thread before iterating on vertexes.
iter_funcVertex program to be applied on each vertex.
finalize_funcFinalizing function to be invoked by each thread after iterating on vertexes.
chunk_sizeVertices granularity to be scheduled by threads.
+
+
+ +
+
+ +

◆ ForEach() [6/9]

+ +
+
+
+template<typename INIT_FUNC_T , typename ITER_FUNC_T , typename FINALIZE_FUNC_T , typename VID_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ParallelEngine::ForEach (const VertexRange< VID_T > & range,
const INIT_FUNC_T & init_func,
const ITER_FUNC_T & iter_func,
const FINALIZE_FUNC_T & finalize_func,
int chunk_size = 1024 
)
+
+inline
+
+ +

Iterate on vertexes of a VertexRange concurrently, initialize function and finalize function can be provided to each thread.

+
Template Parameters
+ + + + + +
INIT_FUNC_TType of thread init program.
ITER_FUNC_TType of vertex program.
FINALIZE_FUNC_TType of thread finalize program.
VID_TType of vertex id.
+
+
+
Parameters
+ + + + + + +
rangeThe vertex range to be iterated.
init_funcInitializing function to be invoked by each thread before iterating on vertexes.
iter_funcVertex program to be applied on each vertex.
finalize_funcFinalizing function to be invoked by each thread after iterating on vertexes.
chunk_sizeVertices granularity to be scheduled by threads.
+
+
+ +
+
+ +

◆ ForEach() [7/9]

+ +
+
+
+template<typename ITER_FUNC_T , typename VID_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ParallelEngine::ForEach (const VertexRange< VID_T > & range,
const ITER_FUNC_T & iter_func,
int chunk_size = 1024 
)
+
+inline
+
+ +

Iterate on vertexes of a VertexRange concurrently.

+
Template Parameters
+ + + +
ITER_FUNC_TType of vertex program.
VID_TType of vertex id.
+
+
+
Parameters
+ + + + +
rangeThe vertex range to be iterated.
iter_funcVertex program to be applied on each vertex.
chunk_sizeVertices granularity to be scheduled by threads.
+
+
+ +
+
+ +

◆ ForEach() [8/9]

+ +
+
+
+template<typename INIT_FUNC_T , typename ITER_FUNC_T , typename FINALIZE_FUNC_T , typename VID_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ParallelEngine::ForEach (const VertexVector< VID_T > & vertices,
const INIT_FUNC_T & init_func,
const ITER_FUNC_T & iter_func,
const FINALIZE_FUNC_T & finalize_func,
int chunk_size = 1024 
)
+
+inline
+
+ +

Iterate on discontinuous vertices concurrently, initialize function and finalize function can be provided to each thread.

+
Template Parameters
+ + + + + +
INIT_FUNC_TType of thread init program.
ITER_FUNC_TType of vertex program.
FINALIZE_FUNC_TType of thread finalize program.
VID_TType of vertex id.
+
+
+
Parameters
+ + + + + + +
verticesThe vertex array to be iterated.
init_funcInitializing function to be invoked by each thread before iterating on vertexes.
iter_funcVertex program to be applied on each vertex.
finalize_funcFinalizing function to be invoked by each thread after iterating on vertexes.
chunk_sizeVertices granularity to be scheduled by threads.
+
+
+ +
+
+ +

◆ ForEach() [9/9]

+ +
+
+
+template<typename ITER_FUNC_T , typename VID_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ParallelEngine::ForEach (const VertexVector< VID_T > & vertices,
const ITER_FUNC_T & iter_func,
int chunk_size = 1024 
)
+
+inline
+
+ +

Iterate on discontinuous vertices concurrently.

+
Template Parameters
+ + + +
ITER_FUNC_TType of vertex program.
VID_TType of vertex id.
+
+
+
Parameters
+ + + + +
verticesThe vertex array to be iterated.
iter_funcVertex program to be applied on each vertex.
chunk_sizeVertices granularity to be scheduled by threads.
+
+
+ +
+
+
+ + + + diff --git a/classgrape_1_1ParallelMessageManager-members.html b/classgrape_1_1ParallelMessageManager-members.html new file mode 100644 index 00000000..f495a798 --- /dev/null +++ b/classgrape_1_1ParallelMessageManager-members.html @@ -0,0 +1,134 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::ParallelMessageManager Member List
+
+
+ +

This is the complete list of members for grape::ParallelMessageManager, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Channels() (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerinline
channels_ (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerprivate
comm_ (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerprivate
comm_spec_ (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerprivate
default_msg_send_block_capacity (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerprivatestatic
default_msg_send_block_size (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerprivatestatic
fid_ (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerprivate
Finalize() overridegrape::ParallelMessageManagerinlinevirtual
FinishARound() overridegrape::ParallelMessageManagerinlinevirtual
finishMsgFilling() (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerinlineprivate
fnum_ (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerprivate
force_continue_ (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerprivate
force_terminate_ (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerprivate
ForceContinue() overridegrape::ParallelMessageManagerinlinevirtual
ForceTerminate(const std::string &terminate_info) overridegrape::ParallelMessageManagerinlinevirtual
GetMessageInBuffer(MessageInBuffer &buf)grape::ParallelMessageManagerinline
GetMsgSize() const overridegrape::ParallelMessageManagerinlinevirtual
GetTerminateInfo() const overridegrape::ParallelMessageManagerinlinevirtual
Init(MPI_Comm comm) overridegrape::ParallelMessageManagerinlinevirtual
InitChannels(int channel_num=1, size_t block_size=default_msg_send_block_size, size_t block_cap=default_msg_send_block_capacity)grape::ParallelMessageManagerinline
MessageManagerBase() (defined in grape::MessageManagerBase)grape::MessageManagerBaseinline
ParallelMessageManager() (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerinline
ParallelProcess(int thread_num, const GRAPH_T &frag, const FUNC_T &func)grape::ParallelMessageManagerinline
ParallelProcess(int thread_num, const FUNC_T &func)grape::ParallelMessageManagerinline
probeAllIncomingMessages() (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerinlineprivate
probeIncomingMessages() (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerinlineprivate
recv_queues_ (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerprivate
recv_thread_ (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerprivate
resetRecvQueue() (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerinlineprivate
round_ (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerprivate
send_thread_ (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerprivate
sending_queue_ (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerprivate
SendMsgThroughEdges(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg, int channel_id=0)grape::ParallelMessageManagerinline
SendMsgThroughIEdges(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg, int channel_id=0)grape::ParallelMessageManagerinline
SendMsgThroughOEdges(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg, int channel_id=0)grape::ParallelMessageManagerinline
SendRawMsgByFid(fid_t fid, InArchive &&arc)grape::ParallelMessageManagerinline
SendToFragment(fid_t dst_fid, const MESSAGE_T &msg, int channel_id=0)grape::ParallelMessageManagerinline
sent_size_ (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerprivate
Start() overridegrape::ParallelMessageManagerinlinevirtual
StartARound() overridegrape::ParallelMessageManagerinlinevirtual
startRecvThread() (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerinlineprivate
startSendThread() (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerinlineprivate
stopRecvThread() (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerinlineprivate
SyncStateOnOuterVertex(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg, int channel_id=0)grape::ParallelMessageManagerinline
SyncStateOnOuterVertex(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, int channel_id=0) (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerinline
terminate_info_ (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerprivate
to_others_ (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerprivate
to_self_ (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerprivate
ToTerminate() overridegrape::ParallelMessageManagerinlinevirtual
waitSend() (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerinlineprivate
~MessageManagerBase() (defined in grape::MessageManagerBase)grape::MessageManagerBaseinlinevirtual
~ParallelMessageManager() override (defined in grape::ParallelMessageManager)grape::ParallelMessageManagerinline
+ + + + diff --git a/classgrape_1_1ParallelMessageManager.html b/classgrape_1_1ParallelMessageManager.html new file mode 100644 index 00000000..a00f50a3 --- /dev/null +++ b/classgrape_1_1ParallelMessageManager.html @@ -0,0 +1,861 @@ + + + + + + + +libgrape-lite: grape::ParallelMessageManager Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+ +
+ +

A kind of parallel message manager. + More...

+ +

#include <parallel_message_manager.h>

+
+Inheritance diagram for grape::ParallelMessageManager:
+
+
+ + +grape::MessageManagerBase + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+void Init (MPI_Comm comm) override
 Inherit.
 
+void Start () override
 Inherit.
 
+void StartARound () override
 Inherit.
 
+void FinishARound () override
 Inherit.
 
+bool ToTerminate () override
 Inherit.
 
+void Finalize () override
 Inherit.
 
+void ForceContinue () override
 Inherit.
 
+void ForceTerminate (const std::string &terminate_info) override
 Inherit.
 
+const TerminateInfoGetTerminateInfo () const override
 Inherit.
 
+size_t GetMsgSize () const override
 Inherit.
 
void InitChannels (int channel_num=1, size_t block_size=default_msg_send_block_size, size_t block_cap=default_msg_send_block_capacity)
 Init a set of channels, each channel is a thread local message buffer. More...
 
+std::vector< ThreadLocalMessageBuffer< ParallelMessageManager > > & Channels ()
 
void SendRawMsgByFid (fid_t fid, InArchive &&arc)
 Send a buffer to a fragment. More...
 
template<typename MESSAGE_T >
void SendToFragment (fid_t dst_fid, const MESSAGE_T &msg, int channel_id=0)
 Send message to a fragment. More...
 
template<typename GRAPH_T , typename MESSAGE_T >
void SyncStateOnOuterVertex (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg, int channel_id=0)
 SyncStateOnOuterVertex on a channel. More...
 
+template<typename GRAPH_T >
void SyncStateOnOuterVertex (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, int channel_id=0)
 
template<typename GRAPH_T , typename MESSAGE_T >
void SendMsgThroughIEdges (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg, int channel_id=0)
 SendMsgThroughIEdges on a channel. More...
 
template<typename GRAPH_T , typename MESSAGE_T >
void SendMsgThroughOEdges (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg, int channel_id=0)
 SendMsgThroughOEdges on a channel. More...
 
template<typename GRAPH_T , typename MESSAGE_T >
void SendMsgThroughEdges (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg, int channel_id=0)
 SendMsgThroughEdges on a channel. More...
 
bool GetMessageInBuffer (MessageInBuffer &buf)
 Get a bunch of messages, stored in a MessageInBuffer. More...
 
template<typename GRAPH_T , typename MESSAGE_T , typename FUNC_T >
void ParallelProcess (int thread_num, const GRAPH_T &frag, const FUNC_T &func)
 Parallel process all incoming messages with given function of last round. More...
 
template<typename MESSAGE_T , typename FUNC_T >
void ParallelProcess (int thread_num, const FUNC_T &func)
 Parallel process all incoming messages with given function of last round. More...
 
+ + + + + + + + + + + + + + + + + +

+Private Member Functions

+void startSendThread ()
 
+void probeAllIncomingMessages ()
 
+int probeIncomingMessages ()
 
+void startRecvThread ()
 
+void stopRecvThread ()
 
+size_t finishMsgFilling ()
 
+void resetRecvQueue ()
 
+void waitSend ()
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Private Attributes

+fid_t fid_
 
+fid_t fnum_
 
+CommSpec comm_spec_
 
+MPI_Comm comm_
 
+std::vector< InArchiveto_self_
 
+std::vector< InArchiveto_others_
 
+std::vector< ThreadLocalMessageBuffer< ParallelMessageManager > > channels_
 
+int round_
 
+BlockingQueue< std::pair< fid_t, InArchive > > sending_queue_
 
+std::thread send_thread_
 
+std::array< BlockingQueue< OutArchive >, 2 > recv_queues_
 
+std::thread recv_thread_
 
+bool force_continue_
 
+size_t sent_size_
 
+bool force_terminate_
 
+TerminateInfo terminate_info_
 
+ + + + + +

+Static Private Attributes

+static constexpr size_t default_msg_send_block_size = 2 * 1023 * 1024
 
+static constexpr size_t default_msg_send_block_capacity = 2 * 1023 * 1024
 
+

Detailed Description

+

A kind of parallel message manager.

+

ParallelMessageManager support multi-threads to send messages concurrently with channels. Each channel contains a thread local message buffer.

+

For each thread local message buffer, when accumulated a given amount of messages, the buffer will be sent through MPI.

+

After a round of evaluation, there is a global barrier to determine whether the fixed point is reached.

+

Member Function Documentation

+ +

◆ GetMessageInBuffer()

+ +
+
+ + + + + +
+ + + + + + + + +
bool grape::ParallelMessageManager::GetMessageInBuffer (MessageInBufferbuf)
+
+inline
+
+ +

Get a bunch of messages, stored in a MessageInBuffer.

+
Parameters
+ + +
bufMessage buffer which holds a grape::OutArchive.
+
+
+ +
+
+ +

◆ InitChannels()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ParallelMessageManager::InitChannels (int channel_num = 1,
size_t block_size = default_msg_send_block_size,
size_t block_cap = default_msg_send_block_capacity 
)
+
+inline
+
+ +

Init a set of channels, each channel is a thread local message buffer.

+
Parameters
+ + + + +
channel_numNumber of channels.
block_sizeSize of each channel.
block_capCapacity of each channel.
+
+
+ +
+
+ +

◆ ParallelProcess() [1/2]

+ +
+
+
+template<typename MESSAGE_T , typename FUNC_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void grape::ParallelMessageManager::ParallelProcess (int thread_num,
const FUNC_T & func 
)
+
+inline
+
+ +

Parallel process all incoming messages with given function of last round.

+
Template Parameters
+ + + + +
GRAPH_TGraph type.
MESSAGE_TMessage type.
FUNC_TFunction type.
+
+
+
Parameters
+ + + + +
thread_numNumber of threads.
frag
func
+
+
+ +
+
+ +

◆ ParallelProcess() [2/2]

+ +
+
+
+template<typename GRAPH_T , typename MESSAGE_T , typename FUNC_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ParallelMessageManager::ParallelProcess (int thread_num,
const GRAPH_T & frag,
const FUNC_T & func 
)
+
+inline
+
+ +

Parallel process all incoming messages with given function of last round.

+
Template Parameters
+ + + + +
GRAPH_TGraph type.
MESSAGE_TMessage type.
FUNC_TFunction type.
+
+
+
Parameters
+ + + + +
thread_numNumber of threads.
frag
func
+
+
+ +
+
+ +

◆ SendMsgThroughEdges()

+ +
+
+
+template<typename GRAPH_T , typename MESSAGE_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ParallelMessageManager::SendMsgThroughEdges (const GRAPH_T & frag,
const typename GRAPH_T::vertex_t & v,
const MESSAGE_T & msg,
int channel_id = 0 
)
+
+inline
+
+ +

SendMsgThroughEdges on a channel.

+
Template Parameters
+ + + +
GRAPH_TGraph type.
MESSAGE_TMessage type.
+
+
+
Parameters
+ + + + + +
fragSource fragment.
vSource vertex.
msg
channel_id
+
+
+ +
+
+ +

◆ SendMsgThroughIEdges()

+ +
+
+
+template<typename GRAPH_T , typename MESSAGE_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ParallelMessageManager::SendMsgThroughIEdges (const GRAPH_T & frag,
const typename GRAPH_T::vertex_t & v,
const MESSAGE_T & msg,
int channel_id = 0 
)
+
+inline
+
+ +

SendMsgThroughIEdges on a channel.

+
Template Parameters
+ + + +
GRAPH_TGraph type.
MESSAGE_TMessage type.
+
+
+
Parameters
+ + + + + +
fragSource fragment.
vSource vertex.
msg
channel_id
+
+
+ +
+
+ +

◆ SendMsgThroughOEdges()

+ +
+
+
+template<typename GRAPH_T , typename MESSAGE_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ParallelMessageManager::SendMsgThroughOEdges (const GRAPH_T & frag,
const typename GRAPH_T::vertex_t & v,
const MESSAGE_T & msg,
int channel_id = 0 
)
+
+inline
+
+ +

SendMsgThroughOEdges on a channel.

+
Template Parameters
+ + + +
GRAPH_TGraph type.
MESSAGE_TMessage type.
+
+
+
Parameters
+ + + + + +
fragSource fragment.
vSource vertex.
msg
channel_id
+
+
+ +
+
+ +

◆ SendRawMsgByFid()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void grape::ParallelMessageManager::SendRawMsgByFid (fid_t fid,
InArchive && arc 
)
+
+inline
+
+ +

Send a buffer to a fragment.

+
Parameters
+ + + +
fidDestination fragment id.
arcMessage buffer.
+
+
+ +
+
+ +

◆ SendToFragment()

+ +
+
+
+template<typename MESSAGE_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ParallelMessageManager::SendToFragment (fid_t dst_fid,
const MESSAGE_T & msg,
int channel_id = 0 
)
+
+inline
+
+ +

Send message to a fragment.

+
Template Parameters
+ + +
MESSAGE_TMessage type.
+
+
+
Parameters
+ + + + +
dst_fidDestination fragment id.
msg
channelId
+
+
+ +
+
+ +

◆ SyncStateOnOuterVertex()

+ +
+
+
+template<typename GRAPH_T , typename MESSAGE_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ParallelMessageManager::SyncStateOnOuterVertex (const GRAPH_T & frag,
const typename GRAPH_T::vertex_t & v,
const MESSAGE_T & msg,
int channel_id = 0 
)
+
+inline
+
+ +

SyncStateOnOuterVertex on a channel.

+
Template Parameters
+ + + +
GRAPH_TGraph type.
MESSAGE_TMessage type.
+
+
+
Parameters
+ + + + + +
fragSource fragment.
vSource vertex.
msg
channel_id
+
+
+ +
+
+
+ + + + diff --git a/classgrape_1_1ParallelMessageManager.png b/classgrape_1_1ParallelMessageManager.png new file mode 100644 index 0000000000000000000000000000000000000000..b59d1f6eddbdb930c85a9dd153a3b3ebbb0b8671 GIT binary patch literal 816 zcmeAS@N?(olHy`uVBq!ia0vp^M}RnhgBeH`_G|F~DTx4|5ZC|z{{xvX-h3_XKQsZz z0^*G8R`%pdhYd`I{9gH zS~XiBT;Y;T<=qh3?@O-iSY7dSMa-Mu7CxRz(NEUC_yXOQ`}I>$ zeo9LHml^~FUpg{7xh!GV75Hp(o?rYx{Wb0fFMqLiTz}23QOB5+SYdb6-=XIn%Y}9} z76)M1G1z7}Fnn3S$atZdkU+t@%vsBpcXK|t3D>q-V5KBONL1Tt>8}Nf2Y9DP3%r#O zb*aiSWUjbduu&j-d+hqmthq~xI$fJLIR9E%WVzv-=w*ROvq0Odb1u1ce2HesqRu;a9OW|BI;h++ zB{Pm^>wF&H)VMXG?XwQ$F4t-U#Y_*M;-60@zua@<*2uPe=JyIXR_i+Znxe}x?(dIT zIbN5)^qG^Ef9mo(zuPb4?N=G^F!fctcBfSRtVH?pDN{Zg>8UO~Vb!qW_y6s6r}O^= zF}{kP+o|u&lE^5P74iD*llc0jLZuN6(~`0`&t;gm0v2Lb{}=dPHnEMaXP8`|8B)ga SbO|tdGkCiCxvX + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::ParallelMessageManagerOpt Member List
+
+
+ +

This is the complete list of members for grape::ParallelMessageManagerOpt, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
Channels() (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptinline
channels_ (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptprivate
comm_ (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptprivate
comm_spec_ (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptprivate
default_msg_send_block_capacity (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptprivatestatic
default_msg_send_block_size (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptprivatestatic
fid_ (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptprivate
Finalize() overridegrape::ParallelMessageManagerOptinlinevirtual
FinishARound() overridegrape::ParallelMessageManagerOptinlinevirtual
finishMsgFilling() (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptinlineprivate
fnum_ (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptprivate
force_continue_ (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptprivate
force_terminate_ (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptprivate
ForceContinue() overridegrape::ParallelMessageManagerOptinlinevirtual
ForceTerminate(const std::string &terminate_info) overridegrape::ParallelMessageManagerOptinlinevirtual
GetMessageInBuffer(MessageInBuffer &buf)grape::ParallelMessageManagerOptinline
GetMsgSize() const overridegrape::ParallelMessageManagerOptinlinevirtual
GetPool() (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptinline
GetTerminateInfo() const overridegrape::ParallelMessageManagerOptinlinevirtual
Init(MPI_Comm comm) overridegrape::ParallelMessageManagerOptinlinevirtual
InitChannels(int channel_num=1, size_t block_size=default_msg_send_block_size, size_t block_cap=default_msg_send_block_capacity)grape::ParallelMessageManagerOptinline
MessageManagerBase() (defined in grape::MessageManagerBase)grape::MessageManagerBaseinline
ParallelMessageManagerOpt() (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptinline
ParallelProcess(int thread_num, const GRAPH_T &frag, const FUNC_T &func)grape::ParallelMessageManagerOptinline
ParallelProcess(int thread_num, const FUNC_T &func)grape::ParallelMessageManagerOptinline
ParallelProcessCount(int thread_num, const GRAPH_T &frag, const FUNC_T &func) (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptinline
pool_ (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptprivate
probeAllIncomingMessages() (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptinlineprivate
probeIncomingMessages() (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptinlineprivate
recv_bufs_ (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptprivate
recv_bufs_loc_ (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptprivate
recv_bufs_stash_ (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptprivate
recv_queues_ (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptprivate
recv_thread_ (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptprivate
resetRecvQueue() (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptinlineprivate
round_ (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptprivate
send_thread_ (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptprivate
sending_queue_ (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptprivate
SendMicroBufferByFid(fid_t fid, MicroBuffer &&arc)grape::ParallelMessageManagerOptinline
SendMsgThroughEdges(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg, int channel_id=0)grape::ParallelMessageManagerOptinline
SendMsgThroughIEdges(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg, int channel_id=0)grape::ParallelMessageManagerOptinline
SendMsgThroughOEdges(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg, int channel_id=0)grape::ParallelMessageManagerOptinline
SendToFragment(fid_t dst_fid, const MESSAGE_T &msg, int channel_id=0)grape::ParallelMessageManagerOptinline
sent_size_ (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptprivate
Start() overridegrape::ParallelMessageManagerOptinlinevirtual
StartARound() overridegrape::ParallelMessageManagerOptinlinevirtual
startRecvThread() (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptinlineprivate
startSendThread() (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptinlineprivate
stopRecvThread() (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptinlineprivate
SyncStateOnOuterVertex(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg, int channel_id=0)grape::ParallelMessageManagerOptinline
SyncStateOnOuterVertex(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, int channel_id=0) (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptinline
terminate_info_ (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptprivate
to_self_ (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptprivate
total_sent_size_ (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptprivate
ToTerminate() overridegrape::ParallelMessageManagerOptinlinevirtual
waitSend() (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptinlineprivate
~MessageManagerBase() (defined in grape::MessageManagerBase)grape::MessageManagerBaseinlinevirtual
~ParallelMessageManagerOpt() override (defined in grape::ParallelMessageManagerOpt)grape::ParallelMessageManagerOptinline
+ + + + diff --git a/classgrape_1_1ParallelMessageManagerOpt.html b/classgrape_1_1ParallelMessageManagerOpt.html new file mode 100644 index 00000000..310e2370 --- /dev/null +++ b/classgrape_1_1ParallelMessageManagerOpt.html @@ -0,0 +1,880 @@ + + + + + + + +libgrape-lite: grape::ParallelMessageManagerOpt Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::ParallelMessageManagerOpt Class Reference
+
+
+ +

A optimized version of parallel message manager. + More...

+ +

#include <parallel_message_manager_opt.h>

+
+Inheritance diagram for grape::ParallelMessageManagerOpt:
+
+
+ + +grape::MessageManagerBase + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+void Init (MPI_Comm comm) override
 Inherit.
 
+MessageBufferPoolGetPool ()
 
+void Start () override
 Inherit.
 
+void StartARound () override
 Inherit.
 
+void FinishARound () override
 Inherit.
 
+bool ToTerminate () override
 Inherit.
 
+void Finalize () override
 Inherit.
 
+void ForceContinue () override
 Inherit.
 
+void ForceTerminate (const std::string &terminate_info) override
 Inherit.
 
+const TerminateInfoGetTerminateInfo () const override
 Inherit.
 
+size_t GetMsgSize () const override
 Inherit.
 
void InitChannels (int channel_num=1, size_t block_size=default_msg_send_block_size, size_t block_cap=default_msg_send_block_capacity)
 Init a set of channels, each channel is a thread local message buffer. More...
 
+std::vector< ThreadLocalMessageBufferOpt< ParallelMessageManagerOpt > > & Channels ()
 
void SendMicroBufferByFid (fid_t fid, MicroBuffer &&arc)
 Send a buffer to a fragment. More...
 
template<typename MESSAGE_T >
void SendToFragment (fid_t dst_fid, const MESSAGE_T &msg, int channel_id=0)
 Send message to a fragment. More...
 
template<typename GRAPH_T , typename MESSAGE_T >
void SyncStateOnOuterVertex (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg, int channel_id=0)
 SyncStateOnOuterVertex on a channel. More...
 
+template<typename GRAPH_T >
void SyncStateOnOuterVertex (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, int channel_id=0)
 
template<typename GRAPH_T , typename MESSAGE_T >
void SendMsgThroughIEdges (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg, int channel_id=0)
 SendMsgThroughIEdges on a channel. More...
 
template<typename GRAPH_T , typename MESSAGE_T >
void SendMsgThroughOEdges (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg, int channel_id=0)
 SendMsgThroughOEdges on a channel. More...
 
template<typename GRAPH_T , typename MESSAGE_T >
void SendMsgThroughEdges (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg, int channel_id=0)
 SendMsgThroughEdges on a channel. More...
 
bool GetMessageInBuffer (MessageInBuffer &buf)
 Get a bunch of messages, stored in a MessageInBuffer. More...
 
template<typename GRAPH_T , typename MESSAGE_T , typename FUNC_T >
void ParallelProcess (int thread_num, const GRAPH_T &frag, const FUNC_T &func)
 Parallel process all incoming messages with given function of last round. More...
 
+template<typename GRAPH_T , typename MESSAGE_T , typename FUNC_T >
size_t ParallelProcessCount (int thread_num, const GRAPH_T &frag, const FUNC_T &func)
 
template<typename MESSAGE_T , typename FUNC_T >
void ParallelProcess (int thread_num, const FUNC_T &func)
 Parallel process all incoming messages with given function of last round. More...
 
+ + + + + + + + + + + + + + + + + +

+Private Member Functions

+void startSendThread ()
 
+void probeAllIncomingMessages ()
 
+int probeIncomingMessages ()
 
+void startRecvThread ()
 
+void stopRecvThread ()
 
+size_t finishMsgFilling ()
 
+void resetRecvQueue ()
 
+void waitSend ()
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Private Attributes

+fid_t fid_
 
+fid_t fnum_
 
+CommSpec comm_spec_
 
+MPI_Comm comm_
 
+std::vector< MicroBufferto_self_
 
+std::vector< ThreadLocalMessageBufferOpt< ParallelMessageManagerOpt > > channels_
 
+int round_
 
+BlockingQueue< std::pair< fid_t, MicroBuffer > > sending_queue_
 
+std::thread send_thread_
 
+std::array< BlockingQueue< MicroBuffer >, 2 > recv_queues_
 
+std::array< MessageBuffer, 2 > recv_bufs_
 
+std::array< size_t, 2 > recv_bufs_loc_
 
+std::array< std::vector< MessageBuffer >, 2 > recv_bufs_stash_
 
+std::thread recv_thread_
 
+bool force_continue_
 
+size_t sent_size_
 
+size_t total_sent_size_
 
+bool force_terminate_
 
+TerminateInfo terminate_info_
 
+MessageBufferPool pool_
 
+ + + + + +

+Static Private Attributes

+static constexpr size_t default_msg_send_block_size = 2 * 1023 * 1024
 
+static constexpr size_t default_msg_send_block_capacity = 2 * 1024 * 1024
 
+

Detailed Description

+

A optimized version of parallel message manager.

+

ParallelMessageManagerOpt support multi-threads to send messages concurrently with channels. Each channel contains a thread local message buffer.

+

For each thread local message buffer, when accumulated a given amount of messages, the buffer will be sent through MPI.

+

After a round of evaluation, there is a global barrier to determine whether the fixed point is reached.

+

Member Function Documentation

+ +

◆ GetMessageInBuffer()

+ +
+
+ + + + + +
+ + + + + + + + +
bool grape::ParallelMessageManagerOpt::GetMessageInBuffer (MessageInBufferbuf)
+
+inline
+
+ +

Get a bunch of messages, stored in a MessageInBuffer.

+
Parameters
+ + +
bufMessage buffer which holds a grape::OutArchive.
+
+
+ +
+
+ +

◆ InitChannels()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ParallelMessageManagerOpt::InitChannels (int channel_num = 1,
size_t block_size = default_msg_send_block_size,
size_t block_cap = default_msg_send_block_capacity 
)
+
+inline
+
+ +

Init a set of channels, each channel is a thread local message buffer.

+
Parameters
+ + + + +
channel_numNumber of channels.
block_sizeSize of each channel.
block_capCapacity of each channel.
+
+
+ +
+
+ +

◆ ParallelProcess() [1/2]

+ +
+
+
+template<typename MESSAGE_T , typename FUNC_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void grape::ParallelMessageManagerOpt::ParallelProcess (int thread_num,
const FUNC_T & func 
)
+
+inline
+
+ +

Parallel process all incoming messages with given function of last round.

+
Template Parameters
+ + + + +
GRAPH_TGraph type.
MESSAGE_TMessage type.
FUNC_TFunction type.
+
+
+
Parameters
+ + + + +
thread_numNumber of threads.
frag
func
+
+
+ +
+
+ +

◆ ParallelProcess() [2/2]

+ +
+
+
+template<typename GRAPH_T , typename MESSAGE_T , typename FUNC_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ParallelMessageManagerOpt::ParallelProcess (int thread_num,
const GRAPH_T & frag,
const FUNC_T & func 
)
+
+inline
+
+ +

Parallel process all incoming messages with given function of last round.

+
Template Parameters
+ + + + +
GRAPH_TGraph type.
MESSAGE_TMessage type.
FUNC_TFunction type.
+
+
+
Parameters
+ + + + +
thread_numNumber of threads.
frag
func
+
+
+ +
+
+ +

◆ SendMicroBufferByFid()

+ +
+
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void grape::ParallelMessageManagerOpt::SendMicroBufferByFid (fid_t fid,
MicroBuffer && arc 
)
+
+inline
+
+ +

Send a buffer to a fragment.

+
Parameters
+ + + +
fidDestination fragment id.
arcMessage buffer.
+
+
+ +
+
+ +

◆ SendMsgThroughEdges()

+ +
+
+
+template<typename GRAPH_T , typename MESSAGE_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ParallelMessageManagerOpt::SendMsgThroughEdges (const GRAPH_T & frag,
const typename GRAPH_T::vertex_t & v,
const MESSAGE_T & msg,
int channel_id = 0 
)
+
+inline
+
+ +

SendMsgThroughEdges on a channel.

+
Template Parameters
+ + + +
GRAPH_TGraph type.
MESSAGE_TMessage type.
+
+
+
Parameters
+ + + + + +
fragSource fragment.
vSource vertex.
msg
channel_id
+
+
+ +
+
+ +

◆ SendMsgThroughIEdges()

+ +
+
+
+template<typename GRAPH_T , typename MESSAGE_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ParallelMessageManagerOpt::SendMsgThroughIEdges (const GRAPH_T & frag,
const typename GRAPH_T::vertex_t & v,
const MESSAGE_T & msg,
int channel_id = 0 
)
+
+inline
+
+ +

SendMsgThroughIEdges on a channel.

+
Template Parameters
+ + + +
GRAPH_TGraph type.
MESSAGE_TMessage type.
+
+
+
Parameters
+ + + + + +
fragSource fragment.
vSource vertex.
msg
channel_id
+
+
+ +
+
+ +

◆ SendMsgThroughOEdges()

+ +
+
+
+template<typename GRAPH_T , typename MESSAGE_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ParallelMessageManagerOpt::SendMsgThroughOEdges (const GRAPH_T & frag,
const typename GRAPH_T::vertex_t & v,
const MESSAGE_T & msg,
int channel_id = 0 
)
+
+inline
+
+ +

SendMsgThroughOEdges on a channel.

+
Template Parameters
+ + + +
GRAPH_TGraph type.
MESSAGE_TMessage type.
+
+
+
Parameters
+ + + + + +
fragSource fragment.
vSource vertex.
msg
channel_id
+
+
+ +
+
+ +

◆ SendToFragment()

+ +
+
+
+template<typename MESSAGE_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ParallelMessageManagerOpt::SendToFragment (fid_t dst_fid,
const MESSAGE_T & msg,
int channel_id = 0 
)
+
+inline
+
+ +

Send message to a fragment.

+
Template Parameters
+ + +
MESSAGE_TMessage type.
+
+
+
Parameters
+ + + + +
dst_fidDestination fragment id.
msg
channelId
+
+
+ +
+
+ +

◆ SyncStateOnOuterVertex()

+ +
+
+
+template<typename GRAPH_T , typename MESSAGE_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ParallelMessageManagerOpt::SyncStateOnOuterVertex (const GRAPH_T & frag,
const typename GRAPH_T::vertex_t & v,
const MESSAGE_T & msg,
int channel_id = 0 
)
+
+inline
+
+ +

SyncStateOnOuterVertex on a channel.

+
Template Parameters
+ + + +
GRAPH_TGraph type.
MESSAGE_TMessage type.
+
+
+
Parameters
+ + + + + +
fragSource fragment.
vSource vertex.
msg
channel_id
+
+
+ +
+
+
+ + + + diff --git a/classgrape_1_1ParallelMessageManagerOpt.png b/classgrape_1_1ParallelMessageManagerOpt.png new file mode 100644 index 0000000000000000000000000000000000000000..7738e89fa07dfda92b5b70781ed65966970a71a3 GIT binary patch literal 851 zcmeAS@N?(olHy`uVBq!ia0vp^H-I>RgBeKr$a-f1DTx4|5ZC|z{{xvX-h3_XKQsZz z0^VjWACse_@|VRhL*MFPZnn^hVI1=}XM39)0?) z?kWGedV|P&zZ>d$=Hicp-iZDvU-i~}?e*7&t_GGjb-vgAuQu7_SfZ&`b}gDoJwkBN z*;{P43%*$feR%varySQe{jy~*=GI`ti^)Oiwi$K{%Y{s zZSL;JPBq-qp4nc%KBrMR@N)c|X%8}D{#4ld_&wTU(O>vmr;aUbT}5Hi*^3*#uGD0Uhk(Ge-JG8>?$$XESIO)yzd7r}<+U-vM@4n@TG%N@&mow~@ zW|Z5pWXdC%?FVlaGDl=>y~eoU3iI>{feg2`|9_i(?ZMX>dwdoY&)R!==IlnMHyg_K zyC1G#ovy^5zL(YBvh1>Qqb;)`b@OIi-vL`$0)yB3N#^E`fZ{I%p=Htp#f z1Gg{QX)ndL=EM4&sXH}$KhC(gJRwi?(9eC0&;I7!-MHN)PrAD(jP-PA;d-mv$3vDR zy`9`?uD@#0({yu~q-VKw*4K@Hce>p=6;;V`1QX3FG9x zaA9dF^O?PE{|k;MMKnxXw + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::RefBitset Member List
+
+
+ +

This is the complete list of members for grape::RefBitset, including all inherited members.

+ + + + + + + + + + +
begin (defined in grape::RefBitset)grape::RefBitset
data (defined in grape::RefBitset)grape::RefBitset
end (defined in grape::RefBitset)grape::RefBitset
get_bit(size_t loc) const (defined in grape::RefBitset)grape::RefBitsetinline
get_word_by_index(size_t index) (defined in grape::RefBitset)grape::RefBitsetinline
get_word_num() const (defined in grape::RefBitset)grape::RefBitsetinline
RefBitset() (defined in grape::RefBitset)grape::RefBitsetinline
RefBitset(void *d, size_t b, size_t e) (defined in grape::RefBitset)grape::RefBitsetinline
~RefBitset() (defined in grape::RefBitset)grape::RefBitsetinline
+ + + + diff --git a/classgrape_1_1RefBitset.html b/classgrape_1_1RefBitset.html new file mode 100644 index 00000000..703cf717 --- /dev/null +++ b/classgrape_1_1RefBitset.html @@ -0,0 +1,111 @@ + + + + + + + +libgrape-lite: grape::RefBitset Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::RefBitset Class Reference
+
+
+ + + + + + + + + + +

+Public Member Functions

RefBitset (void *d, size_t b, size_t e)
 
+bool get_bit (size_t loc) const
 
+uint64_t get_word_by_index (size_t index)
 
+size_t get_word_num () const
 
+ + + + + + + +

+Public Attributes

+uint64_t * data
 
+size_t begin
 
+size_t end
 
+
+ + + + diff --git a/classgrape_1_1SegmentedPartitioner-members.html b/classgrape_1_1SegmentedPartitioner-members.html new file mode 100644 index 00000000..1ba3f07b --- /dev/null +++ b/classgrape_1_1SegmentedPartitioner-members.html @@ -0,0 +1,93 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::SegmentedPartitioner< OID_T > Member List
+
+
+ +

This is the complete list of members for grape::SegmentedPartitioner< OID_T >, including all inherited members.

+ + + + + + + + + + + + +
deserialize(std::unique_ptr< IOADAPTOR_T > &reader) (defined in grape::SegmentedPartitioner< OID_T >)grape::SegmentedPartitioner< OID_T >inline
fnum_ (defined in grape::SegmentedPartitioner< OID_T >)grape::SegmentedPartitioner< OID_T >private
GetPartitionId(const OID_T &oid) const (defined in grape::SegmentedPartitioner< OID_T >)grape::SegmentedPartitioner< OID_T >inline
o2f_ (defined in grape::SegmentedPartitioner< OID_T >)grape::SegmentedPartitioner< OID_T >private
operator=(const SegmentedPartitioner &other) (defined in grape::SegmentedPartitioner< OID_T >)grape::SegmentedPartitioner< OID_T >inline
operator=(SegmentedPartitioner &&other) (defined in grape::SegmentedPartitioner< OID_T >)grape::SegmentedPartitioner< OID_T >inline
SegmentedPartitioner() (defined in grape::SegmentedPartitioner< OID_T >)grape::SegmentedPartitioner< OID_T >inline
SegmentedPartitioner(size_t frag_num) (defined in grape::SegmentedPartitioner< OID_T >)grape::SegmentedPartitioner< OID_T >inlineexplicit
SegmentedPartitioner(size_t frag_num, std::vector< OID_T > &oid_list) (defined in grape::SegmentedPartitioner< OID_T >)grape::SegmentedPartitioner< OID_T >inline
serialize(std::unique_ptr< IOADAPTOR_T > &writer) (defined in grape::SegmentedPartitioner< OID_T >)grape::SegmentedPartitioner< OID_T >inline
SetPartitionId(const OID_T &oid, fid_t fid) (defined in grape::SegmentedPartitioner< OID_T >)grape::SegmentedPartitioner< OID_T >inline
+ + + + diff --git a/classgrape_1_1SegmentedPartitioner.html b/classgrape_1_1SegmentedPartitioner.html new file mode 100644 index 00000000..3a2f43a1 --- /dev/null +++ b/classgrape_1_1SegmentedPartitioner.html @@ -0,0 +1,138 @@ + + + + + + + +libgrape-lite: grape::SegmentedPartitioner< OID_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::SegmentedPartitioner< OID_T > Class Template Reference
+
+
+ +

SegmentedPartitioner is a partitioner with a strategy of chunking original vertex_ids. + More...

+ +

#include <partitioner.h>

+ + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

SegmentedPartitioner (size_t frag_num)
 
SegmentedPartitioner (size_t frag_num, std::vector< OID_T > &oid_list)
 
+fid_t GetPartitionId (const OID_T &oid) const
 
+void SetPartitionId (const OID_T &oid, fid_t fid)
 
+SegmentedPartitioneroperator= (const SegmentedPartitioner &other)
 
+SegmentedPartitioneroperator= (SegmentedPartitioner &&other)
 
+template<typename IOADAPTOR_T >
void serialize (std::unique_ptr< IOADAPTOR_T > &writer)
 
+template<typename IOADAPTOR_T >
void deserialize (std::unique_ptr< IOADAPTOR_T > &reader)
 
+ + + + + +

+Private Attributes

+fid_t fnum_
 
+ska::flat_hash_map< OID_T, fid_t > o2f_
 
+

Detailed Description

+

template<typename OID_T>
+class grape::SegmentedPartitioner< OID_T >

+ +

SegmentedPartitioner is a partitioner with a strategy of chunking original vertex_ids.

+
Template Parameters
+ + +
OID_T
+
+
+
+ + + + diff --git a/classgrape_1_1SegmentedPartitioner_3_01std_1_1string_01_4-members.html b/classgrape_1_1SegmentedPartitioner_3_01std_1_1string_01_4-members.html new file mode 100644 index 00000000..b80bed0a --- /dev/null +++ b/classgrape_1_1SegmentedPartitioner_3_01std_1_1string_01_4-members.html @@ -0,0 +1,97 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::SegmentedPartitioner< std::string > Member List
+
+
+ +

This is the complete list of members for grape::SegmentedPartitioner< std::string >, including all inherited members.

+ + + + + + + + + + + + + + + + +
deserialize(std::unique_ptr< IOADAPTOR_T > &reader) (defined in grape::SegmentedPartitioner< std::string >)grape::SegmentedPartitioner< std::string >inline
fnum_ (defined in grape::SegmentedPartitioner< std::string >)grape::SegmentedPartitioner< std::string >private
GetPartitionId(const oid_t &oid) const (defined in grape::SegmentedPartitioner< std::string >)grape::SegmentedPartitioner< std::string >inline
GetPartitionId(const internal_oid_t &oid) const (defined in grape::SegmentedPartitioner< std::string >)grape::SegmentedPartitioner< std::string >inline
internal_oid_t typedef (defined in grape::SegmentedPartitioner< std::string >)grape::SegmentedPartitioner< std::string >private
o2f_ (defined in grape::SegmentedPartitioner< std::string >)grape::SegmentedPartitioner< std::string >private
oid_t typedef (defined in grape::SegmentedPartitioner< std::string >)grape::SegmentedPartitioner< std::string >private
operator=(const SegmentedPartitioner &other) (defined in grape::SegmentedPartitioner< std::string >)grape::SegmentedPartitioner< std::string >inline
operator=(SegmentedPartitioner &&other) (defined in grape::SegmentedPartitioner< std::string >)grape::SegmentedPartitioner< std::string >inline
SegmentedPartitioner() (defined in grape::SegmentedPartitioner< std::string >)grape::SegmentedPartitioner< std::string >inline
SegmentedPartitioner(size_t frag_num) (defined in grape::SegmentedPartitioner< std::string >)grape::SegmentedPartitioner< std::string >inlineexplicit
SegmentedPartitioner(size_t frag_num, std::vector< oid_t > &oid_list) (defined in grape::SegmentedPartitioner< std::string >)grape::SegmentedPartitioner< std::string >inline
serialize(std::unique_ptr< IOADAPTOR_T > &writer) (defined in grape::SegmentedPartitioner< std::string >)grape::SegmentedPartitioner< std::string >inline
SetPartitionId(const oid_t &oid, fid_t fid) (defined in grape::SegmentedPartitioner< std::string >)grape::SegmentedPartitioner< std::string >inline
SetPartitionId(const internal_oid_t &oid, fid_t fid) (defined in grape::SegmentedPartitioner< std::string >)grape::SegmentedPartitioner< std::string >inline
+ + + + diff --git a/classgrape_1_1SegmentedPartitioner_3_01std_1_1string_01_4.html b/classgrape_1_1SegmentedPartitioner_3_01std_1_1string_01_4.html new file mode 100644 index 00000000..4ead5e6b --- /dev/null +++ b/classgrape_1_1SegmentedPartitioner_3_01std_1_1string_01_4.html @@ -0,0 +1,138 @@ + + + + + + + +libgrape-lite: grape::SegmentedPartitioner< std::string > Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::SegmentedPartitioner< std::string > Class Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

SegmentedPartitioner (size_t frag_num)
 
SegmentedPartitioner (size_t frag_num, std::vector< oid_t > &oid_list)
 
+fid_t GetPartitionId (const oid_t &oid) const
 
+fid_t GetPartitionId (const internal_oid_t &oid) const
 
+void SetPartitionId (const oid_t &oid, fid_t fid)
 
+void SetPartitionId (const internal_oid_t &oid, fid_t fid)
 
+SegmentedPartitioneroperator= (const SegmentedPartitioner &other)
 
+SegmentedPartitioneroperator= (SegmentedPartitioner &&other)
 
+template<typename IOADAPTOR_T >
void serialize (std::unique_ptr< IOADAPTOR_T > &writer)
 
+template<typename IOADAPTOR_T >
void deserialize (std::unique_ptr< IOADAPTOR_T > &reader)
 
+ + + + + +

+Private Types

+using oid_t = std::string
 
+using internal_oid_t = nonstd::string_view
 
+ + + + + +

+Private Attributes

+fid_t fnum_
 
+ska::flat_hash_map< oid_t, fid_t > o2f_
 
+
+ + + + diff --git a/classgrape_1_1ShuffleIn-members.html b/classgrape_1_1ShuffleIn-members.html new file mode 100644 index 00000000..607431b4 --- /dev/null +++ b/classgrape_1_1ShuffleIn-members.html @@ -0,0 +1,97 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::ShuffleIn< TYPES > Member List
+
+
+ +

This is the complete list of members for grape::ShuffleIn< TYPES >, including all inherited members.

+ + + + + + + + + + + + + + + + +
buffers() (defined in grape::ShuffleIn< TYPES >)grape::ShuffleIn< TYPES >inline
buffers() const (defined in grape::ShuffleIn< TYPES >)grape::ShuffleIn< TYPES >inline
buffers_ (defined in grape::ShuffleIn< TYPES >)grape::ShuffleIn< TYPES >private
Clear() (defined in grape::ShuffleIn< TYPES >)grape::ShuffleIn< TYPES >inline
comm_ (defined in grape::ShuffleIn< TYPES >)grape::ShuffleIn< TYPES >private
current_size_ (defined in grape::ShuffleIn< TYPES >)grape::ShuffleIn< TYPES >private
Finished() (defined in grape::ShuffleIn< TYPES >)grape::ShuffleIn< TYPES >inline
Init(fid_t fnum, MPI_Comm comm, int tag=0) (defined in grape::ShuffleIn< TYPES >)grape::ShuffleIn< TYPES >inline
Recv(fid_t &fid) (defined in grape::ShuffleIn< TYPES >)grape::ShuffleIn< TYPES >inline
RecvFrom(int src_worker_id) (defined in grape::ShuffleIn< TYPES >)grape::ShuffleIn< TYPES >inline
remaining_frag_num_ (defined in grape::ShuffleIn< TYPES >)grape::ShuffleIn< TYPES >private
ShuffleIn() (defined in grape::ShuffleIn< TYPES >)grape::ShuffleIn< TYPES >inline
Size() const (defined in grape::ShuffleIn< TYPES >)grape::ShuffleIn< TYPES >inline
tag_ (defined in grape::ShuffleIn< TYPES >)grape::ShuffleIn< TYPES >private
~ShuffleIn() (defined in grape::ShuffleIn< TYPES >)grape::ShuffleIn< TYPES >inline
+ + + + diff --git a/classgrape_1_1ShuffleIn.html b/classgrape_1_1ShuffleIn.html new file mode 100644 index 00000000..955e7c37 --- /dev/null +++ b/classgrape_1_1ShuffleIn.html @@ -0,0 +1,129 @@ + + + + + + + +libgrape-lite: grape::ShuffleIn< TYPES > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::ShuffleIn< TYPES > Class Template Reference
+
+
+ + + + + + + + + + + + + + + + + + +

+Public Member Functions

+void Init (fid_t fnum, MPI_Comm comm, int tag=0)
 
+int Recv (fid_t &fid)
 
+int RecvFrom (int src_worker_id)
 
+bool Finished ()
 
+void Clear ()
 
+size_t Size () const
 
+ShuffleBufferTuple< TYPES... > & buffers ()
 
+const ShuffleBufferTuple< TYPES... > & buffers () const
 
+ + + + + + + + + + + +

+Private Attributes

+ShuffleBufferTuple< TYPES... > buffers_
 
+fid_t remaining_frag_num_
 
+int tag_
 
+size_t current_size_
 
+MPI_Comm comm_
 
+
+ + + + diff --git a/classgrape_1_1ShuffleOut-members.html b/classgrape_1_1ShuffleOut-members.html new file mode 100644 index 00000000..f9c20273 --- /dev/null +++ b/classgrape_1_1ShuffleOut-members.html @@ -0,0 +1,103 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::ShuffleOut< TYPES > Member List
+
+
+ +

This is the complete list of members for grape::ShuffleOut< TYPES >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + +
AppendBuffers(const typename ShuffleBuffer< TYPES >::type &... bx) (defined in grape::ShuffleOut< TYPES >)grape::ShuffleOut< TYPES >inline
AppendBuffers(typename ShuffleBuffer< TYPES >::type &&... bx) (defined in grape::ShuffleOut< TYPES >)grape::ShuffleOut< TYPES >inline
buffers() (defined in grape::ShuffleOut< TYPES >)grape::ShuffleOut< TYPES >inline
buffers() const (defined in grape::ShuffleOut< TYPES >)grape::ShuffleOut< TYPES >inline
buffers_ (defined in grape::ShuffleOut< TYPES >)grape::ShuffleOut< TYPES >private
chunk_size_ (defined in grape::ShuffleOut< TYPES >)grape::ShuffleOut< TYPES >private
Clear() (defined in grape::ShuffleOut< TYPES >)grape::ShuffleOut< TYPES >inline
comm_ (defined in grape::ShuffleOut< TYPES >)grape::ShuffleOut< TYPES >private
comm_disabled_ (defined in grape::ShuffleOut< TYPES >)grape::ShuffleOut< TYPES >private
current_size_ (defined in grape::ShuffleOut< TYPES >)grape::ShuffleOut< TYPES >private
DisableComm() (defined in grape::ShuffleOut< TYPES >)grape::ShuffleOut< TYPES >inline
dst_frag_id_ (defined in grape::ShuffleOut< TYPES >)grape::ShuffleOut< TYPES >private
dst_worker_id_ (defined in grape::ShuffleOut< TYPES >)grape::ShuffleOut< TYPES >private
Emplace(const TYPES &... rest) (defined in grape::ShuffleOut< TYPES >)grape::ShuffleOut< TYPES >inline
Flush() (defined in grape::ShuffleOut< TYPES >)grape::ShuffleOut< TYPES >inline
Init(MPI_Comm comm, int tag=0, size_t cs=4096) (defined in grape::ShuffleOut< TYPES >)grape::ShuffleOut< TYPES >inline
issue() (defined in grape::ShuffleOut< TYPES >)grape::ShuffleOut< TYPES >inlineprivate
SetDestination(int dst_worker_id, fid_t dst_frag_id) (defined in grape::ShuffleOut< TYPES >)grape::ShuffleOut< TYPES >inline
ShuffleOut() (defined in grape::ShuffleOut< TYPES >)grape::ShuffleOut< TYPES >inline
tag_ (defined in grape::ShuffleOut< TYPES >)grape::ShuffleOut< TYPES >private
~ShuffleOut() (defined in grape::ShuffleOut< TYPES >)grape::ShuffleOut< TYPES >inline
+ + + + diff --git a/classgrape_1_1ShuffleOut.html b/classgrape_1_1ShuffleOut.html new file mode 100644 index 00000000..bfef055e --- /dev/null +++ b/classgrape_1_1ShuffleOut.html @@ -0,0 +1,151 @@ + + + + + + + +libgrape-lite: grape::ShuffleOut< TYPES > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::ShuffleOut< TYPES > Class Template Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+void Init (MPI_Comm comm, int tag=0, size_t cs=4096)
 
+void DisableComm ()
 
+void SetDestination (int dst_worker_id, fid_t dst_frag_id)
 
+void Clear ()
 
+void Emplace (const TYPES &... rest)
 
+void AppendBuffers (const typename ShuffleBuffer< TYPES >::type &... bx)
 
+void AppendBuffers (typename ShuffleBuffer< TYPES >::type &&... bx)
 
+void Flush ()
 
+ShuffleBufferTuple< TYPES... > & buffers ()
 
+const ShuffleBufferTuple< TYPES... > & buffers () const
 
+ + + +

+Private Member Functions

+void issue ()
 
+ + + + + + + + + + + + + + + + + +

+Private Attributes

+ShuffleBufferTuple< TYPES... > buffers_
 
+size_t chunk_size_
 
+size_t current_size_
 
+int dst_worker_id_
 
+fid_t dst_frag_id_
 
+int tag_
 
+bool comm_disabled_
 
+MPI_Comm comm_
 
+
+ + + + diff --git a/classgrape_1_1SpinLock-members.html b/classgrape_1_1SpinLock-members.html new file mode 100644 index 00000000..7be00853 --- /dev/null +++ b/classgrape_1_1SpinLock-members.html @@ -0,0 +1,85 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::SpinLock Member List
+
+
+ +

This is the complete list of members for grape::SpinLock, including all inherited members.

+ + + + +
lock() (defined in grape::SpinLock)grape::SpinLockinline
locked (defined in grape::SpinLock)grape::SpinLockprivate
unlock() (defined in grape::SpinLock)grape::SpinLockinline
+ + + + diff --git a/classgrape_1_1SpinLock.html b/classgrape_1_1SpinLock.html new file mode 100644 index 00000000..d3247cf5 --- /dev/null +++ b/classgrape_1_1SpinLock.html @@ -0,0 +1,106 @@ + + + + + + + +libgrape-lite: grape::SpinLock Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::SpinLock Class Reference
+
+
+ +

A simple implementation of spinlock based on std::atomic. + More...

+ +

#include <concurrent_queue.h>

+ + + + + + +

+Public Member Functions

+void lock ()
 
+void unlock ()
 
+ + + +

+Private Attributes

+std::atomic_flag locked = ATOMIC_FLAG_INIT
 
+

Detailed Description

+

A simple implementation of spinlock based on std::atomic.

+
+ + + + diff --git a/classgrape_1_1StringViewVector-members.html b/classgrape_1_1StringViewVector-members.html new file mode 100644 index 00000000..9cf9478b --- /dev/null +++ b/classgrape_1_1StringViewVector-members.html @@ -0,0 +1,96 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::StringViewVector Member List
+
+
+ +

This is the complete list of members for grape::StringViewVector, including all inherited members.

+ + + + + + + + + + + + + + + +
buffer_ (defined in grape::StringViewVector)grape::StringViewVectorprivate
clear() (defined in grape::StringViewVector)grape::StringViewVectorinline
content_buffer() (defined in grape::StringViewVector)grape::StringViewVectorinline
content_buffer() const (defined in grape::StringViewVector)grape::StringViewVectorinline
emplace_back(const nonstd::string_view &val) (defined in grape::StringViewVector)grape::StringViewVectorinline
offset_buffer() (defined in grape::StringViewVector)grape::StringViewVectorinline
offset_buffer() const (defined in grape::StringViewVector)grape::StringViewVectorinline
offsets_ (defined in grape::StringViewVector)grape::StringViewVectorprivate
operator[](size_t index) const (defined in grape::StringViewVector)grape::StringViewVectorinline
push_back(const nonstd::string_view &val) (defined in grape::StringViewVector)grape::StringViewVectorinline
size() const (defined in grape::StringViewVector)grape::StringViewVectorinline
StringViewVector() (defined in grape::StringViewVector)grape::StringViewVectorinline
swap(StringViewVector &rhs) (defined in grape::StringViewVector)grape::StringViewVectorinline
~StringViewVector() (defined in grape::StringViewVector)grape::StringViewVectorinline
+ + + + diff --git a/classgrape_1_1StringViewVector.html b/classgrape_1_1StringViewVector.html new file mode 100644 index 00000000..2a313c05 --- /dev/null +++ b/classgrape_1_1StringViewVector.html @@ -0,0 +1,126 @@ + + + + + + + +libgrape-lite: grape::StringViewVector Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::StringViewVector Class Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+void push_back (const nonstd::string_view &val)
 
+void emplace_back (const nonstd::string_view &val)
 
+size_t size () const
 
+nonstd::string_view operator[] (size_t index) const
 
+std::vector< char > & content_buffer ()
 
+const std::vector< char > & content_buffer () const
 
+std::vector< size_t > & offset_buffer ()
 
+const std::vector< size_t > & offset_buffer () const
 
+void clear ()
 
+void swap (StringViewVector &rhs)
 
+ + + + + +

+Private Attributes

+std::vector< char > buffer_
 
+std::vector< size_t > offsets_
 
+
+ + + + diff --git a/classgrape_1_1SyncBuffer-members.html b/classgrape_1_1SyncBuffer-members.html new file mode 100644 index 00000000..81acefe1 --- /dev/null +++ b/classgrape_1_1SyncBuffer-members.html @@ -0,0 +1,106 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::SyncBuffer< VERTEX_SET_T, T > Member List
+
+
+ +

This is the complete list of members for grape::SyncBuffer< VERTEX_SET_T, T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + +
Aggregate(const vertex_t v, T &&rhs) (defined in grape::SyncBuffer< VERTEX_SET_T, T >)grape::SyncBuffer< VERTEX_SET_T, T >inline
aggregator_ (defined in grape::SyncBuffer< VERTEX_SET_T, T >)grape::SyncBuffer< VERTEX_SET_T, T >private
base() (defined in grape::ISyncBuffer)grape::ISyncBufferinline
data() override (defined in grape::SyncBuffer< VERTEX_SET_T, T >)grape::SyncBuffer< VERTEX_SET_T, T >inlinevirtual
data_ (defined in grape::SyncBuffer< VERTEX_SET_T, T >)grape::SyncBuffer< VERTEX_SET_T, T >private
GetTypeId() const override (defined in grape::SyncBuffer< VERTEX_SET_T, T >)grape::SyncBuffer< VERTEX_SET_T, T >inlinevirtual
GetValue(const vertex_t &v) (defined in grape::SyncBuffer< VERTEX_SET_T, T >)grape::SyncBuffer< VERTEX_SET_T, T >inline
Init(const VERTEX_SET_T &range, const T &value, const std::function< bool(T *, T &&)> &aggregator) (defined in grape::SyncBuffer< VERTEX_SET_T, T >)grape::SyncBuffer< VERTEX_SET_T, T >inline
internal_data_ (defined in grape::SyncBuffer< VERTEX_SET_T, T >)grape::SyncBuffer< VERTEX_SET_T, T >private
IsUpdated(const vertex_t &v) (defined in grape::SyncBuffer< VERTEX_SET_T, T >)grape::SyncBuffer< VERTEX_SET_T, T >inline
operator[](const vertex_t &v) (defined in grape::SyncBuffer< VERTEX_SET_T, T >)grape::SyncBuffer< VERTEX_SET_T, T >inline
operator[](const vertex_t &v) const (defined in grape::SyncBuffer< VERTEX_SET_T, T >)grape::SyncBuffer< VERTEX_SET_T, T >inline
range_ (defined in grape::SyncBuffer< VERTEX_SET_T, T >)grape::SyncBuffer< VERTEX_SET_T, T >private
Reset(const vertex_t &v) (defined in grape::SyncBuffer< VERTEX_SET_T, T >)grape::SyncBuffer< VERTEX_SET_T, T >inline
Reset(const VERTEX_SET_T &range) (defined in grape::SyncBuffer< VERTEX_SET_T, T >)grape::SyncBuffer< VERTEX_SET_T, T >inline
SetUpdated(const vertex_t &v) (defined in grape::SyncBuffer< VERTEX_SET_T, T >)grape::SyncBuffer< VERTEX_SET_T, T >inline
SetValue(const vertex_t &v, const T &value) (defined in grape::SyncBuffer< VERTEX_SET_T, T >)grape::SyncBuffer< VERTEX_SET_T, T >inline
Swap(SyncBuffer &rhs) (defined in grape::SyncBuffer< VERTEX_SET_T, T >)grape::SyncBuffer< VERTEX_SET_T, T >inline
SyncBuffer() (defined in grape::SyncBuffer< VERTEX_SET_T, T >)grape::SyncBuffer< VERTEX_SET_T, T >inline
SyncBuffer(VertexArray< VERTEX_SET_T, T > &data) (defined in grape::SyncBuffer< VERTEX_SET_T, T >)grape::SyncBuffer< VERTEX_SET_T, T >inlineexplicit
updated(size_t begin, size_t length) const override (defined in grape::SyncBuffer< VERTEX_SET_T, T >)grape::SyncBuffer< VERTEX_SET_T, T >inlinevirtual
updated_ (defined in grape::SyncBuffer< VERTEX_SET_T, T >)grape::SyncBuffer< VERTEX_SET_T, T >private
vertex_t typedef (defined in grape::SyncBuffer< VERTEX_SET_T, T >)grape::SyncBuffer< VERTEX_SET_T, T >private
~ISyncBuffer()=default (defined in grape::ISyncBuffer)grape::ISyncBuffervirtual
+ + + + diff --git a/classgrape_1_1SyncBuffer.html b/classgrape_1_1SyncBuffer.html new file mode 100644 index 00000000..35c4fca1 --- /dev/null +++ b/classgrape_1_1SyncBuffer.html @@ -0,0 +1,188 @@ + + + + + + + +libgrape-lite: grape::SyncBuffer< VERTEX_SET_T, T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::SyncBuffer< VERTEX_SET_T, T > Class Template Reference
+
+
+ +

SyncBuffer manages status on each vertex during the evaluation in auto parallization. + More...

+ +

#include <sync_buffer.h>

+
+Inheritance diagram for grape::SyncBuffer< VERTEX_SET_T, T >:
+
+
+ + +grape::ISyncBuffer + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

SyncBuffer (VertexArray< VERTEX_SET_T, T > &data)
 
+bool updated (size_t begin, size_t length) const override
 
+void * data () override
 
+const std::type_info & GetTypeId () const override
 
+void Init (const VERTEX_SET_T &range, const T &value, const std::function< bool(T *, T &&)> &aggregator)
 
+void SetValue (const vertex_t &v, const T &value)
 
+T & GetValue (const vertex_t &v)
 
+bool IsUpdated (const vertex_t &v)
 
+void SetUpdated (const vertex_t &v)
 
+void Reset (const vertex_t &v)
 
+void Reset (const VERTEX_SET_T &range)
 
+T & operator[] (const vertex_t &v)
 
+const T & operator[] (const vertex_t &v) const
 
+void Swap (SyncBuffer &rhs)
 
+void Aggregate (const vertex_t v, T &&rhs)
 
- Public Member Functions inherited from grape::ISyncBuffer
+template<typename T >
T * base ()
 
+ + + +

+Private Types

+using vertex_t = typename VERTEX_SET_T::vertex_t
 
+ + + + + + + + + + + +

+Private Attributes

+VertexArray< VERTEX_SET_T, T > internal_data_
 
+VertexArray< VERTEX_SET_T, T > & data_
 
+VertexArray< VERTEX_SET_T, bool > updated_
 
+VERTEX_SET_T range_
 
+std::function< bool(T *, T &&)> aggregator_
 
+

Detailed Description

+

template<typename VERTEX_SET_T, typename T>
+class grape::SyncBuffer< VERTEX_SET_T, T >

+ +

SyncBuffer manages status on each vertex during the evaluation in auto parallization.

+
Template Parameters
+ + + +
VERTEX_SET_T
T
+
+
+
+ + + + diff --git a/classgrape_1_1SyncBuffer.png b/classgrape_1_1SyncBuffer.png new file mode 100644 index 0000000000000000000000000000000000000000..fec90f923fb3547c39b94709b3b62a072b19bbfe GIT binary patch literal 821 zcmeAS@N?(olHy`uVBq!ia0vp^KY%!ZgBeINJ9z8@QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;hMH8R8ATMXWli>Nlxms~*e#=c+q*KFRoNTsUJ&>IbH$<*6TP>@s&N*S4$d zUGe%rv8UeF$ed(RWy}5BSDVdU=k8~$YT%`75!7j?IkDr=bY?h8=W6BUNLMmIl!ot z*}&{_iGjUi2_v6?C$o&gBsL2N72bjdpaBdM(G+~RJZo8ImxfwH1x)hg?FXkFSYBxO zdS|OMmP`qoX8Ur%-{*#9n{&&e?QW*{_-#*%dtc1b6L)yueLu-I%4p*M`nw^!C!DuozSr_2@vE>;Ee6@f>x#y9HT-u{H#A)L3;DPEa-Ht|iL>+B_x#Ee7QFsAb@g^>`E6f6 zOX_c4z#Z4tReb!;lbvT|_x4P$FcG)h@7=Ng+z)TteXX0A@A;;O_Esv*VJuIN{S*Dc zoPT@XvD}&4cxzbRRo@Bmk!{#@qh4SS(8N{ilPi9HRkpsKE8CQN`dabJ+zr>iF3*-L ze|FGJ{`tL+vLE(t__AyH=UWV4zJAp@kY4&A{_^AW{<;S1)Qb1rtFJ2m&sjOY>c@YN ueT@4;o-bth@!u2{^s+UxmT4~d$Jlt@WZmB)3qfESXYh3Ob6Mw<&;$TdCXFHh literal 0 HcmV?d00001 diff --git a/classgrape_1_1TSVLineParser-members.html b/classgrape_1_1TSVLineParser-members.html new file mode 100644 index 00000000..455db40e --- /dev/null +++ b/classgrape_1_1TSVLineParser-members.html @@ -0,0 +1,90 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::TSVLineParser< OID_T, VDATA_T, EDATA_T > Member List
+
+
+ +

This is the complete list of members for grape::TSVLineParser< OID_T, VDATA_T, EDATA_T >, including all inherited members.

+ + + + + + + + + +
LineParserBase()=default (defined in grape::LineParserBase< OID_T, VDATA_T, EDATA_T >)grape::LineParserBase< OID_T, VDATA_T, EDATA_T >
LineParserForEFile(const std::string &line, OID_T &u, OID_T &v, EDATA_T &e_data)grape::TSVLineParser< OID_T, VDATA_T, EDATA_T >inlinevirtual
LineParserForEverything(const std::string &line, Ts &... vals) (defined in grape::TSVLineParser< OID_T, VDATA_T, EDATA_T >)grape::TSVLineParser< OID_T, VDATA_T, EDATA_T >inlineprivate
LineParserForEverything(const char *head, T &val) (defined in grape::TSVLineParser< OID_T, VDATA_T, EDATA_T >)grape::TSVLineParser< OID_T, VDATA_T, EDATA_T >inlineprivate
LineParserForEverything(const char *head, T &val, Ts &... vals) (defined in grape::TSVLineParser< OID_T, VDATA_T, EDATA_T >)grape::TSVLineParser< OID_T, VDATA_T, EDATA_T >inlineprivate
LineParserForVFile(const std::string &line, OID_T &u, VDATA_T &u_data)grape::TSVLineParser< OID_T, VDATA_T, EDATA_T >inlinevirtual
TSVLineParser() (defined in grape::TSVLineParser< OID_T, VDATA_T, EDATA_T >)grape::TSVLineParser< OID_T, VDATA_T, EDATA_T >inline
~LineParserBase()=default (defined in grape::LineParserBase< OID_T, VDATA_T, EDATA_T >)grape::LineParserBase< OID_T, VDATA_T, EDATA_T >virtual
+ + + + diff --git a/classgrape_1_1TSVLineParser.html b/classgrape_1_1TSVLineParser.html new file mode 100644 index 00000000..8da44121 --- /dev/null +++ b/classgrape_1_1TSVLineParser.html @@ -0,0 +1,255 @@ + + + + + + + +libgrape-lite: grape::TSVLineParser< OID_T, VDATA_T, EDATA_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::TSVLineParser< OID_T, VDATA_T, EDATA_T > Class Template Reference
+
+
+ +

a default parser for tsv files. + More...

+ +

#include <tsv_line_parser.h>

+
+Inheritance diagram for grape::TSVLineParser< OID_T, VDATA_T, EDATA_T >:
+
+
+ + +grape::LineParserBase< OID_T, VDATA_T, EDATA_T > + +
+ + + + + + + + +

+Public Member Functions

virtual void LineParserForEFile (const std::string &line, OID_T &u, OID_T &v, EDATA_T &e_data)
 parser of edge file, to parse source vertex_id, destination vertex_id from a line. More...
 
virtual void LineParserForVFile (const std::string &line, OID_T &u, VDATA_T &u_data)
 parser of vertex file, to parse vertex_id and vertex_data from a string. More...
 
+ + + + + + + + + + +

+Private Member Functions

+template<typename... Ts>
const char * LineParserForEverything (const std::string &line, Ts &... vals)
 
+template<typename T >
const char * LineParserForEverything (const char *head, T &val)
 
+template<typename T , typename... Ts>
const char * LineParserForEverything (const char *head, T &val, Ts &... vals)
 
+

Detailed Description

+

template<typename OID_T, typename VDATA_T, typename EDATA_T>
+class grape::TSVLineParser< OID_T, VDATA_T, EDATA_T >

+ +

a default parser for tsv files.

+
Template Parameters
+ + + + +
OID_T
VDATA_T
EDATA_T
+
+
+

Member Function Documentation

+ +

◆ LineParserForEFile()

+ +
+
+
+template<typename OID_T , typename VDATA_T , typename EDATA_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
virtual void grape::TSVLineParser< OID_T, VDATA_T, EDATA_T >::LineParserForEFile (const std::string & line,
OID_T & u,
OID_T & v,
EDATA_T & e_data 
)
+
+inlinevirtual
+
+ +

parser of edge file, to parse source vertex_id, destination vertex_id from a line.

+
Parameters
+ + + + + +
line
u
v
e_data
+
+
+ +

Implements grape::LineParserBase< OID_T, VDATA_T, EDATA_T >.

+ +
+
+ +

◆ LineParserForVFile()

+ +
+
+
+template<typename OID_T , typename VDATA_T , typename EDATA_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual void grape::TSVLineParser< OID_T, VDATA_T, EDATA_T >::LineParserForVFile (const std::string & line,
OID_T & u,
VDATA_T & v_data 
)
+
+inlinevirtual
+
+ +

parser of vertex file, to parse vertex_id and vertex_data from a string.

+
Parameters
+ + + + +
line
u
v_data
+
+
+ +

Implements grape::LineParserBase< OID_T, VDATA_T, EDATA_T >.

+ +
+
+
+ + + + diff --git a/classgrape_1_1TSVLineParser.png b/classgrape_1_1TSVLineParser.png new file mode 100644 index 0000000000000000000000000000000000000000..69b22838b633f5bcc4163bff3e3e1f4f2d0c1618 GIT binary patch literal 1165 zcmeAS@N?(olHy`uVBq!ia0y~yVDtg912~w0r0eB9mOx4(z$e7@|Ns9$=8HF9OZyK^ z0J6aNz<~p-opbNw?ESA? zA1mC%yTrTcYv$xV-`1(Na?AAmon9Jy{mQO&ulGc#YN~o}_L?zCWJ!yrrz4!Pi@Uf` z{@Ks(^HplEY>iv`+%C}g#oZGAQ}w@Vq+@p9imYzm`}aly-!c`;Qem&4<=K04j=$F} zYu@ABni>7?O8+$~p=JJe($G?;^H}~CsaO>*1`_?mfZH;Dhoyn>< zSYyCAXV+1NnrntjZtQw^@AUcjsDCN9efy&OdD{%)w``ZqIliS;?i+ZYt4VtxX4e+^m)&*2-VfjI zl`mekfA6>7d-eT)nG{Jbn}7e;HR~%^y5*HWFLNxFIF!@GZIB<{V0Yln^;_;6H0K5) zlFsspl`ZEC(&rucGWqNEnwl`P^lhtm1)sfr%8>K(x`UDD)?BU8-|~L?`qS$eZVIL3 zm+I=g6EX9aZg)3jzq7mIyJp&!?a%b$QUink@B6fyjls|NqI_&d!~NwymmbZ}n_yh8 zenz*hMvY;|I$+{qIB+`tv)y*)B@B8ic0Oa!Y*0s!`Kp64(^5TkPjB*hEzi*6va{=1 SlnSuyVDNPHb6Mw<&;$V4k|hiP literal 0 HcmV?d00001 diff --git a/classgrape_1_1ThreadLocalMessageBuffer-members.html b/classgrape_1_1ThreadLocalMessageBuffer-members.html new file mode 100644 index 00000000..16c2b704 --- /dev/null +++ b/classgrape_1_1ThreadLocalMessageBuffer-members.html @@ -0,0 +1,99 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::ThreadLocalMessageBuffer< MM_T > Member List
+
+
+ +

This is the complete list of members for grape::ThreadLocalMessageBuffer< MM_T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + +
block_cap_ (defined in grape::ThreadLocalMessageBuffer< MM_T >)grape::ThreadLocalMessageBuffer< MM_T >private
block_size_ (defined in grape::ThreadLocalMessageBuffer< MM_T >)grape::ThreadLocalMessageBuffer< MM_T >private
flushLocalBuffer(fid_t fid) (defined in grape::ThreadLocalMessageBuffer< MM_T >)grape::ThreadLocalMessageBuffer< MM_T >inlineprivate
FlushMessages()grape::ThreadLocalMessageBuffer< MM_T >inline
fnum_ (defined in grape::ThreadLocalMessageBuffer< MM_T >)grape::ThreadLocalMessageBuffer< MM_T >private
Init(fid_t fnum, MM_T *mm, size_t block_size, size_t block_cap)grape::ThreadLocalMessageBuffer< MM_T >inline
mm_ (defined in grape::ThreadLocalMessageBuffer< MM_T >)grape::ThreadLocalMessageBuffer< MM_T >private
Reset() (defined in grape::ThreadLocalMessageBuffer< MM_T >)grape::ThreadLocalMessageBuffer< MM_T >inline
SendMsgThroughEdges(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)grape::ThreadLocalMessageBuffer< MM_T >inline
SendMsgThroughIEdges(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)grape::ThreadLocalMessageBuffer< MM_T >inline
SendMsgThroughOEdges(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)grape::ThreadLocalMessageBuffer< MM_T >inline
SendToFragment(fid_t dst_fid, const MESSAGE_T &msg)grape::ThreadLocalMessageBuffer< MM_T >inline
sent_size_ (defined in grape::ThreadLocalMessageBuffer< MM_T >)grape::ThreadLocalMessageBuffer< MM_T >private
SentMsgSize() const (defined in grape::ThreadLocalMessageBuffer< MM_T >)grape::ThreadLocalMessageBuffer< MM_T >inline
SyncStateOnOuterVertex(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)grape::ThreadLocalMessageBuffer< MM_T >inline
SyncStateOnOuterVertex(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v) (defined in grape::ThreadLocalMessageBuffer< MM_T >)grape::ThreadLocalMessageBuffer< MM_T >inline
to_send_ (defined in grape::ThreadLocalMessageBuffer< MM_T >)grape::ThreadLocalMessageBuffer< MM_T >private
+ + + + diff --git a/classgrape_1_1ThreadLocalMessageBuffer.html b/classgrape_1_1ThreadLocalMessageBuffer.html new file mode 100644 index 00000000..1ef849ab --- /dev/null +++ b/classgrape_1_1ThreadLocalMessageBuffer.html @@ -0,0 +1,522 @@ + + + + + + + +libgrape-lite: grape::ThreadLocalMessageBuffer< MM_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::ThreadLocalMessageBuffer< MM_T > Class Template Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

void Init (fid_t fnum, MM_T *mm, size_t block_size, size_t block_cap)
 Initialize thread local message buffer. More...
 
template<typename GRAPH_T , typename MESSAGE_T >
void SyncStateOnOuterVertex (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)
 Communication by synchronizing the status on outer vertices, for edge-cut fragments. More...
 
+template<typename GRAPH_T >
void SyncStateOnOuterVertex (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v)
 
template<typename GRAPH_T , typename MESSAGE_T >
void SendMsgThroughIEdges (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)
 Communication via a crossing edge a<-c. It sends message from a to c. More...
 
template<typename GRAPH_T , typename MESSAGE_T >
void SendMsgThroughOEdges (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)
 Communication via a crossing edge a->b. It sends message from a to b. More...
 
template<typename GRAPH_T , typename MESSAGE_T >
void SendMsgThroughEdges (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)
 Communication via crossing edges a->b and a<-c. It sends message from a to b and c. More...
 
template<typename MESSAGE_T >
void SendToFragment (fid_t dst_fid, const MESSAGE_T &msg)
 Send message to a fragment. More...
 
+void FlushMessages ()
 Flush messages to message manager.
 
+size_t SentMsgSize () const
 
+void Reset ()
 
+ + + +

+Private Member Functions

+void flushLocalBuffer (fid_t fid)
 
+ + + + + + + + + + + + + +

+Private Attributes

+std::vector< InArchiveto_send_
 
+MM_T * mm_
 
+fid_t fnum_
 
+size_t block_size_
 
+size_t block_cap_
 
+size_t sent_size_
 
+

Member Function Documentation

+ +

◆ Init()

+ +
+
+
+template<typename MM_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ThreadLocalMessageBuffer< MM_T >::Init (fid_t fnum,
MM_T * mm,
size_t block_size,
size_t block_cap 
)
+
+inline
+
+ +

Initialize thread local message buffer.

+
Parameters
+ + + + + +
fnumNumber of fragments.
mmMessageManager pointer.
block_sizeSize of thread local message buffer.
block_capCapacity of thread local message buffer.
+
+
+ +
+
+ +

◆ SendMsgThroughEdges()

+ +
+
+
+template<typename MM_T >
+
+template<typename GRAPH_T , typename MESSAGE_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ThreadLocalMessageBuffer< MM_T >::SendMsgThroughEdges (const GRAPH_T & frag,
const typename GRAPH_T::vertex_t & v,
const MESSAGE_T & msg 
)
+
+inline
+
+ +

Communication via crossing edges a->b and a<-c. It sends message from a to b and c.

+
Template Parameters
+ + + +
GRAPH_TGraph type.
MESSAGE_TMessage type.
+
+
+
Parameters
+ + + + +
fragSource fragment.
va
msg
+
+
+ +
+
+ +

◆ SendMsgThroughIEdges()

+ +
+
+
+template<typename MM_T >
+
+template<typename GRAPH_T , typename MESSAGE_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ThreadLocalMessageBuffer< MM_T >::SendMsgThroughIEdges (const GRAPH_T & frag,
const typename GRAPH_T::vertex_t & v,
const MESSAGE_T & msg 
)
+
+inline
+
+ +

Communication via a crossing edge a<-c. It sends message from a to c.

+
Template Parameters
+ + + +
GRAPH_TGraph type.
MESSAGE_TMessage type,
+
+
+
Parameters
+ + + + +
fragSource fragment.
va
msg
+
+
+ +
+
+ +

◆ SendMsgThroughOEdges()

+ +
+
+
+template<typename MM_T >
+
+template<typename GRAPH_T , typename MESSAGE_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ThreadLocalMessageBuffer< MM_T >::SendMsgThroughOEdges (const GRAPH_T & frag,
const typename GRAPH_T::vertex_t & v,
const MESSAGE_T & msg 
)
+
+inline
+
+ +

Communication via a crossing edge a->b. It sends message from a to b.

+
Template Parameters
+ + + +
GRAPH_TGraph type.
MESSAGE_TMessage type.
+
+
+
Parameters
+ + + + +
fragSource fragment.
va
msg
+
+
+ +
+
+ +

◆ SendToFragment()

+ +
+
+
+template<typename MM_T >
+
+template<typename MESSAGE_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void grape::ThreadLocalMessageBuffer< MM_T >::SendToFragment (fid_t dst_fid,
const MESSAGE_T & msg 
)
+
+inline
+
+ +

Send message to a fragment.

+
Template Parameters
+ + +
MESSAGE_TMessage type.
+
+
+
Parameters
+ + + +
dst_fidDestination fragment id.
msg
+
+
+ +
+
+ +

◆ SyncStateOnOuterVertex()

+ +
+
+
+template<typename MM_T >
+
+template<typename GRAPH_T , typename MESSAGE_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ThreadLocalMessageBuffer< MM_T >::SyncStateOnOuterVertex (const GRAPH_T & frag,
const typename GRAPH_T::vertex_t & v,
const MESSAGE_T & msg 
)
+
+inline
+
+ +

Communication by synchronizing the status on outer vertices, for edge-cut fragments.

+

Assume a fragment F_1, a crossing edge a->b' in F_1 and a is an inner vertex in F_1. This function invoked on F_1 send status on b' to b on F_2, where b is an inner vertex.

+
Template Parameters
+ + + +
GRAPH_TGraph type.
MESSAGE_TMessage type,
+
+
+
Parameters
+ + + + +
fragSource fragment.
va
msg
+
+
+ +
+
+
+ + + + diff --git a/classgrape_1_1ThreadLocalMessageBufferOpt-members.html b/classgrape_1_1ThreadLocalMessageBufferOpt-members.html new file mode 100644 index 00000000..a2ab2300 --- /dev/null +++ b/classgrape_1_1ThreadLocalMessageBufferOpt-members.html @@ -0,0 +1,112 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::ThreadLocalMessageBufferOpt< MM_T > Member List
+
+
+ +

This is the complete list of members for grape::ThreadLocalMessageBufferOpt< MM_T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
block_size_ (defined in grape::ThreadLocalMessageBufferOpt< MM_T >)grape::ThreadLocalMessageBufferOpt< MM_T >private
fid_ (defined in grape::ThreadLocalMessageBufferOpt< MM_T >)grape::ThreadLocalMessageBufferOpt< MM_T >private
flushLocalBuffer(fid_t fid) (defined in grape::ThreadLocalMessageBufferOpt< MM_T >)grape::ThreadLocalMessageBufferOpt< MM_T >inlineprivate
FlushMessages()grape::ThreadLocalMessageBufferOpt< MM_T >inline
fnum_ (defined in grape::ThreadLocalMessageBufferOpt< MM_T >)grape::ThreadLocalMessageBufferOpt< MM_T >private
Init(fid_t fid, fid_t fnum, MM_T *mm, MessageBufferPool *pool)grape::ThreadLocalMessageBufferOpt< MM_T >inline
last_round_to_self_ (defined in grape::ThreadLocalMessageBufferOpt< MM_T >)grape::ThreadLocalMessageBufferOpt< MM_T >private
mm_ (defined in grape::ThreadLocalMessageBufferOpt< MM_T >)grape::ThreadLocalMessageBufferOpt< MM_T >private
pool_ (defined in grape::ThreadLocalMessageBufferOpt< MM_T >)grape::ThreadLocalMessageBufferOpt< MM_T >private
Prepare() (defined in grape::ThreadLocalMessageBufferOpt< MM_T >)grape::ThreadLocalMessageBufferOpt< MM_T >inline
Reset() (defined in grape::ThreadLocalMessageBufferOpt< MM_T >)grape::ThreadLocalMessageBufferOpt< MM_T >inline
SendMsgThroughEdges(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)grape::ThreadLocalMessageBufferOpt< MM_T >inline
SendMsgThroughEdges(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg) (defined in grape::ThreadLocalMessageBufferOpt< MM_T >)grape::ThreadLocalMessageBufferOpt< MM_T >inline
SendMsgThroughIEdges(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)grape::ThreadLocalMessageBufferOpt< MM_T >inline
SendMsgThroughIEdges(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg) (defined in grape::ThreadLocalMessageBufferOpt< MM_T >)grape::ThreadLocalMessageBufferOpt< MM_T >inline
SendMsgThroughOEdges(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)grape::ThreadLocalMessageBufferOpt< MM_T >inline
SendMsgThroughOEdges(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg) (defined in grape::ThreadLocalMessageBufferOpt< MM_T >)grape::ThreadLocalMessageBufferOpt< MM_T >inline
SendToFragment(fid_t dst_fid, const MESSAGE_T &msg)grape::ThreadLocalMessageBufferOpt< MM_T >inline
SendToFragment(fid_t dst_fid, const MESSAGE_T &msg) (defined in grape::ThreadLocalMessageBufferOpt< MM_T >)grape::ThreadLocalMessageBufferOpt< MM_T >inline
sent_size_ (defined in grape::ThreadLocalMessageBufferOpt< MM_T >)grape::ThreadLocalMessageBufferOpt< MM_T >private
SentMsgSize() const (defined in grape::ThreadLocalMessageBufferOpt< MM_T >)grape::ThreadLocalMessageBufferOpt< MM_T >inline
SetBlockSize(size_t block_size) (defined in grape::ThreadLocalMessageBufferOpt< MM_T >)grape::ThreadLocalMessageBufferOpt< MM_T >inline
SyncStateOnOuterVertex(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)grape::ThreadLocalMessageBufferOpt< MM_T >inline
SyncStateOnOuterVertex(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg) (defined in grape::ThreadLocalMessageBufferOpt< MM_T >)grape::ThreadLocalMessageBufferOpt< MM_T >inline
SyncStateOnOuterVertex(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v) (defined in grape::ThreadLocalMessageBufferOpt< MM_T >)grape::ThreadLocalMessageBufferOpt< MM_T >inline
this_round_to_others_ (defined in grape::ThreadLocalMessageBufferOpt< MM_T >)grape::ThreadLocalMessageBufferOpt< MM_T >private
this_round_to_self_ (defined in grape::ThreadLocalMessageBufferOpt< MM_T >)grape::ThreadLocalMessageBufferOpt< MM_T >private
ThreadLocalMessageBufferOpt() (defined in grape::ThreadLocalMessageBufferOpt< MM_T >)grape::ThreadLocalMessageBufferOpt< MM_T >inline
ThreadLocalMessageBufferOpt(ThreadLocalMessageBufferOpt &&rhs) (defined in grape::ThreadLocalMessageBufferOpt< MM_T >)grape::ThreadLocalMessageBufferOpt< MM_T >inline
to_send_ (defined in grape::ThreadLocalMessageBufferOpt< MM_T >)grape::ThreadLocalMessageBufferOpt< MM_T >private
+ + + + diff --git a/classgrape_1_1ThreadLocalMessageBufferOpt.html b/classgrape_1_1ThreadLocalMessageBufferOpt.html new file mode 100644 index 00000000..e5faecaa --- /dev/null +++ b/classgrape_1_1ThreadLocalMessageBufferOpt.html @@ -0,0 +1,563 @@ + + + + + + + +libgrape-lite: grape::ThreadLocalMessageBufferOpt< MM_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::ThreadLocalMessageBufferOpt< MM_T > Class Template Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

ThreadLocalMessageBufferOpt (ThreadLocalMessageBufferOpt &&rhs)
 
void Init (fid_t fid, fid_t fnum, MM_T *mm, MessageBufferPool *pool)
 Initialize thread local message buffer. More...
 
+void SetBlockSize (size_t block_size)
 
+void Prepare ()
 
template<typename GRAPH_T , typename MESSAGE_T >
std::enable_if< std::is_pod< MESSAGE_T >::value, void >::type SyncStateOnOuterVertex (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)
 Communication by synchronizing the status on outer vertices, for edge-cut fragments. More...
 
+template<typename GRAPH_T , typename MESSAGE_T >
std::enable_if<!std::is_pod< MESSAGE_T >::value, void >::type SyncStateOnOuterVertex (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)
 
+template<typename GRAPH_T >
void SyncStateOnOuterVertex (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v)
 
template<typename GRAPH_T , typename MESSAGE_T >
std::enable_if< std::is_pod< MESSAGE_T >::value, void >::type SendMsgThroughIEdges (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)
 Communication via a crossing edge a<-c. It sends message from a to c. More...
 
+template<typename GRAPH_T , typename MESSAGE_T >
std::enable_if<!std::is_pod< MESSAGE_T >::value, void >::type SendMsgThroughIEdges (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)
 
template<typename GRAPH_T , typename MESSAGE_T >
std::enable_if< std::is_pod< MESSAGE_T >::value, void >::type SendMsgThroughOEdges (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)
 Communication via a crossing edge a->b. It sends message from a to b. More...
 
+template<typename GRAPH_T , typename MESSAGE_T >
std::enable_if<!std::is_pod< MESSAGE_T >::value, void >::type SendMsgThroughOEdges (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)
 
template<typename GRAPH_T , typename MESSAGE_T >
std::enable_if< std::is_pod< MESSAGE_T >::value, void >::type SendMsgThroughEdges (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)
 Communication via crossing edges a->b and a<-c. It sends message from a to b and c. More...
 
+template<typename GRAPH_T , typename MESSAGE_T >
std::enable_if<!std::is_pod< MESSAGE_T >::value, void >::type SendMsgThroughEdges (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)
 
template<typename MESSAGE_T >
std::enable_if< std::is_pod< MESSAGE_T >::value, void >::type SendToFragment (fid_t dst_fid, const MESSAGE_T &msg)
 Send message to a fragment. More...
 
+template<typename MESSAGE_T >
std::enable_if<!std::is_pod< MESSAGE_T >::value, void >::type SendToFragment (fid_t dst_fid, const MESSAGE_T &msg)
 
+void FlushMessages ()
 Flush messages to message manager.
 
+size_t SentMsgSize () const
 
+void Reset ()
 
+ + + +

+Private Member Functions

+void flushLocalBuffer (fid_t fid)
 
+ + + + + + + + + + + + + + + + + + + + + +

+Private Attributes

+std::vector< FixedInArchiveto_send_
 
+MM_T * mm_
 
+fid_t fid_
 
+fid_t fnum_
 
+size_t sent_size_
 
+size_t block_size_
 
+std::deque< MessageBufferlast_round_to_self_
 
+std::deque< MessageBufferthis_round_to_self_
 
+std::deque< MessageBufferthis_round_to_others_
 
+MessageBufferPoolpool_
 
+

Member Function Documentation

+ +

◆ Init()

+ +
+
+
+template<typename MM_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
void grape::ThreadLocalMessageBufferOpt< MM_T >::Init (fid_t fid,
fid_t fnum,
MM_T * mm,
MessageBufferPoolpool 
)
+
+inline
+
+ +

Initialize thread local message buffer.

+
Parameters
+ + + + + +
fnumNumber of fragments.
mmMessageManager pointer.
block_sizeSize of thread local message buffer.
block_capCapacity of thread local message buffer.
+
+
+ +
+
+ +

◆ SendMsgThroughEdges()

+ +
+
+
+template<typename MM_T >
+
+template<typename GRAPH_T , typename MESSAGE_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
std::enable_if<std::is_pod<MESSAGE_T>::value, void>::type grape::ThreadLocalMessageBufferOpt< MM_T >::SendMsgThroughEdges (const GRAPH_T & frag,
const typename GRAPH_T::vertex_t & v,
const MESSAGE_T & msg 
)
+
+inline
+
+ +

Communication via crossing edges a->b and a<-c. It sends message from a to b and c.

+
Template Parameters
+ + + +
GRAPH_TGraph type.
MESSAGE_TMessage type.
+
+
+
Parameters
+ + + + +
fragSource fragment.
va
msg
+
+
+ +
+
+ +

◆ SendMsgThroughIEdges()

+ +
+
+
+template<typename MM_T >
+
+template<typename GRAPH_T , typename MESSAGE_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
std::enable_if<std::is_pod<MESSAGE_T>::value, void>::type grape::ThreadLocalMessageBufferOpt< MM_T >::SendMsgThroughIEdges (const GRAPH_T & frag,
const typename GRAPH_T::vertex_t & v,
const MESSAGE_T & msg 
)
+
+inline
+
+ +

Communication via a crossing edge a<-c. It sends message from a to c.

+
Template Parameters
+ + + +
GRAPH_TGraph type.
MESSAGE_TMessage type,
+
+
+
Parameters
+ + + + +
fragSource fragment.
va
msg
+
+
+ +
+
+ +

◆ SendMsgThroughOEdges()

+ +
+
+
+template<typename MM_T >
+
+template<typename GRAPH_T , typename MESSAGE_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
std::enable_if<std::is_pod<MESSAGE_T>::value, void>::type grape::ThreadLocalMessageBufferOpt< MM_T >::SendMsgThroughOEdges (const GRAPH_T & frag,
const typename GRAPH_T::vertex_t & v,
const MESSAGE_T & msg 
)
+
+inline
+
+ +

Communication via a crossing edge a->b. It sends message from a to b.

+
Template Parameters
+ + + +
GRAPH_TGraph type.
MESSAGE_TMessage type.
+
+
+
Parameters
+ + + + +
fragSource fragment.
va
msg
+
+
+ +
+
+ +

◆ SendToFragment()

+ +
+
+
+template<typename MM_T >
+
+template<typename MESSAGE_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
std::enable_if<std::is_pod<MESSAGE_T>::value, void>::type grape::ThreadLocalMessageBufferOpt< MM_T >::SendToFragment (fid_t dst_fid,
const MESSAGE_T & msg 
)
+
+inline
+
+ +

Send message to a fragment.

+
Template Parameters
+ + +
MESSAGE_TMessage type.
+
+
+
Parameters
+ + + +
dst_fidDestination fragment id.
msg
+
+
+ +
+
+ +

◆ SyncStateOnOuterVertex()

+ +
+
+
+template<typename MM_T >
+
+template<typename GRAPH_T , typename MESSAGE_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
std::enable_if<std::is_pod<MESSAGE_T>::value, void>::type grape::ThreadLocalMessageBufferOpt< MM_T >::SyncStateOnOuterVertex (const GRAPH_T & frag,
const typename GRAPH_T::vertex_t & v,
const MESSAGE_T & msg 
)
+
+inline
+
+ +

Communication by synchronizing the status on outer vertices, for edge-cut fragments.

+

Assume a fragment F_1, a crossing edge a->b' in F_1 and a is an inner vertex in F_1. This function invoked on F_1 send status on b' to b on F_2, where b is an inner vertex.

+
Template Parameters
+ + + +
GRAPH_TGraph type.
MESSAGE_TMessage type,
+
+
+
Parameters
+ + + + +
fragSource fragment.
va
msg
+
+
+ +
+
+
+ + + + diff --git a/classgrape_1_1VarintDecoder-members.html b/classgrape_1_1VarintDecoder-members.html new file mode 100644 index 00000000..0fb97c06 --- /dev/null +++ b/classgrape_1_1VarintDecoder-members.html @@ -0,0 +1,93 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::VarintDecoder Member List
+
+
+ +

This is the complete list of members for grape::VarintDecoder, including all inherited members.

+ + + + + + + + + + + + +
data() const (defined in grape::VarintDecoder)grape::VarintDecoderinline
decode_u32() (defined in grape::VarintDecoder)grape::VarintDecoderinline
decode_u64() (defined in grape::VarintDecoder)grape::VarintDecoderinline
empty() const (defined in grape::VarintDecoder)grape::VarintDecoderinline
limit() const (defined in grape::VarintDecoder)grape::VarintDecoderinline
limit_ (defined in grape::VarintDecoder)grape::VarintDecoderprivate
p_ (defined in grape::VarintDecoder)grape::VarintDecoderprivate
reset(const char *p, size_t size) (defined in grape::VarintDecoder)grape::VarintDecoderinline
size() const (defined in grape::VarintDecoder)grape::VarintDecoderinline
VarintDecoder(const char *p, size_t size) (defined in grape::VarintDecoder)grape::VarintDecoderinline
~VarintDecoder()=default (defined in grape::VarintDecoder)grape::VarintDecoder
+ + + + diff --git a/classgrape_1_1VarintDecoder.html b/classgrape_1_1VarintDecoder.html new file mode 100644 index 00000000..009fd6b9 --- /dev/null +++ b/classgrape_1_1VarintDecoder.html @@ -0,0 +1,120 @@ + + + + + + + +libgrape-lite: grape::VarintDecoder Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::VarintDecoder Class Reference
+
+
+ + + + + + + + + + + + + + + + + + +

+Public Member Functions

VarintDecoder (const char *p, size_t size)
 
+void reset (const char *p, size_t size)
 
+bool empty () const
 
+uint32_t decode_u32 ()
 
+uint64_t decode_u64 ()
 
+size_t size () const
 
+const uint8_t * data () const
 
+const uint8_t * limit () const
 
+ + + + + +

+Private Attributes

+const uint8_t * p_
 
+const uint8_t * limit_
 
+
+ + + + diff --git a/classgrape_1_1VarintEncoder-members.html b/classgrape_1_1VarintEncoder-members.html new file mode 100644 index 00000000..15b260a5 --- /dev/null +++ b/classgrape_1_1VarintEncoder-members.html @@ -0,0 +1,92 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::VarintEncoder Member List
+
+
+ +

This is the complete list of members for grape::VarintEncoder, including all inherited members.

+ + + + + + + + + + + +
buf_ (defined in grape::VarintEncoder)grape::VarintEncoderprivate
clear() (defined in grape::VarintEncoder)grape::VarintEncoderinline
data() const (defined in grape::VarintEncoder)grape::VarintEncoderinline
empty() const (defined in grape::VarintEncoder)grape::VarintEncoderinline
encode_u32(uint32_t v) (defined in grape::VarintEncoder)grape::VarintEncoderinline
encode_u64(uint64_t v) (defined in grape::VarintEncoder)grape::VarintEncoderinline
reserve(size_t size) (defined in grape::VarintEncoder)grape::VarintEncoderinline
size() const (defined in grape::VarintEncoder)grape::VarintEncoderinline
VarintEncoder() (defined in grape::VarintEncoder)grape::VarintEncoderinline
~VarintEncoder()=default (defined in grape::VarintEncoder)grape::VarintEncoder
+ + + + diff --git a/classgrape_1_1VarintEncoder.html b/classgrape_1_1VarintEncoder.html new file mode 100644 index 00000000..aa129b2e --- /dev/null +++ b/classgrape_1_1VarintEncoder.html @@ -0,0 +1,114 @@ + + + + + + + +libgrape-lite: grape::VarintEncoder Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::VarintEncoder Class Reference
+
+
+ + + + + + + + + + + + + + + + +

+Public Member Functions

+void encode_u32 (uint32_t v)
 
+void encode_u64 (uint64_t v)
 
+void reserve (size_t size)
 
+void clear ()
 
+size_t size () const
 
+const uint8_t * data () const
 
+bool empty () const
 
+ + + +

+Private Attributes

+std::vector< uint8_t, Allocator< uint8_t > > buf_
 
+
+ + + + diff --git a/classgrape_1_1Vertex-members.html b/classgrape_1_1Vertex-members.html new file mode 100644 index 00000000..8eb9eb11 --- /dev/null +++ b/classgrape_1_1Vertex-members.html @@ -0,0 +1,100 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::Vertex< T > Member List
+
+
+ +

This is the complete list of members for grape::Vertex< T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + +
GetValue() const (defined in grape::Vertex< T >)grape::Vertex< T >inline
operator!=(const Vertex &rhs) const (defined in grape::Vertex< T >)grape::Vertex< T >inline
operator+(size_t offset) const noexcept (defined in grape::Vertex< T >)grape::Vertex< T >inline
operator++() noexcept (defined in grape::Vertex< T >)grape::Vertex< T >inline
operator++(int) (defined in grape::Vertex< T >)grape::Vertex< T >inline
operator--() noexcept (defined in grape::Vertex< T >)grape::Vertex< T >inline
operator--(int) noexcept (defined in grape::Vertex< T >)grape::Vertex< T >inline
operator<(const Vertex &rhs) const (defined in grape::Vertex< T >)grape::Vertex< T >inline
operator<< (defined in grape::Vertex< T >)grape::Vertex< T >friend
operator=(const T &value) noexcept (defined in grape::Vertex< T >)grape::Vertex< T >inline
operator==(const Vertex &rhs) const (defined in grape::Vertex< T >)grape::Vertex< T >inline
operator>> (defined in grape::Vertex< T >)grape::Vertex< T >friend
SetValue(T value) (defined in grape::Vertex< T >)grape::Vertex< T >inline
Swap(Vertex &rhs) (defined in grape::Vertex< T >)grape::Vertex< T >inline
value_ (defined in grape::Vertex< T >)grape::Vertex< T >private
Vertex()=default (defined in grape::Vertex< T >)grape::Vertex< T >
Vertex(const T &value) noexcept (defined in grape::Vertex< T >)grape::Vertex< T >inlineexplicit
~Vertex()=default (defined in grape::Vertex< T >)grape::Vertex< T >
+ + + + diff --git a/classgrape_1_1Vertex.html b/classgrape_1_1Vertex.html new file mode 100644 index 00000000..3432f9a2 --- /dev/null +++ b/classgrape_1_1Vertex.html @@ -0,0 +1,158 @@ + + + + + + + +libgrape-lite: grape::Vertex< T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::Vertex< T > Class Template Reference
+
+
+ +

A Vertex object only contains id of a vertex. It will be used when iterating vertices of a fragment and accessing data and neighbor of a vertex. + More...

+ +

#include <vertex_array.h>

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+DEV_HOST Vertex (const T &value) noexcept
 
+DEV_HOST_INLINE Vertexoperator= (const T &value) noexcept
 
+DEV_HOST_INLINE Vertexoperator++ () noexcept
 
+DEV_HOST_INLINE Vertex operator++ (int)
 
+DEV_HOST_INLINE Vertexoperator-- () noexcept
 
+DEV_HOST_INLINE Vertex operator-- (int) noexcept
 
+DEV_HOST_INLINE Vertex operator+ (size_t offset) const noexcept
 
+DEV_HOST_INLINE bool operator== (const Vertex &rhs) const
 
+DEV_HOST_INLINE bool operator!= (const Vertex &rhs) const
 
+DEV_HOST_INLINE void Swap (Vertex &rhs)
 
+DEV_HOST_INLINE bool operator< (const Vertex &rhs) const
 
+DEV_HOST_INLINE T GetValue () const
 
+DEV_HOST_INLINE void SetValue (T value)
 
+ + + +

+Private Attributes

+T value_ {}
 
+ + + + + +

+Friends

+InArchiveoperator<< (InArchive &archive, const Vertex &h)
 
+OutArchiveoperator>> (OutArchive &archive, Vertex &h)
 
+

Detailed Description

+

template<typename T>
+class grape::Vertex< T >

+ +

A Vertex object only contains id of a vertex. It will be used when iterating vertices of a fragment and accessing data and neighbor of a vertex.

+
Template Parameters
+ + +
TVertex ID type.
+
+
+
+ + + + diff --git a/classgrape_1_1VertexArray.html b/classgrape_1_1VertexArray.html new file mode 100644 index 00000000..550bb9a8 --- /dev/null +++ b/classgrape_1_1VertexArray.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: grape::VertexArray< VERTEX_SET_T, T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::VertexArray< VERTEX_SET_T, T > Class Template Reference
+
+
+
+ + + + diff --git a/classgrape_1_1VertexArray_3_01DualVertexRange_3_01VID__T_01_4_00_01T_01_4-members.html b/classgrape_1_1VertexArray_3_01DualVertexRange_3_01VID__T_01_4_00_01T_01_4-members.html new file mode 100644 index 00000000..36d6ed0d --- /dev/null +++ b/classgrape_1_1VertexArray_3_01DualVertexRange_3_01VID__T_01_4_00_01T_01_4-members.html @@ -0,0 +1,99 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::VertexArray< DualVertexRange< VID_T >, T > Member List
+
+
+ +

This is the complete list of members for grape::VertexArray< DualVertexRange< VID_T >, T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + +
Clear() (defined in grape::VertexArray< DualVertexRange< VID_T >, T >)grape::VertexArray< DualVertexRange< VID_T >, T >inline
head_ (defined in grape::VertexArray< DualVertexRange< VID_T >, T >)grape::VertexArray< DualVertexRange< VID_T >, T >private
Init(const VertexRange< VID_T > &range) (defined in grape::VertexArray< DualVertexRange< VID_T >, T >)grape::VertexArray< DualVertexRange< VID_T >, T >inline
Init(const DualVertexRange< VID_T > &range) (defined in grape::VertexArray< DualVertexRange< VID_T >, T >)grape::VertexArray< DualVertexRange< VID_T >, T >inline
Init(const VertexRange< VID_T > &range, const T &value) (defined in grape::VertexArray< DualVertexRange< VID_T >, T >)grape::VertexArray< DualVertexRange< VID_T >, T >inline
Init(const DualVertexRange< VID_T > &range, const T &value) (defined in grape::VertexArray< DualVertexRange< VID_T >, T >)grape::VertexArray< DualVertexRange< VID_T >, T >inline
initMid() (defined in grape::VertexArray< DualVertexRange< VID_T >, T >)grape::VertexArray< DualVertexRange< VID_T >, T >inlineprivate
mid_ (defined in grape::VertexArray< DualVertexRange< VID_T >, T >)grape::VertexArray< DualVertexRange< VID_T >, T >private
operator[](const Vertex< VID_T > &loc) (defined in grape::VertexArray< DualVertexRange< VID_T >, T >)grape::VertexArray< DualVertexRange< VID_T >, T >inline
operator[](const Vertex< VID_T > &loc) const (defined in grape::VertexArray< DualVertexRange< VID_T >, T >)grape::VertexArray< DualVertexRange< VID_T >, T >inline
SetValue(const T &value) (defined in grape::VertexArray< DualVertexRange< VID_T >, T >)grape::VertexArray< DualVertexRange< VID_T >, T >inline
Swap(VertexArray &rhs) (defined in grape::VertexArray< DualVertexRange< VID_T >, T >)grape::VertexArray< DualVertexRange< VID_T >, T >inline
tail_ (defined in grape::VertexArray< DualVertexRange< VID_T >, T >)grape::VertexArray< DualVertexRange< VID_T >, T >private
VertexArray() (defined in grape::VertexArray< DualVertexRange< VID_T >, T >)grape::VertexArray< DualVertexRange< VID_T >, T >inline
VertexArray(const DualVertexRange< VID_T > &range) (defined in grape::VertexArray< DualVertexRange< VID_T >, T >)grape::VertexArray< DualVertexRange< VID_T >, T >inlineexplicit
VertexArray(const DualVertexRange< VID_T > &range, const T &value) (defined in grape::VertexArray< DualVertexRange< VID_T >, T >)grape::VertexArray< DualVertexRange< VID_T >, T >inline
~VertexArray()=default (defined in grape::VertexArray< DualVertexRange< VID_T >, T >)grape::VertexArray< DualVertexRange< VID_T >, T >
+ + + + diff --git a/classgrape_1_1VertexArray_3_01DualVertexRange_3_01VID__T_01_4_00_01T_01_4.html b/classgrape_1_1VertexArray_3_01DualVertexRange_3_01VID__T_01_4_00_01T_01_4.html new file mode 100644 index 00000000..931ce6b4 --- /dev/null +++ b/classgrape_1_1VertexArray_3_01DualVertexRange_3_01VID__T_01_4_00_01T_01_4.html @@ -0,0 +1,139 @@ + + + + + + + +libgrape-lite: grape::VertexArray< DualVertexRange< VID_T >, T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::VertexArray< DualVertexRange< VID_T >, T > Class Template Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

VertexArray (const DualVertexRange< VID_T > &range)
 
VertexArray (const DualVertexRange< VID_T > &range, const T &value)
 
+void Init (const VertexRange< VID_T > &range)
 
+void Init (const DualVertexRange< VID_T > &range)
 
+void Init (const VertexRange< VID_T > &range, const T &value)
 
+void Init (const DualVertexRange< VID_T > &range, const T &value)
 
+T & operator[] (const Vertex< VID_T > &loc)
 
+const T & operator[] (const Vertex< VID_T > &loc) const
 
+void Swap (VertexArray &rhs)
 
+void Clear ()
 
+void SetValue (const T &value)
 
+ + + +

+Private Member Functions

+void initMid ()
 
+ + + + + + + +

+Private Attributes

+VertexArray< VertexRange< VID_T >, T > head_
 
+VertexArray< VertexRange< VID_T >, T > tail_
 
+VID_T mid_
 
+
+ + + + diff --git a/classgrape_1_1VertexArray_3_01VertexRange_3_01VID__T_01_4_00_01T_01_4-members.html b/classgrape_1_1VertexArray_3_01VertexRange_3_01VID__T_01_4_00_01T_01_4-members.html new file mode 100644 index 00000000..40a1b235 --- /dev/null +++ b/classgrape_1_1VertexArray_3_01VertexRange_3_01VID__T_01_4_00_01T_01_4-members.html @@ -0,0 +1,150 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::VertexArray< VertexRange< VID_T >, T > Member List
+
+
+ +

This is the complete list of members for grape::VertexArray< VertexRange< VID_T >, T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
__alloc() noexcept (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inlineprivate
__alloc() const noexcept (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inlineprivate
__alloc_traits typedef (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >
__base (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >private
__construct_at_end(size_type __n) (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inlineprivate
__construct_at_end(size_type __n, const_reference __x) (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inlineprivate
__construct_at_end(_ForwardIterator __first, _ForwardIterator __last, size_type __n) (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inlineprivate
__destruct_at_end(pointer __new_last) (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inlineprivate
__destruct_at_end(pointer __new_last, pointer __end) (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inlineprivate
__range_check(size_type __n) const noexcept (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inlineprivate
__vallocate(size_type __n) (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inlineprivate
__vdeallocate() (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inlineprivate
__vdeallocate(pointer __begin, size_type __size) (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inlineprivate
allocator_type typedef (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >
Array() noexcept (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inline
Array(const allocator_type &__a) noexcept (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inlineexplicit
Array(size_type __n, const allocator_type &__a=allocator_type()) (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inlineexplicit
Array(size_type __n, const value_type &__x, const allocator_type &__a=allocator_type()) (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inline
Array(const Array &__x) (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inline
Array(Array &&__x) noexcept (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inline
Array(const Array &__x, const allocator_type &__a) (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inline
Array(Array &&__x, const allocator_type &__a) (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inline
at(size_type __n) noexcept (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inline
at(size_type __n) const noexcept (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inline
Base typedef (defined in grape::VertexArray< VertexRange< VID_T >, T >)grape::VertexArray< VertexRange< VID_T >, T >private
begin() noexcept (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inline
begin() const noexcept (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inline
clear() noexcept (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inline
Clear() (defined in grape::VertexArray< VertexRange< VID_T >, T >)grape::VertexArray< VertexRange< VID_T >, T >inline
const_iterator typedef (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >
const_pointer typedef (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >
const_reference typedef (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >
data() noexcept (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inline
data() const noexcept (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inline
empty() const noexcept (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inline
end() noexcept (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inline
end() const noexcept (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inline
fake_start_ (defined in grape::VertexArray< VertexRange< VID_T >, T >)grape::VertexArray< VertexRange< VID_T >, T >private
get_allocator() const noexcept (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inline
GetVertexRange() const (defined in grape::VertexArray< VertexRange< VID_T >, T >)grape::VertexArray< VertexRange< VID_T >, T >inline
Init(const VertexRange< VID_T > &range) (defined in grape::VertexArray< VertexRange< VID_T >, T >)grape::VertexArray< VertexRange< VID_T >, T >inline
Init(const VertexRange< VID_T > &range, const T &value) (defined in grape::VertexArray< VertexRange< VID_T >, T >)grape::VertexArray< VertexRange< VID_T >, T >inline
iterator typedef (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >
operator=(const Array &__x) (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inline
operator=(Array &&__x) (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inline
operator[](const Vertex< VID_T > &loc) (defined in grape::VertexArray< VertexRange< VID_T >, T >)grape::VertexArray< VertexRange< VID_T >, T >inline
operator[](const Vertex< VID_T > &loc) const (defined in grape::VertexArray< VertexRange< VID_T >, T >)grape::VertexArray< VertexRange< VID_T >, T >inline
operator[](size_type __n) noexcept (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inline
operator[](size_type __n) const noexcept (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inline
pointer typedef (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >
range_ (defined in grape::VertexArray< VertexRange< VID_T >, T >)grape::VertexArray< VertexRange< VID_T >, T >private
reference typedef (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >
Resize() (defined in grape::VertexArray< VertexRange< VID_T >, T >)grape::VertexArray< VertexRange< VID_T >, T >inlineprivate
resize(size_type __new_size) (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inline
resize(size_type __new_size, const value_type &__x) (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inline
SetValue(VertexRange< VID_T > &range, const T &value) (defined in grape::VertexArray< VertexRange< VID_T >, T >)grape::VertexArray< VertexRange< VID_T >, T >inline
SetValue(const Vertex< VID_T > &loc, const T &value) (defined in grape::VertexArray< VertexRange< VID_T >, T >)grape::VertexArray< VertexRange< VID_T >, T >inline
SetValue(const T &value) (defined in grape::VertexArray< VertexRange< VID_T >, T >)grape::VertexArray< VertexRange< VID_T >, T >inline
size() const noexcept (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inline
size_type typedef (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >
swap(Array &__x) noexcept (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inline
Swap(VertexArray &rhs) (defined in grape::VertexArray< VertexRange< VID_T >, T >)grape::VertexArray< VertexRange< VID_T >, T >inline
value_type typedef (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >
VertexArray() (defined in grape::VertexArray< VertexRange< VID_T >, T >)grape::VertexArray< VertexRange< VID_T >, T >inline
VertexArray(const VertexRange< VID_T > &range) (defined in grape::VertexArray< VertexRange< VID_T >, T >)grape::VertexArray< VertexRange< VID_T >, T >inlineexplicit
VertexArray(const VertexRange< VID_T > &range, const T &value) (defined in grape::VertexArray< VertexRange< VID_T >, T >)grape::VertexArray< VertexRange< VID_T >, T >inline
~Array() noexcept (defined in grape::Array< T, Allocator< T > >)grape::Array< T, Allocator< T > >inline
~VertexArray()=default (defined in grape::VertexArray< VertexRange< VID_T >, T >)grape::VertexArray< VertexRange< VID_T >, T >
+ + + + diff --git a/classgrape_1_1VertexArray_3_01VertexRange_3_01VID__T_01_4_00_01T_01_4.html b/classgrape_1_1VertexArray_3_01VertexRange_3_01VID__T_01_4_00_01T_01_4.html new file mode 100644 index 00000000..1f19fd72 --- /dev/null +++ b/classgrape_1_1VertexArray_3_01VertexRange_3_01VID__T_01_4_00_01T_01_4.html @@ -0,0 +1,268 @@ + + + + + + + +libgrape-lite: grape::VertexArray< VertexRange< VID_T >, T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::VertexArray< VertexRange< VID_T >, T > Class Template Reference
+
+
+
+Inheritance diagram for grape::VertexArray< VertexRange< VID_T >, T >:
+
+
+ + +grape::Array< T, Allocator< T > > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

VertexArray (const VertexRange< VID_T > &range)
 
VertexArray (const VertexRange< VID_T > &range, const T &value)
 
+void Init (const VertexRange< VID_T > &range)
 
+void Init (const VertexRange< VID_T > &range, const T &value)
 
+void SetValue (VertexRange< VID_T > &range, const T &value)
 
+void SetValue (const Vertex< VID_T > &loc, const T &value)
 
+void SetValue (const T &value)
 
+T & operator[] (const Vertex< VID_T > &loc)
 
+const T & operator[] (const Vertex< VID_T > &loc) const
 
+void Swap (VertexArray &rhs)
 
+void Clear ()
 
+const VertexRange< VID_T > & GetVertexRange () const
 
- Public Member Functions inherited from grape::Array< T, Allocator< T > >
+allocator_type get_allocator () const noexcept
 
Array (const allocator_type &__a) noexcept
 
Array (size_type __n, const allocator_type &__a=allocator_type())
 
Array (size_type __n, const value_type &__x, const allocator_type &__a=allocator_type())
 
Array (const Array &__x)
 
Array (Array &&__x) noexcept
 
Array (const Array &__x, const allocator_type &__a)
 
Array (Array &&__x, const allocator_type &__a)
 
+Arrayoperator= (const Array &__x)
 
+Arrayoperator= (Array &&__x)
 
+size_type size () const noexcept
 
+void resize (size_type __new_size)
 
+void resize (size_type __new_size, const value_type &__x)
 
+bool empty () const noexcept
 
+reference operator[] (size_type __n) noexcept
 
+const_reference operator[] (size_type __n) const noexcept
 
+reference at (size_type __n) noexcept
 
+const_reference at (size_type __n) const noexcept
 
+pointer data () noexcept
 
+const_pointer data () const noexcept
 
+iterator begin () noexcept
 
+const_iterator begin () const noexcept
 
+iterator end () noexcept
 
+const_iterator end () const noexcept
 
+void swap (Array &__x) noexcept
 
+void clear () noexcept
 
+ + + +

+Private Types

+using Base = Array< T, Allocator< T > >
 
+ + + +

+Private Member Functions

+void Resize ()
 
+ + + + + +

+Private Attributes

+VertexRange< VID_T > range_
 
+T * fake_start_
 
+ + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Public Types inherited from grape::Array< T, Allocator< T > >
+using pointer = T *
 
+using const_pointer = const T *
 
+using reference = T &
 
+using const_reference = const T &
 
+using size_type = size_t
 
+using value_type = T
 
+using allocator_type = Allocator< T >
 
+using iterator = pointer
 
+using const_iterator = const_pointer
 
+using __alloc_traits = std::allocator_traits< Allocator< T > >
 
+
+ + + + diff --git a/classgrape_1_1VertexArray_3_01VertexRange_3_01VID__T_01_4_00_01T_01_4.png b/classgrape_1_1VertexArray_3_01VertexRange_3_01VID__T_01_4_00_01T_01_4.png new file mode 100644 index 0000000000000000000000000000000000000000..0d85d091e4eb41e8e9702e214354234659c3b654 GIT binary patch literal 1033 zcmeAS@N?(olHy`uVBq!ia0y~yU{nRN12~w0WQOA8W*{XI;1lBd|Nnm=^TnI5rTvE{ z09jys;J^Xa&O7ozE=Ng_UoZnu5eQs86=KA|z&yj##WAFU@$KB(la?q5uugV9^5?($ z`p3Oa2ZDB6Z!_PP=Hu>e<5X0w`g~6FoMO919nVG;UQX{xPXwo_oK)8Foa7!cNu~dM zl-Hz^)-8WLw2l{<&vn;){3ULVitW?I(=L_z=FYx8T|RQxWyeWRKAyOA#e4tM8RxyH z`%d?sy^8OSjxKBNOF!*%x@!-9^SAu^>+$;NS=!rA+>+W8msjq3QO#s{~*h@X{%;zGp;JsudcdzX_MDG=Tm+= z|DKz(?b7WEndqqacTt-R%PjaG$9?&-YH69)mg=F6=NpVko{)ie)qrcwq-NQNZS6MuvB{Eb)CD$@zGiLY`I_AX`h`b@-Ob(^P|s8 zcGfI>)wTEB>%%*luif736#ZsWn(}Y9Jx7FUR?PgV9>Di`<2LDe(X&=>t*PkOuMLd7 zI!821+1vj8RZj<3^}@|puAE8fcRH{0^{d(WHA`15uhxCNZKd88UUusXw@<7p<9rby zy7jbcu(A4=8XZ~N()nL?*E-j|-f?)!?d}_^a<*S}UY*r_hwbg!BaUZtPCBlzfBZ^( z_xWAZZmoM&cW+<%v$bo(O*frs3cdO!>rsZl%&A}ZExnz*^3~R~*jG7Ty@9*0&5O!f z&aR?$>&U!$7k7o^7az8L_ik6nw;iRIXVjm)SNulQc=;~tONE7-em2Y3qH>C(E6xrN6! z$#3}b?1bZD#(Q3-j~SR6m{FtEFw#qNslw7J$Nn%{{j%M<>f)U+V7_JWboFyt=akR{ E0FIXBwEzGB literal 0 HcmV?d00001 diff --git a/classgrape_1_1VertexDataContext-members.html b/classgrape_1_1VertexDataContext-members.html new file mode 100644 index 00000000..5cb8deaf --- /dev/null +++ b/classgrape_1_1VertexDataContext-members.html @@ -0,0 +1,94 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::VertexDataContext< FRAG_T, DATA_T > Member List
+
+ + + + + diff --git a/classgrape_1_1VertexDataContext.html b/classgrape_1_1VertexDataContext.html new file mode 100644 index 00000000..d9fd2f85 --- /dev/null +++ b/classgrape_1_1VertexDataContext.html @@ -0,0 +1,138 @@ + + + + + + + +libgrape-lite: grape::VertexDataContext< FRAG_T, DATA_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::VertexDataContext< FRAG_T, DATA_T > Class Template Reference
+
+
+
+Inheritance diagram for grape::VertexDataContext< FRAG_T, DATA_T >:
+
+
+ + +grape::ContextBase + +
+ + + + +

+Public Types

+using data_t = DATA_T
 
+ + + + + + + + + + + +

+Public Member Functions

VertexDataContext (const fragment_t &fragment, bool including_outer=false)
 
+const fragment_t & fragment ()
 
+vertex_array_t & data ()
 
- Public Member Functions inherited from grape::ContextBase
virtual void Output (std::ostream &os)
 Output function to implement for result output. More...
 
+ + + + + + + +

+Private Types

+using fragment_t = FRAG_T
 
+using vertex_t = typename fragment_t::vertex_t
 
+using vertex_array_t = typename fragment_t::template vertex_array_t< DATA_T >
 
+ + + + + +

+Private Attributes

+const fragment_t & fragment_
 
+vertex_array_t data_
 
+
+ + + + diff --git a/classgrape_1_1VertexDataContext.png b/classgrape_1_1VertexDataContext.png new file mode 100644 index 0000000000000000000000000000000000000000..352e08d090d6b1f2e2d2c1a844ca24ca759f8993 GIT binary patch literal 974 zcmeAS@N?(olHy`uVBq!ia0y~yV3Y;212~w0q%dosKai3L@CkAK|NlRb`Qpvj(*8pe zfGjXRaNq!I=N)+uG)KSBh-3fCb0L=~3CfS!=I0YI%05=q{1r~MN{dmN6-=L z8=AN6J*8&M&$(~^_?m;~u5R-UoBb`dg1nhh}}wbf5H(3rHwk>Qixr`FG>Zm0PbZxfT`9aIb^Ef#rbWTLzYz znk8}!^S3YyY&hv@%b=IZuAp|8!DWeTLkCc7Vi|+dB|Zn2TZ|nZ)(nC`Nu{@xNbZ?E zH^|G=OY>+W(*y<`R7;MmF6(=-^6Z_Xf$#o)zr1<@^MRP>KNElNRcd>;uKAekiGTY$ zXRtr*f6Zro`S8!OpC{M9(dk{Exc)QCuhh8ho!kD;2}sycb)j;{`}yt1-+mLa`<67n zj&1JiS3P(3SnW1BeYGy>T|(Tk3+KWkEj0efTmSyS=Q+Lc^S57YtnBJ5c(XEZ9oz7y z<@&*dqqjCPJnMS%<;BODmoManuD)U>nVur;ka+Nv)b{xDM>iwS@|!3Bl*n@H|DBY+ zH!D3t?EJZ%k?X$B-4?b!-;8q|XAkoW*{^dS-pkAK7-i?3T*9J#)6bzj8q{ ztj*v$K*HAFtVJo&Dm!rgbrI{hbSEWoL6|->samPB&xSjJlIi~^LsZKvO@v3&9U8Q+0&gLhF4 sDsLHTd=W96v^m&I(^GTlnm^2O6Kxu1{=f4ZnE4nyUHx3vIVCg!0Mj?t^8f$< literal 0 HcmV?d00001 diff --git a/classgrape_1_1VertexMapBase-members.html b/classgrape_1_1VertexMapBase-members.html new file mode 100644 index 00000000..b2481024 --- /dev/null +++ b/classgrape_1_1VertexMapBase-members.html @@ -0,0 +1,112 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T > Member List
+
+
+ +

This is the complete list of members for grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
AddVertex(const OID_T &oid)=0 (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >pure virtual
AddVertex(const OID_T &oid, VID_T &gid)=0 (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >pure virtual
comm_spec_ (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >protected
deserialize(std::unique_ptr< IOADAPTOR_T > &reader) (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >inline
GetCommSpec() const (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >inline
GetFidFromGid(const VID_T &gid) const (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >inline
GetFragmentId(const OID_T &oid) const (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >inline
GetFragmentNum() const (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >inline
GetGid(fid_t fid, const OID_T &oid, VID_T &gid) const =0 (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >pure virtual
GetGid(const OID_T &oid, VID_T &gid) const =0 (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >pure virtual
GetInnerVertexSize(fid_t fid) const =0 (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >pure virtual
GetLidFromGid(const VID_T &gid) const (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >inline
GetOid(const VID_T &gid, OID_T &oid) const =0 (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >pure virtual
GetOid(fid_t fid, const VID_T &lid, OID_T &oid) const =0 (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >pure virtual
GetPartitioner() const (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >inline
GetPartitioner() (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >inline
GetTotalVertexSize() const =0 (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >pure virtual
id_parser_ (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >protected
Lid2Gid(fid_t fid, const VID_T &lid) const (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >inline
MaxVertexNum() const (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >inline
oid_t typedef (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >
partitioner_ (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >protected
partitioner_t typedef (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >
serialize(std::unique_ptr< IOADAPTOR_T > &writer) (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >inline
SetPartitioner(const PARTITIONER_T &partitioner) (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >inline
SetPartitioner(PARTITIONER_T &&partitioner) (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >inline
UpdateToBalance(std::vector< VID_T > &vnum_list, std::vector< std::vector< VID_T >> &gid_maps)=0 (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >pure virtual
VertexMapBase(const CommSpec &comm_spec) (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >inlineexplicit
vid_t typedef (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >
~VertexMapBase()=default (defined in grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >)grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >virtual
+ + + + diff --git a/classgrape_1_1VertexMapBase.html b/classgrape_1_1VertexMapBase.html new file mode 100644 index 00000000..7f17071f --- /dev/null +++ b/classgrape_1_1VertexMapBase.html @@ -0,0 +1,210 @@ + + + + + + + +libgrape-lite: grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T > Class Template Referenceabstract
+
+
+ +

VertexMapBase manages some mapping about vertices. + More...

+ +

#include <vertex_map_base.h>

+ + + + + + + + +

+Public Types

+using partitioner_t = PARTITIONER_T
 
+using oid_t = OID_T
 
+using vid_t = VID_T
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

VertexMapBase (const CommSpec &comm_spec)
 
+void SetPartitioner (const PARTITIONER_T &partitioner)
 
+void SetPartitioner (PARTITIONER_T &&partitioner)
 
+fid_t GetFragmentNum () const
 
+VID_T Lid2Gid (fid_t fid, const VID_T &lid) const
 
+fid_t GetFidFromGid (const VID_T &gid) const
 
+VID_T GetLidFromGid (const VID_T &gid) const
 
+VID_T MaxVertexNum () const
 
+const CommSpecGetCommSpec () const
 
+template<typename IOADAPTOR_T >
void serialize (std::unique_ptr< IOADAPTOR_T > &writer)
 
+template<typename IOADAPTOR_T >
void deserialize (std::unique_ptr< IOADAPTOR_T > &reader)
 
+fid_t GetFragmentId (const OID_T &oid) const
 
+const PARTITIONER_T & GetPartitioner () const
 
+PARTITIONER_T & GetPartitioner ()
 
+virtual size_t GetTotalVertexSize () const =0
 
+virtual size_t GetInnerVertexSize (fid_t fid) const =0
 
+virtual void AddVertex (const OID_T &oid)=0
 
+virtual bool AddVertex (const OID_T &oid, VID_T &gid)=0
 
+virtual void UpdateToBalance (std::vector< VID_T > &vnum_list, std::vector< std::vector< VID_T >> &gid_maps)=0
 
+virtual bool GetOid (const VID_T &gid, OID_T &oid) const =0
 
+virtual bool GetOid (fid_t fid, const VID_T &lid, OID_T &oid) const =0
 
+virtual bool GetGid (fid_t fid, const OID_T &oid, VID_T &gid) const =0
 
+virtual bool GetGid (const OID_T &oid, VID_T &gid) const =0
 
+ + + + + + + +

+Protected Attributes

+CommSpec comm_spec_
 
+PARTITIONER_T partitioner_
 
+IdParser< VID_T > id_parser_
 
+

Detailed Description

+

template<typename OID_T, typename VID_T, typename PARTITIONER_T>
+class grape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >

+ +

VertexMapBase manages some mapping about vertices.

+

a <VertexMapBase> manages:

+

1) which fragment a vertex resides in as a inner_vertex, for edge-cut distributed graphs;

+

2) which fragment a vertex resides in as a master_vertex, for vertex-cut distributed graphs;

+

3) the mapping from ids. There are 3 kinds of vertex ids in grape.

+
    +
  • original_id (a.k.a., OID), is provided by the origin dataset, it may be not continoues, or even strings.
  • +
  • local_id (a.k.a., LID), is allocated WITHIN a fragment, it is continoues and increased from 1.
  • +
  • global_id (a.k.a., GID), is unique in the distributed graph and works as the identifier of a vertex in libgrape-lite. It consists of two parts and formatted as fid|local_id.
  • +
+
Note
: The pure virtual functions in the class work as interfaces, instructing sub-classes to implement. The override functions in the derived classes would be invoked directly, not via virtual functions.
+
Template Parameters
+ + + +
OID_T
VID_T
+
+
+
+ + + + diff --git a/classgrape_1_1VertexRange-members.html b/classgrape_1_1VertexRange-members.html new file mode 100644 index 00000000..6590ae37 --- /dev/null +++ b/classgrape_1_1VertexRange-members.html @@ -0,0 +1,98 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::VertexRange< T > Member List
+
+
+ +

This is the complete list of members for grape::VertexRange< T >, including all inherited members.

+ + + + + + + + + + + + + + + + + +
begin() const (defined in grape::VertexRange< T >)grape::VertexRange< T >inline
begin_ (defined in grape::VertexRange< T >)grape::VertexRange< T >private
begin_value() const (defined in grape::VertexRange< T >)grape::VertexRange< T >inline
Contain(const Vertex< T > &v) const (defined in grape::VertexRange< T >)grape::VertexRange< T >inline
end() const (defined in grape::VertexRange< T >)grape::VertexRange< T >inline
end_ (defined in grape::VertexRange< T >)grape::VertexRange< T >private
end_value() const (defined in grape::VertexRange< T >)grape::VertexRange< T >inline
operator<< (defined in grape::VertexRange< T >)grape::VertexRange< T >friend
operator>> (defined in grape::VertexRange< T >)grape::VertexRange< T >friend
SetRange(const T &begin, const T &end) (defined in grape::VertexRange< T >)grape::VertexRange< T >inline
size() const (defined in grape::VertexRange< T >)grape::VertexRange< T >inline
Swap(VertexRange &rhs) (defined in grape::VertexRange< T >)grape::VertexRange< T >inline
vertex_t typedef (defined in grape::VertexRange< T >)grape::VertexRange< T >
VertexRange() (defined in grape::VertexRange< T >)grape::VertexRange< T >inline
VertexRange(const T &begin, const T &end) (defined in grape::VertexRange< T >)grape::VertexRange< T >inline
VertexRange(const VertexRange &r) (defined in grape::VertexRange< T >)grape::VertexRange< T >inline
+ + + + diff --git a/classgrape_1_1VertexRange.html b/classgrape_1_1VertexRange.html new file mode 100644 index 00000000..9f42e850 --- /dev/null +++ b/classgrape_1_1VertexRange.html @@ -0,0 +1,149 @@ + + + + + + + +libgrape-lite: grape::VertexRange< T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::VertexRange< T > Class Template Reference
+
+
+ + + + +

+Classes

class  iterator
 
+ + + +

+Public Types

+using vertex_t = Vertex< T >
 
+ + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+DEV_HOST VertexRange (const T &begin, const T &end)
 
+DEV_HOST VertexRange (const VertexRange &r)
 
+DEV_HOST_INLINE iterator begin () const
 
+DEV_HOST_INLINE iterator end () const
 
+DEV_HOST_INLINE size_t size () const
 
+DEV_HOST void Swap (VertexRange &rhs)
 
+DEV_HOST void SetRange (const T &begin, const T &end)
 
+DEV_HOST const T & begin_value () const
 
+DEV_HOST const T & end_value () const
 
+bool Contain (const Vertex< T > &v) const
 
+ + + + + +

+Private Attributes

+T begin_
 
+T end_
 
+ + + + + +

+Friends

+InArchiveoperator<< (InArchive &in_archive, const VertexRange< T > &range)
 
+OutArchiveoperator>> (OutArchive &out_archive, VertexRange< T > &range)
 
+
+ + + + diff --git a/classgrape_1_1VertexRange_1_1iterator-members.html b/classgrape_1_1VertexRange_1_1iterator-members.html new file mode 100644 index 00000000..1b6cf80b --- /dev/null +++ b/classgrape_1_1VertexRange_1_1iterator-members.html @@ -0,0 +1,95 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::VertexRange< T >::iterator Member List
+
+
+ +

This is the complete list of members for grape::VertexRange< T >::iterator, including all inherited members.

+ + + + + + + + + + + + + + +
cur_ (defined in grape::VertexRange< T >::iterator)grape::VertexRange< T >::iteratorprivate
iterator() noexcept (defined in grape::VertexRange< T >::iterator)grape::VertexRange< T >::iteratorinline
iterator(const T &v) noexcept (defined in grape::VertexRange< T >::iterator)grape::VertexRange< T >::iteratorinlineexplicit
operator!=(const iterator &rhs) const noexcept (defined in grape::VertexRange< T >::iterator)grape::VertexRange< T >::iteratorinline
operator*() noexcept (defined in grape::VertexRange< T >::iterator)grape::VertexRange< T >::iteratorinline
operator+(size_t offset) const noexcept (defined in grape::VertexRange< T >::iterator)grape::VertexRange< T >::iteratorinline
operator++() noexcept (defined in grape::VertexRange< T >::iterator)grape::VertexRange< T >::iteratorinline
operator++(int) noexcept (defined in grape::VertexRange< T >::iterator)grape::VertexRange< T >::iteratorinline
operator--() noexcept (defined in grape::VertexRange< T >::iterator)grape::VertexRange< T >::iteratorinline
operator--(int) noexcept (defined in grape::VertexRange< T >::iterator)grape::VertexRange< T >::iteratorinline
operator<(const iterator &rhs) const noexcept (defined in grape::VertexRange< T >::iterator)grape::VertexRange< T >::iteratorinline
operator==(const iterator &rhs) const noexcept (defined in grape::VertexRange< T >::iterator)grape::VertexRange< T >::iteratorinline
reference_type typedef (defined in grape::VertexRange< T >::iterator)grape::VertexRange< T >::iteratorprivate
+ + + + diff --git a/classgrape_1_1VertexRange_1_1iterator.html b/classgrape_1_1VertexRange_1_1iterator.html new file mode 100644 index 00000000..67416b2b --- /dev/null +++ b/classgrape_1_1VertexRange_1_1iterator.html @@ -0,0 +1,130 @@ + + + + + + + +libgrape-lite: grape::VertexRange< T >::iterator Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::VertexRange< T >::iterator Class Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+DEV_HOST iterator (const T &v) noexcept
 
+DEV_HOST_INLINE reference_type operator* () noexcept
 
+DEV_HOST_INLINE iteratoroperator++ () noexcept
 
+DEV_HOST_INLINE iterator operator++ (int) noexcept
 
+DEV_HOST_INLINE iteratoroperator-- () noexcept
 
+DEV_HOST_INLINE iterator operator-- (int) noexcept
 
+DEV_HOST_INLINE iterator operator+ (size_t offset) const noexcept
 
+DEV_HOST bool operator== (const iterator &rhs) const noexcept
 
+DEV_HOST bool operator!= (const iterator &rhs) const noexcept
 
+DEV_HOST bool operator< (const iterator &rhs) const noexcept
 
+ + + +

+Private Types

+using reference_type = Vertex< T > &
 
+ + + +

+Private Attributes

+Vertex< T > cur_
 
+
+ + + + diff --git a/classgrape_1_1VoidContext-members.html b/classgrape_1_1VoidContext-members.html new file mode 100644 index 00000000..fe1e61a5 --- /dev/null +++ b/classgrape_1_1VoidContext-members.html @@ -0,0 +1,90 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::VoidContext< FRAG_T > Member List
+
+
+ +

This is the complete list of members for grape::VoidContext< FRAG_T >, including all inherited members.

+ + + + + + + + + +
ContextBase()=default (defined in grape::ContextBase)grape::ContextBase
fragment() (defined in grape::VoidContext< FRAG_T >)grape::VoidContext< FRAG_T >inline
fragment_ (defined in grape::VoidContext< FRAG_T >)grape::VoidContext< FRAG_T >private
fragment_t typedef (defined in grape::VoidContext< FRAG_T >)grape::VoidContext< FRAG_T >private
Output(std::ostream &os)grape::ContextBaseinlinevirtual
vertex_t typedef (defined in grape::VoidContext< FRAG_T >)grape::VoidContext< FRAG_T >private
VoidContext(const fragment_t &fragment) (defined in grape::VoidContext< FRAG_T >)grape::VoidContext< FRAG_T >inlineexplicit
~ContextBase()=default (defined in grape::ContextBase)grape::ContextBasevirtual
+ + + + diff --git a/classgrape_1_1VoidContext.html b/classgrape_1_1VoidContext.html new file mode 100644 index 00000000..8d99a965 --- /dev/null +++ b/classgrape_1_1VoidContext.html @@ -0,0 +1,122 @@ + + + + + + + +libgrape-lite: grape::VoidContext< FRAG_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::VoidContext< FRAG_T > Class Template Reference
+
+
+
+Inheritance diagram for grape::VoidContext< FRAG_T >:
+
+
+ + +grape::ContextBase + +
+ + + + + + + + + + +

+Public Member Functions

VoidContext (const fragment_t &fragment)
 
+const fragment_t & fragment ()
 
- Public Member Functions inherited from grape::ContextBase
virtual void Output (std::ostream &os)
 Output function to implement for result output. More...
 
+ + + + + +

+Private Types

+using fragment_t = FRAG_T
 
+using vertex_t = typename fragment_t::vertex_t
 
+ + + +

+Private Attributes

+const fragment_t & fragment_
 
+
+ + + + diff --git a/classgrape_1_1VoidContext.png b/classgrape_1_1VoidContext.png new file mode 100644 index 0000000000000000000000000000000000000000..cefff5a61db1af57a4da7abe0bec62899cc0dd0b GIT binary patch literal 756 zcmeAS@N?(olHy`uVBq!ia0vp^`++!sgBeKHtA!*3DTx4|5ZC|z{{xvX-h3_XKQsZz z0^yvkoy>Ff8tL582=--~NVmWty&UgF5 z+yyGOYs){p_uvgbBG2Y^>GH0l`&D13Z~I%5l9w$fpw_=EHR;>8LapeKAHm- zqq*jT^#3c*x5vE-|0%ugfh+Il`xa+&?^l8hoBl_>^7g)M3wL^H|NZ^{Z~SZjRYJed zU*QRld2@Nwm8kk}2Xhk6o%{XDKVa?uA73Xf+5b}XfBz}@H*X^TO!|^I>(8Vs{*&V; z{mOhCf4x*ToZ=KO!1{f3q2-2R9BdmAqPO#jRHV&zHx3;vVk7tB|)cL0V$ zL*1-D41Z02GXBc^#Qf#*6ZRL&(G;*pO-q%G&|v_E8&tvWKkg-OCrABG)n{+8KIiZE zePxGCxctMm(^uIFj>rEz`#71m!Mg78_Uk1^#W!9EZ27c2XxIGysd;DTT<e%&Xua1|`etJvP_>uqn5WgoU9m?h{|G~Z3Fm=LzqtdfCw*J4Yp;+%M zVDT>PUu{Y7{!=qpe;d}%_`hra#Q)7gPyW0YVEX^#QPIzopr074szYybcN literal 0 HcmV?d00001 diff --git a/classgrape_1_1Worker-members.html b/classgrape_1_1Worker-members.html new file mode 100644 index 00000000..c8f3a9b0 --- /dev/null +++ b/classgrape_1_1Worker-members.html @@ -0,0 +1,108 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::Worker< APP_T, MESSAGE_MANAGER_T > Member List
+
+
+ +

This is the complete list of members for grape::Worker< APP_T, MESSAGE_MANAGER_T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + +
app_ (defined in grape::Worker< APP_T, MESSAGE_MANAGER_T >)grape::Worker< APP_T, MESSAGE_MANAGER_T >private
comm_spec_ (defined in grape::Worker< APP_T, MESSAGE_MANAGER_T >)grape::Worker< APP_T, MESSAGE_MANAGER_T >private
context_ (defined in grape::Worker< APP_T, MESSAGE_MANAGER_T >)grape::Worker< APP_T, MESSAGE_MANAGER_T >private
context_t typedef (defined in grape::Worker< APP_T, MESSAGE_MANAGER_T >)grape::Worker< APP_T, MESSAGE_MANAGER_T >
Finalize() (defined in grape::Worker< APP_T, MESSAGE_MANAGER_T >)grape::Worker< APP_T, MESSAGE_MANAGER_T >inline
fragment_ (defined in grape::Worker< APP_T, MESSAGE_MANAGER_T >)grape::Worker< APP_T, MESSAGE_MANAGER_T >private
fragment_t typedef (defined in grape::Worker< APP_T, MESSAGE_MANAGER_T >)grape::Worker< APP_T, MESSAGE_MANAGER_T >
GetContext() (defined in grape::Worker< APP_T, MESSAGE_MANAGER_T >)grape::Worker< APP_T, MESSAGE_MANAGER_T >inline
GetTerminateInfo() const (defined in grape::Worker< APP_T, MESSAGE_MANAGER_T >)grape::Worker< APP_T, MESSAGE_MANAGER_T >inline
Init(const CommSpec &comm_spec, const ParallelEngineSpec &pe_spec=DefaultParallelEngineSpec()) (defined in grape::Worker< APP_T, MESSAGE_MANAGER_T >)grape::Worker< APP_T, MESSAGE_MANAGER_T >inline
initPool(const ParallelEngineSpec &pe_spec) (defined in grape::Worker< APP_T, MESSAGE_MANAGER_T >)grape::Worker< APP_T, MESSAGE_MANAGER_T >inlineprivate
initPool(const ParallelEngineSpec &pe_spec) (defined in grape::Worker< APP_T, MESSAGE_MANAGER_T >)grape::Worker< APP_T, MESSAGE_MANAGER_T >inlineprivate
message_manager_t typedef (defined in grape::Worker< APP_T, MESSAGE_MANAGER_T >)grape::Worker< APP_T, MESSAGE_MANAGER_T >
messages_ (defined in grape::Worker< APP_T, MESSAGE_MANAGER_T >)grape::Worker< APP_T, MESSAGE_MANAGER_T >private
Output(std::ostream &os) (defined in grape::Worker< APP_T, MESSAGE_MANAGER_T >)grape::Worker< APP_T, MESSAGE_MANAGER_T >inline
prepare_conf_ (defined in grape::Worker< APP_T, MESSAGE_MANAGER_T >)grape::Worker< APP_T, MESSAGE_MANAGER_T >private
processMutation() (defined in grape::Worker< APP_T, MESSAGE_MANAGER_T >)grape::Worker< APP_T, MESSAGE_MANAGER_T >inlineprivate
processMutation() (defined in grape::Worker< APP_T, MESSAGE_MANAGER_T >)grape::Worker< APP_T, MESSAGE_MANAGER_T >inlineprivate
Query(Args &&... args) (defined in grape::Worker< APP_T, MESSAGE_MANAGER_T >)grape::Worker< APP_T, MESSAGE_MANAGER_T >inline
runIncEval() (defined in grape::Worker< APP_T, MESSAGE_MANAGER_T >)grape::Worker< APP_T, MESSAGE_MANAGER_T >inlineprivate
runIncEval() (defined in grape::Worker< APP_T, MESSAGE_MANAGER_T >)grape::Worker< APP_T, MESSAGE_MANAGER_T >inlineprivate
runPEval() (defined in grape::Worker< APP_T, MESSAGE_MANAGER_T >)grape::Worker< APP_T, MESSAGE_MANAGER_T >inlineprivate
runPEval() (defined in grape::Worker< APP_T, MESSAGE_MANAGER_T >)grape::Worker< APP_T, MESSAGE_MANAGER_T >inlineprivate
Worker(std::shared_ptr< APP_T > app, std::shared_ptr< fragment_t > graph) (defined in grape::Worker< APP_T, MESSAGE_MANAGER_T >)grape::Worker< APP_T, MESSAGE_MANAGER_T >inline
Worker(std::shared_ptr< APP_T > app, std::shared_ptr< fragment_t > graph, std::shared_ptr< context_t > context) (defined in grape::Worker< APP_T, MESSAGE_MANAGER_T >)grape::Worker< APP_T, MESSAGE_MANAGER_T >inline
~Worker()=default (defined in grape::Worker< APP_T, MESSAGE_MANAGER_T >)grape::Worker< APP_T, MESSAGE_MANAGER_T >
+ + + + diff --git a/classgrape_1_1Worker.html b/classgrape_1_1Worker.html new file mode 100644 index 00000000..21810cb8 --- /dev/null +++ b/classgrape_1_1Worker.html @@ -0,0 +1,199 @@ + + + + + + + +libgrape-lite: grape::Worker< APP_T, MESSAGE_MANAGER_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::Worker< APP_T, MESSAGE_MANAGER_T > Class Template Reference
+
+
+ +

A Worker manages the computation cycle. + More...

+ +

#include <worker.h>

+ + + + + + + + +

+Public Types

+using fragment_t = typename APP_T::fragment_t
 
+using context_t = typename APP_T::context_t
 
+using message_manager_t = MESSAGE_MANAGER_T
 
+ + + + + + + + + + + + + + + + + + +

+Public Member Functions

Worker (std::shared_ptr< APP_T > app, std::shared_ptr< fragment_t > graph)
 
Worker (std::shared_ptr< APP_T > app, std::shared_ptr< fragment_t > graph, std::shared_ptr< context_t > context)
 
+void Init (const CommSpec &comm_spec, const ParallelEngineSpec &pe_spec=DefaultParallelEngineSpec())
 
+void Finalize ()
 
+template<class... Args>
void Query (Args &&... args)
 
+std::shared_ptr< context_t > GetContext ()
 
+const TerminateInfoGetTerminateInfo () const
 
+void Output (std::ostream &os)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Private Member Functions

+template<typename T = message_manager_t>
std::enable_if< std::is_same< T, ParallelMessageManagerOpt >::value &&std::is_base_of< ParallelAppBase< fragment_t, context_t, T >, APP_T >::value >::type initPool (const ParallelEngineSpec &pe_spec)
 
+template<typename T = message_manager_t>
std::enable_if< !std::is_same< T, ParallelMessageManagerOpt >::value||!std::is_base_of< ParallelAppBase< fragment_t, context_t, T >, APP_T >::value >::type initPool (const ParallelEngineSpec &pe_spec)
 
+template<typename T = message_manager_t>
std::enable_if< std::is_same< T, AutoParallelMessageManager< fragment_t > >::value >::type runPEval ()
 
+template<typename T = message_manager_t>
std::enable_if< !std::is_same< T, AutoParallelMessageManager< fragment_t > >::value >::type runPEval ()
 
+template<typename T = message_manager_t>
std::enable_if< std::is_same< T, AutoParallelMessageManager< fragment_t > >::value >::type runIncEval ()
 
+template<typename T = message_manager_t>
std::enable_if< !std::is_same< T, AutoParallelMessageManager< fragment_t > >::value >::type runIncEval ()
 
+template<typename T = context_t>
std::enable_if< std::is_base_of< MutationContext< fragment_t >, T >::value >::type processMutation ()
 
+template<typename T = context_t>
std::enable_if< !std::is_base_of< MutationContext< fragment_t >, T >::value >::type processMutation ()
 
+ + + + + + + + + + + + + +

+Private Attributes

+std::shared_ptr< APP_T > app_
 
+std::shared_ptr< context_t > context_
 
+std::shared_ptr< fragment_t > fragment_
 
+message_manager_t messages_
 
+CommSpec comm_spec_
 
+PrepareConf prepare_conf_
 
+

Detailed Description

+

template<typename APP_T, typename MESSAGE_MANAGER_T>
+class grape::Worker< APP_T, MESSAGE_MANAGER_T >

+ +

A Worker manages the computation cycle.

+
Template Parameters
+ + + +
APP_T
MESSAGE_MANAGER_T
+
+
+
+ + + + diff --git a/classgrape_1_1batch__shuffle__message__manager__impl_1_1PostProcess-members.html b/classgrape_1_1batch__shuffle__message__manager__impl_1_1PostProcess-members.html new file mode 100644 index 00000000..d7d4f1cf --- /dev/null +++ b/classgrape_1_1batch__shuffle__message__manager__impl_1_1PostProcess-members.html @@ -0,0 +1,90 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::batch_shuffle_message_manager_impl::PostProcess< GRAPH_T, DATA_T > Member List
+
+
+ +

This is the complete list of members for grape::batch_shuffle_message_manager_impl::PostProcess< GRAPH_T, DATA_T >, including all inherited members.

+ + + + + + + + + +
array_t typedef (defined in grape::batch_shuffle_message_manager_impl::PostProcess< GRAPH_T, DATA_T >)grape::batch_shuffle_message_manager_impl::PostProcess< GRAPH_T, DATA_T >private
buffers_ (defined in grape::batch_shuffle_message_manager_impl::PostProcess< GRAPH_T, DATA_T >)grape::batch_shuffle_message_manager_impl::PostProcess< GRAPH_T, DATA_T >private
data_ (defined in grape::batch_shuffle_message_manager_impl::PostProcess< GRAPH_T, DATA_T >)grape::batch_shuffle_message_manager_impl::PostProcess< GRAPH_T, DATA_T >private
exec(fid_t fid) (defined in grape::batch_shuffle_message_manager_impl::PostProcess< GRAPH_T, DATA_T >)grape::batch_shuffle_message_manager_impl::PostProcess< GRAPH_T, DATA_T >inlinevirtual
frag_ (defined in grape::batch_shuffle_message_manager_impl::PostProcess< GRAPH_T, DATA_T >)grape::batch_shuffle_message_manager_impl::PostProcess< GRAPH_T, DATA_T >private
PostProcess(const GRAPH_T &frag, array_t &data, std::vector< std::vector< char, Allocator< char >>> &buffers) (defined in grape::batch_shuffle_message_manager_impl::PostProcess< GRAPH_T, DATA_T >)grape::batch_shuffle_message_manager_impl::PostProcess< GRAPH_T, DATA_T >inline
PostProcessBase() (defined in grape::batch_shuffle_message_manager_impl::PostProcessBase)grape::batch_shuffle_message_manager_impl::PostProcessBaseinline
~PostProcessBase() (defined in grape::batch_shuffle_message_manager_impl::PostProcessBase)grape::batch_shuffle_message_manager_impl::PostProcessBaseinlinevirtual
+ + + + diff --git a/classgrape_1_1batch__shuffle__message__manager__impl_1_1PostProcess.html b/classgrape_1_1batch__shuffle__message__manager__impl_1_1PostProcess.html new file mode 100644 index 00000000..29f65e0c --- /dev/null +++ b/classgrape_1_1batch__shuffle__message__manager__impl_1_1PostProcess.html @@ -0,0 +1,121 @@ + + + + + + + +libgrape-lite: grape::batch_shuffle_message_manager_impl::PostProcess< GRAPH_T, DATA_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::batch_shuffle_message_manager_impl::PostProcess< GRAPH_T, DATA_T > Class Template Reference
+
+
+
+Inheritance diagram for grape::batch_shuffle_message_manager_impl::PostProcess< GRAPH_T, DATA_T >:
+
+
+ + +grape::batch_shuffle_message_manager_impl::PostProcessBase + +
+ + + + + + +

+Public Member Functions

PostProcess (const GRAPH_T &frag, array_t &data, std::vector< std::vector< char, Allocator< char >>> &buffers)
 
+void exec (fid_t fid)
 
+ + + +

+Private Types

+using array_t = typename GRAPH_T::template vertex_array_t< DATA_T >
 
+ + + + + + + +

+Private Attributes

+const GRAPH_T & frag_
 
+array_t & data_
 
+std::vector< std::vector< char, Allocator< char > > > & buffers_
 
+
+ + + + diff --git a/classgrape_1_1batch__shuffle__message__manager__impl_1_1PostProcess.png b/classgrape_1_1batch__shuffle__message__manager__impl_1_1PostProcess.png new file mode 100644 index 0000000000000000000000000000000000000000..ee02de47cf851e7863256d59585b929d78b810e0 GIT binary patch literal 1498 zcmcK4X;9K>90%~fT4Z=-Yhr3Sd9|8i=8+RBtw)BYD6k%Q>$Z60C?41$;$|8~VN08C znpa_CvTBG59(g2CnnszoA}zY6f|io2W$Mz-&g|~YzTIc$d7kg{o!`sPJbAu89%^7+ zFaQ8*h|_K;08kLiv#+v}{9JL#4VGUzzGpD*+uPgnI450A%YSlHp8njOot-=LCJp3I z;V*s!-7UA{{=DfmUi6mKOuIdh%upw@HI3x7+cFzRU<_lei>ZA3H zESOi;pWAw)8)c(8t8YwsqK7O&BforwUaB{Ue942&4H!!2p_M3lQeFWIAQ-+kk>7JDqsXFh=| zQ2TwoJ?XSRE>B6iG)b6Pruy;Nx8~NdMK(?^cpxMmQ4hGppwVEvXoYlm2vX zx2%XB|4hi+F(nvqutEf^LdDJ3oU^M1v#~6}ht{@t{3f;?yRV4x%nm+QDlE-=j*7<8 zAMCV-#UyCyg?ZFXO^z9yl(x-{aU#|60hiylCYdR6odj<-sU-$l#T;SXz41QdRjq{3 zAmqr>*_lQsijZOD;@HYrQb$KE)E+H14dfrJT4dUcgO@|X!-e*a%$w5k(HRRdv@hah zHfL>Id*K8nC5%?PaEpA&e(`8{)qQ=Td5rM7d38;VBCNEks!2$(0-Gl%K=5y|Z4{+C zV(9$cLOSEqXwbRi!M;`O7vdYbx_7S~2Cp`=)|K(Hp*{GMFL5i*;_acJjQnBkg^B(} z60w>(-2QRuK$u@e<_qbidnVy6#V(s}_=teV8s7HlOiKTOUOVcA2SrK}FOoHAcBnqR zO-4)oHqmJ5mUMH#5K%UuGNoUf5kRIj+((x15_#LFMXa8Skx423cbSsuJn5E}xSX2d z_t{FT8Er~ZVH#H&&j>;&9jv^POUjayQpoi;{J#p42Hvca?rC-w;|HLCXmd>^)fzX|qYZnl zJ70Qo0auB66uiaRon=e>?e~n=aOA_z9~v2x+rY@d%w3zn;SaWU=)S_r>5nrZj|^D( z`HcOM#06E-f#tpZ$Ng`#wEJ14bAzoFrSaA^XvdMs$L}9yjrXwwu#&SB5Au3**TD|2 zi%w`BJy*hj$9Ie|y+p~d_{`KGEF|L2#1>TJD&a=!6xV{^9fzm4%oV=oth{eCo!3oH zf7r1xCId&|J{tbFY;;mTvI)n=iR%Y{){epMVY!M!f@${D#(@$t5XWGR|+nK zO2u|tm6-Lx7`1GrHb1>Ej!iTdZ=!;u`%ds%^d}ZWi{7Y=Hc>b!mQy?@ii1}8{#rxA z)s>1!4rOszqQQ>SDdp+e**fe)YAvMTmNmt*j6>qAa={Fd`xM87b%lFO4$ir9Uj=2n zYiOKV{@${{^!oU5QET@R^FhHKBC=t|D;-@`_O-gSdaa^o7D`|?yEgOvAP=F)q}YOC zpH;9J%;zN$AiKyLniUG2@K=Ay&x$Qusew^MpZG? + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::batch_shuffle_message_manager_impl::PostProcessBase Member List
+
+ + + + + diff --git a/classgrape_1_1batch__shuffle__message__manager__impl_1_1PostProcessBase.html b/classgrape_1_1batch__shuffle__message__manager__impl_1_1PostProcessBase.html new file mode 100644 index 00000000..429ab51c --- /dev/null +++ b/classgrape_1_1batch__shuffle__message__manager__impl_1_1PostProcessBase.html @@ -0,0 +1,98 @@ + + + + + + + +libgrape-lite: grape::batch_shuffle_message_manager_impl::PostProcessBase Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::batch_shuffle_message_manager_impl::PostProcessBase Class Referenceabstract
+
+
+
+Inheritance diagram for grape::batch_shuffle_message_manager_impl::PostProcessBase:
+
+
+ + +grape::batch_shuffle_message_manager_impl::PostProcess< GRAPH_T, DATA_T > + +
+ + + + +

+Public Member Functions

+virtual void exec (fid_t fid)=0
 
+
+ + + + diff --git a/classgrape_1_1batch__shuffle__message__manager__impl_1_1PostProcessBase.png b/classgrape_1_1batch__shuffle__message__manager__impl_1_1PostProcessBase.png new file mode 100644 index 0000000000000000000000000000000000000000..6f14a836383b1b6a96298627690260f235b5fcee GIT binary patch literal 1502 zcmb`{Sya+l90%|}G2y)w7s zmY5p31W{&_(&APwxS@0?HBC%hQbBa6GcR-Ib?!O$-tYaL-^1_Wb8e=)>nX6Tx-0+y zV5AcQ1ppwfIJ-+rh|gs>5iP#d++92!c6N5e@$yYnFQjM@CujplPa=n`ODe3W9x(K<*LmaaWTRxBTE9Rq4tEx5BFd`cfO34gD|Tz8H+ z|LSC<>w-xetnV%(VR_4O1+qhrQ{bs5KFb^{%^2o7#lL@P+z5j;A)gT0ggYHVFZEea z<26ruChc(eEG+rK`>RPPb4Tmvk zr3xO{`MTp7M@E?k?;oJ*jmz@cfq|12FzT&^s?ksST*ICqcsgx;eBb;Na_qqml+?X3 z{WT>sa`E|&J2uo`AaZJ% z?vD1jU#6q5Kv}PNGozb8r90D^!QWUBPV498d)&Im_-18W7%7E|5~bR2cBbfei=gop@1?9LjHJ*l5xko z)1835o}z?&g9aCM8d-pPTmI9Ap$Mn~9KFOcd~I#ts09UyZREsj-@5@~elPmV{KMrx ze*X6YL6dvoZcWobzuB2V%S>c0D%Y$=i3$ZbAoP*qv7HCR^XHniG(rq>FVL)0)9~L4%gO8ywO%zHA`TUmE+Oy(dAF6GB|8Gu@gc6@_i@r$Wss zLXECVr=F@*LV4lF4bHGZw&+7JlG6JWZ++;?$iD17{FO9oo1)b}YRE{irME3BCKg*n zosMC#<9+=sgM24a4NL49OiUEk;$v{@2^3~^;(~v2Qb1lDm@cH03CC7sv7ws~E}d+X zP9Y3V>^J>r_?1EDo$WPfo;`M{*QhP@aVYoE(CvM77wmcz2pSG2THB3YA4K;VYDISc z;iEh`gCLb4`)e@6jzf#>2doh675P*SbtMnGH&Ni_S?t@%$!4h}ZYEd04li>LZw)Ve zSk%&VCHEp;hRWA+ggw7xeSiu2!m+@jE3`Wep&nX=w=oq{OP%mXdDy&W661Kf44B*Z z1t{w6U{%Z2Cf&TOt72pB_mZvwSsdG_ijZ4#g!4+dN!^y;rbi>c*2}azwecW}{@2}N z`XLHkKE!&`WOYiIS}7L4D(G%dCnoY8!QjZQy?+YWn3QX@^w`OmT1c1x4dixib$+By)=WUg6nCw9bZWAgc8`QORmDQ6*IK0ED+saZT;V%_eprXuxrJ2!B&G7tl<58Qe$*!npA9JGZ zAkL^-xx8Wq_XbAO?c6$&q_NY-NO-8#=KeU(MrV64IrjahJU1#-MD(vHtjdSptopaE jAK)~;LmUz_EEnvyyoxQFKkF?Jf5rgP!4=U654!p{q^H>z literal 0 HcmV?d00001 diff --git a/classgrape_1_1cuda_1_1ArrayView-members.html b/classgrape_1_1cuda_1_1ArrayView-members.html new file mode 100644 index 00000000..5d04f6d4 --- /dev/null +++ b/classgrape_1_1cuda_1_1ArrayView-members.html @@ -0,0 +1,99 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::ArrayView< T > Member List
+
+
+ +

This is the complete list of members for grape::cuda::ArrayView< T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + +
ArrayView()=default (defined in grape::cuda::ArrayView< T >)grape::cuda::ArrayView< T >
ArrayView(const thrust::device_vector< T > &vec) (defined in grape::cuda::ArrayView< T >)grape::cuda::ArrayView< T >inlineexplicit
ArrayView(const pinned_vector< T > &vec) (defined in grape::cuda::ArrayView< T >)grape::cuda::ArrayView< T >inlineexplicit
ArrayView(T *data, size_t size) (defined in grape::cuda::ArrayView< T >)grape::cuda::ArrayView< T >inline
begin() (defined in grape::cuda::ArrayView< T >)grape::cuda::ArrayView< T >inline
begin() const (defined in grape::cuda::ArrayView< T >)grape::cuda::ArrayView< T >inline
data() (defined in grape::cuda::ArrayView< T >)grape::cuda::ArrayView< T >inline
data() const (defined in grape::cuda::ArrayView< T >)grape::cuda::ArrayView< T >inline
data_ (defined in grape::cuda::ArrayView< T >)grape::cuda::ArrayView< T >private
empty() const (defined in grape::cuda::ArrayView< T >)grape::cuda::ArrayView< T >inline
end() (defined in grape::cuda::ArrayView< T >)grape::cuda::ArrayView< T >inline
end() const (defined in grape::cuda::ArrayView< T >)grape::cuda::ArrayView< T >inline
operator[](size_t i) (defined in grape::cuda::ArrayView< T >)grape::cuda::ArrayView< T >inline
operator[](size_t i) const (defined in grape::cuda::ArrayView< T >)grape::cuda::ArrayView< T >inline
size() const (defined in grape::cuda::ArrayView< T >)grape::cuda::ArrayView< T >inline
size_ (defined in grape::cuda::ArrayView< T >)grape::cuda::ArrayView< T >private
Swap(ArrayView< T > &rhs) (defined in grape::cuda::ArrayView< T >)grape::cuda::ArrayView< T >inline
+ + + + diff --git a/classgrape_1_1cuda_1_1ArrayView.html b/classgrape_1_1cuda_1_1ArrayView.html new file mode 100644 index 00000000..00f9684f --- /dev/null +++ b/classgrape_1_1cuda_1_1ArrayView.html @@ -0,0 +1,138 @@ + + + + + + + +libgrape-lite: grape::cuda::ArrayView< T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::ArrayView< T > Class Template Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

ArrayView (const thrust::device_vector< T > &vec)
 
ArrayView (const pinned_vector< T > &vec)
 
+DEV_HOST ArrayView (T *data, size_t size)
 
+DEV_HOST_INLINE T * data ()
 
+DEV_HOST_INLINE const T * data () const
 
+DEV_HOST_INLINE size_t size () const
 
+DEV_HOST_INLINE bool empty () const
 
+DEV_INLINE T & operator[] (size_t i)
 
+DEV_INLINE const T & operator[] (size_t i) const
 
+DEV_INLINE void Swap (ArrayView< T > &rhs)
 
+DEV_INLINE T * begin ()
 
+DEV_INLINE T * end ()
 
+DEV_INLINE const T * begin () const
 
+DEV_INLINE const T * end () const
 
+ + + + + +

+Private Attributes

+T * data_ {}
 
+size_t size_ {}
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1BatchShuffleAppBase-members.html b/classgrape_1_1cuda_1_1BatchShuffleAppBase-members.html new file mode 100644 index 00000000..8c8d8d6c --- /dev/null +++ b/classgrape_1_1cuda_1_1BatchShuffleAppBase-members.html @@ -0,0 +1,91 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::BatchShuffleAppBase< FRAG_T, CONTEXT_T > Member List
+
+ + + + + diff --git a/classgrape_1_1cuda_1_1BatchShuffleAppBase.html b/classgrape_1_1cuda_1_1BatchShuffleAppBase.html new file mode 100644 index 00000000..8421391f --- /dev/null +++ b/classgrape_1_1cuda_1_1BatchShuffleAppBase.html @@ -0,0 +1,295 @@ + + + + + + + +libgrape-lite: grape::cuda::BatchShuffleAppBase< FRAG_T, CONTEXT_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::BatchShuffleAppBase< FRAG_T, CONTEXT_T > Class Template Referenceabstract
+
+
+ +

GPUAppBase is a base class for GPU apps. Users can process messages in a more flexible way in this kind of app. It contains an GPUMessageManager to process messages, which enables send/receive messages during computation. This strategy improves performance by overlapping the communication time and the evaluation time. + More...

+ +

#include <batch_shuffle_app_base.h>

+ + + + +

+Public Types

+using message_manager_t = grape::cuda::BatchShuffleMessageManager
 
+ + + + + + + +

+Public Member Functions

virtual void PEval (const FRAG_T &graph, CONTEXT_T &context, message_manager_t &messages)=0
 Partial evaluation to implement. More...
 
virtual void IncEval (const FRAG_T &graph, CONTEXT_T &context, message_manager_t &messages)=0
 Incremental evaluation to implement. More...
 
+ + + + + + + + + +

+Static Public Attributes

+static constexpr bool need_split_edges = false
 
+static constexpr bool need_build_device_vm = false
 
static constexpr grape::MessageStrategy message_strategy
 
static constexpr grape::LoadStrategy load_strategy
 
+

Detailed Description

+

template<typename FRAG_T, typename CONTEXT_T>
+class grape::cuda::BatchShuffleAppBase< FRAG_T, CONTEXT_T >

+ +

GPUAppBase is a base class for GPU apps. Users can process messages in a more flexible way in this kind of app. It contains an GPUMessageManager to process messages, which enables send/receive messages during computation. This strategy improves performance by overlapping the communication time and the evaluation time.

+
Template Parameters
+ + + +
FRAG_T
CONTEXT_T
+
+
+

Member Function Documentation

+ +

◆ IncEval()

+ +
+
+
+template<typename FRAG_T , typename CONTEXT_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual void grape::cuda::BatchShuffleAppBase< FRAG_T, CONTEXT_T >::IncEval (const FRAG_T & graph,
CONTEXT_T & context,
message_manager_tmessages 
)
+
+pure virtual
+
+ +

Incremental evaluation to implement.

+
Note
: This pure virtual function works as an interface, instructing users to implement in the specific app. The IncEval in the inherited apps would be invoked directly, not via virtual functions.
+
Parameters
+ + + + +
graph
context
messages
+
+
+ +
+
+ +

◆ PEval()

+ +
+
+
+template<typename FRAG_T , typename CONTEXT_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual void grape::cuda::BatchShuffleAppBase< FRAG_T, CONTEXT_T >::PEval (const FRAG_T & graph,
CONTEXT_T & context,
message_manager_tmessages 
)
+
+pure virtual
+
+ +

Partial evaluation to implement.

+
Note
: This pure virtual function works as an interface, instructing users to implement in the specific app. The PEval in the inherited apps would be invoked directly, not via virtual functions.
+
Parameters
+ + + + +
graph
context
messages
+
+
+ +
+
+

Member Data Documentation

+ +

◆ load_strategy

+ +
+
+
+template<typename FRAG_T , typename CONTEXT_T >
+ + + + + +
+ + + + +
constexpr grape::LoadStrategy grape::cuda::BatchShuffleAppBase< FRAG_T, CONTEXT_T >::load_strategy
+
+staticconstexpr
+
+Initial value:
=
+
grape::LoadStrategy::kOnlyOut
+
+
+
+ +

◆ message_strategy

+ +
+
+
+template<typename FRAG_T , typename CONTEXT_T >
+ + + + + +
+ + + + +
constexpr grape::MessageStrategy grape::cuda::BatchShuffleAppBase< FRAG_T, CONTEXT_T >::message_strategy
+
+staticconstexpr
+
+Initial value: +
+
+
+ + + + diff --git a/classgrape_1_1cuda_1_1BatchShuffleMessageManager-members.html b/classgrape_1_1cuda_1_1BatchShuffleMessageManager-members.html new file mode 100644 index 00000000..e50af779 --- /dev/null +++ b/classgrape_1_1cuda_1_1BatchShuffleMessageManager-members.html @@ -0,0 +1,106 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::BatchShuffleMessageManager Member List
+
+
+ +

This is the complete list of members for grape::cuda::BatchShuffleMessageManager, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + +
comm_spec_ (defined in grape::cuda::BatchShuffleMessageManager)grape::cuda::BatchShuffleMessageManagerprivate
comm_stream_ (defined in grape::cuda::BatchShuffleMessageManager)grape::cuda::BatchShuffleMessageManagerprivate
computation_finished_ (defined in grape::cuda::BatchShuffleMessageManager)grape::cuda::BatchShuffleMessageManagerprivate
compute_stream_ (defined in grape::cuda::BatchShuffleMessageManager)grape::cuda::BatchShuffleMessageManagerprivate
fid_ (defined in grape::cuda::BatchShuffleMessageManager)grape::cuda::BatchShuffleMessageManagerprivate
Finalize() constgrape::cuda::BatchShuffleMessageManagerinline
FinishARound()grape::cuda::BatchShuffleMessageManagerinline
fnum_ (defined in grape::cuda::BatchShuffleMessageManager)grape::cuda::BatchShuffleMessageManagerprivate
ForceContinue()grape::cuda::BatchShuffleMessageManagerinline
GetAccumulatedCommTime() const (defined in grape::cuda::BatchShuffleMessageManager)grape::cuda::BatchShuffleMessageManagerinline
GetMsgSize() constgrape::cuda::BatchShuffleMessageManagerinline
Init(const grape::CommSpec &comm_spec)grape::cuda::BatchShuffleMessageManagerinline
nccl_comm() (defined in grape::cuda::BatchShuffleMessageManager)grape::cuda::BatchShuffleMessageManagerinline
nccl_comm_ (defined in grape::cuda::BatchShuffleMessageManager)grape::cuda::BatchShuffleMessageManagerprivate
sent_size_ (defined in grape::cuda::BatchShuffleMessageManager)grape::cuda::BatchShuffleMessageManagerprivate
shuffle_in_buffers_ (defined in grape::cuda::BatchShuffleMessageManager)grape::cuda::BatchShuffleMessageManagerprivate
shuffle_out_buffers_ (defined in grape::cuda::BatchShuffleMessageManager)grape::cuda::BatchShuffleMessageManagerprivate
Start()grape::cuda::BatchShuffleMessageManagerinline
StartARound()grape::cuda::BatchShuffleMessageManagerinline
stream() (defined in grape::cuda::BatchShuffleMessageManager)grape::cuda::BatchShuffleMessageManagerinline
SyncInnerVertices(const GRAPH_T &h_frag, VertexArray< DATA_T, typename GRAPH_T::vid_t > &h_data)grape::cuda::BatchShuffleMessageManagerinline
to_terminate_ (defined in grape::cuda::BatchShuffleMessageManager)grape::cuda::BatchShuffleMessageManagerprivate
total_memcpy_time_ (defined in grape::cuda::BatchShuffleMessageManager)grape::cuda::BatchShuffleMessageManagerprivate
ToTerminate() constgrape::cuda::BatchShuffleMessageManagerinline
+ + + + diff --git a/classgrape_1_1cuda_1_1BatchShuffleMessageManager.html b/classgrape_1_1cuda_1_1BatchShuffleMessageManager.html new file mode 100644 index 00000000..58e41b5b --- /dev/null +++ b/classgrape_1_1cuda_1_1BatchShuffleMessageManager.html @@ -0,0 +1,340 @@ + + + + + + + +libgrape-lite: grape::cuda::BatchShuffleMessageManager Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::BatchShuffleMessageManager Class Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

void Init (const grape::CommSpec &comm_spec)
 Initialize message manager. More...
 
+void Start ()
 This function will be called before Init step of applications.
 
+void StartARound ()
 This function will be called before each evaluation step of applications.
 
+void FinishARound ()
 This function will be called after each evaluation step of applications.
 
+void Finalize () const
 This function will be called after the evaluation of applications.
 
template<typename GRAPH_T , typename DATA_T >
void SyncInnerVertices (const GRAPH_T &h_frag, VertexArray< DATA_T, typename GRAPH_T::vid_t > &h_data)
 Synchronize the inner vertices' data of a vertex array to their mirrors. The data_out and data_in are the same vertex array. More...
 
bool ToTerminate () const
 This function will be called by worker after a step to determine whether evaluation is terminated. More...
 
size_t GetMsgSize () const
 Get size of messages sent by this message manager instance. The return value is valid only after FinishARound is called. StartARound will reset the value to zero. More...
 
void ForceContinue ()
 Force continue to evaluate one more round even if all workers stop sending message. More...
 
+Streamstream ()
 
+ncclComm_t nccl_comm ()
 
+double GetAccumulatedCommTime () const
 
+ + + + + + + + + + + + + + + + + + + + + + + + + +

+Private Attributes

+grape::CommSpec comm_spec_
 
+fid_t fid_
 
+fid_t fnum_
 
+std::shared_ptr< ncclComm_t > nccl_comm_
 
+Stream compute_stream_
 
+Stream comm_stream_
 
+std::vector< thrust::device_vector< char > > shuffle_in_buffers_
 
+std::vector< thrust::device_vector< char > > shuffle_out_buffers_
 
+Event computation_finished_
 
+size_t sent_size_ {}
 
+double total_memcpy_time_ {}
 
+bool to_terminate_ {}
 
+

Member Function Documentation

+ +

◆ ForceContinue()

+ +
+
+ + + + + +
+ + + + + + + +
void grape::cuda::BatchShuffleMessageManager::ForceContinue ()
+
+inline
+
+ +

Force continue to evaluate one more round even if all workers stop sending message.

+

This function can be called by applications.

+ +
+
+ +

◆ GetMsgSize()

+ +
+
+ + + + + +
+ + + + + + + +
size_t grape::cuda::BatchShuffleMessageManager::GetMsgSize () const
+
+inline
+
+ +

Get size of messages sent by this message manager instance. The return value is valid only after FinishARound is called. StartARound will reset the value to zero.

+
Returns
Size of messages sent by this message manager instance.
+ +
+
+ +

◆ Init()

+ +
+
+ + + + + +
+ + + + + + + + +
void grape::cuda::BatchShuffleMessageManager::Init (const grape::CommSpeccomm_spec)
+
+inline
+
+ +

Initialize message manager.

+
Parameters
+ + +
commMPI_Comm object.
+
+
+ +
+
+ +

◆ SyncInnerVertices()

+ +
+
+
+template<typename GRAPH_T , typename DATA_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void grape::cuda::BatchShuffleMessageManager::SyncInnerVertices (const GRAPH_T & h_frag,
VertexArray< DATA_T, typename GRAPH_T::vid_t > & h_data 
)
+
+inline
+
+ +

Synchronize the inner vertices' data of a vertex array to their mirrors. The data_out and data_in are the same vertex array.

+
Template Parameters
+ + + +
GRAPH_T
DATA_T
+
+
+
Parameters
+ + + +
frag
data
+
+
+ +
+
+ +

◆ ToTerminate()

+ +
+
+ + + + + +
+ + + + + + + +
bool grape::cuda::BatchShuffleMessageManager::ToTerminate () const
+
+inline
+
+ +

This function will be called by worker after a step to determine whether evaluation is terminated.

+
Returns
Whether evaluation is terminated.
+ +
+
+
+ + + + diff --git a/classgrape_1_1cuda_1_1Bitset-members.html b/classgrape_1_1cuda_1_1Bitset-members.html new file mode 100644 index 00000000..5e76a50a --- /dev/null +++ b/classgrape_1_1cuda_1_1Bitset-members.html @@ -0,0 +1,99 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::Bitset< SIZE_T > Member List
+
+
+ +

This is the complete list of members for grape::cuda::Bitset< SIZE_T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + +
Bitset()=default (defined in grape::cuda::Bitset< SIZE_T >)grape::cuda::Bitset< SIZE_T >
Bitset(SIZE_T size) (defined in grape::cuda::Bitset< SIZE_T >)grape::cuda::Bitset< SIZE_T >inlineexplicit
Clear() (defined in grape::cuda::Bitset< SIZE_T >)grape::cuda::Bitset< SIZE_T >inline
Clear(const Stream &stream) (defined in grape::cuda::Bitset< SIZE_T >)grape::cuda::Bitset< SIZE_T >inline
data_ (defined in grape::cuda::Bitset< SIZE_T >)grape::cuda::Bitset< SIZE_T >private
DeviceObject() (defined in grape::cuda::Bitset< SIZE_T >)grape::cuda::Bitset< SIZE_T >inline
getNumWords(SIZE_T size) (defined in grape::cuda::Bitset< SIZE_T >)grape::cuda::Bitset< SIZE_T >inlineprivatestatic
GetPositiveCount() const (defined in grape::cuda::Bitset< SIZE_T >)grape::cuda::Bitset< SIZE_T >inline
GetPositiveCount(const Stream &stream) const (defined in grape::cuda::Bitset< SIZE_T >)grape::cuda::Bitset< SIZE_T >inline
GetSize() const (defined in grape::cuda::Bitset< SIZE_T >)grape::cuda::Bitset< SIZE_T >inline
Init(SIZE_T size) (defined in grape::cuda::Bitset< SIZE_T >)grape::cuda::Bitset< SIZE_T >inline
kBitsPerWord (defined in grape::cuda::Bitset< SIZE_T >)grape::cuda::Bitset< SIZE_T >privatestatic
positive_count_ (defined in grape::cuda::Bitset< SIZE_T >)grape::cuda::Bitset< SIZE_T >private
SetBit(SIZE_T pos) (defined in grape::cuda::Bitset< SIZE_T >)grape::cuda::Bitset< SIZE_T >inline
SetBit(SIZE_T pos, const Stream &stream) (defined in grape::cuda::Bitset< SIZE_T >)grape::cuda::Bitset< SIZE_T >inline
size_ (defined in grape::cuda::Bitset< SIZE_T >)grape::cuda::Bitset< SIZE_T >private
Swap(Bitset< SIZE_T > &other) (defined in grape::cuda::Bitset< SIZE_T >)grape::cuda::Bitset< SIZE_T >inline
+ + + + diff --git a/classgrape_1_1cuda_1_1Bitset.html b/classgrape_1_1cuda_1_1Bitset.html new file mode 100644 index 00000000..ad8d4efd --- /dev/null +++ b/classgrape_1_1cuda_1_1Bitset.html @@ -0,0 +1,146 @@ + + + + + + + +libgrape-lite: grape::cuda::Bitset< SIZE_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::Bitset< SIZE_T > Class Template Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

Bitset (SIZE_T size)
 
+void Init (SIZE_T size)
 
+dev::Bitset< SIZE_T > DeviceObject ()
 
+void Clear ()
 
+void Clear (const Stream &stream)
 
+void SetBit (SIZE_T pos)
 
+void SetBit (SIZE_T pos, const Stream &stream)
 
+void Swap (Bitset< SIZE_T > &other)
 
+SIZE_T GetSize () const
 
+SIZE_T GetPositiveCount () const
 
+SIZE_T GetPositiveCount (const Stream &stream) const
 
+ + + +

+Static Private Member Functions

+static SIZE_T getNumWords (SIZE_T size)
 
+ + + + + + + +

+Private Attributes

+thrust::device_vector< uint64_t > data_
 
+SIZE_T size_ {}
 
+SharedValue< SIZE_T > positive_count_
 
+ + + +

+Static Private Attributes

+static const uint64_t kBitsPerWord = 64
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1COOFragment-members.html b/classgrape_1_1cuda_1_1COOFragment-members.html new file mode 100644 index 00000000..605cda58 --- /dev/null +++ b/classgrape_1_1cuda_1_1COOFragment-members.html @@ -0,0 +1,93 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T > Member List
+
+
+ +

This is the complete list of members for grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >, including all inherited members.

+ + + + + + + + + + + + +
device_t typedef (defined in grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >)grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >
DeviceObject() (defined in grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >)grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >inline
edata_t typedef (defined in grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >)grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >
edge_t typedef (defined in grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >)grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >
edges_ (defined in grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >)grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >private
GetEdgeNum() const (defined in grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >)grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >inline
Init(const thrust::host_vector< edge_t > &edges) (defined in grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >)grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >inline
oid_t typedef (defined in grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >)grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >
vdata_t typedef (defined in grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >)grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >
vertex_t typedef (defined in grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >)grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >
vid_t typedef (defined in grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >)grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >
+ + + + diff --git a/classgrape_1_1cuda_1_1COOFragment.html b/classgrape_1_1cuda_1_1COOFragment.html new file mode 100644 index 00000000..79fb41c5 --- /dev/null +++ b/classgrape_1_1cuda_1_1COOFragment.html @@ -0,0 +1,127 @@ + + + + + + + +libgrape-lite: grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T > Class Template Reference
+
+
+ + + + + + + + + + + + + + + + +

+Public Types

+using oid_t = OID_T
 
+using vid_t = VID_T
 
+using vdata_t = VDATA_T
 
+using edata_t = EDATA_T
 
+using vertex_t = Vertex< VID_T >
 
+using edge_t = Edge< VID_T, EDATA_T >
 
+using device_t = dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >
 
+ + + + + + + +

+Public Member Functions

+void Init (const thrust::host_vector< edge_t > &edges)
 
+device_t DeviceObject ()
 
+size_t GetEdgeNum () const
 
+ + + +

+Private Attributes

+thrust::device_vector< edge_tedges_
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1Communicator-members.html b/classgrape_1_1cuda_1_1Communicator-members.html new file mode 100644 index 00000000..22cdea39 --- /dev/null +++ b/classgrape_1_1cuda_1_1Communicator-members.html @@ -0,0 +1,104 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::Communicator Member List
+
+
+ +

This is the complete list of members for grape::cuda::Communicator, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + +
AllGather(T msg_in) (defined in grape::cuda::Communicator)grape::cuda::Communicatorinline
comm_ (defined in grape::cuda::Communicator)grape::cuda::Communicatorprivate
Communicator()=default (defined in grape::cuda::Communicator)grape::cuda::Communicator
InitCommunicator(MPI_Comm comm, ncclComm_t nccl_comm) (defined in grape::cuda::Communicator)grape::cuda::Communicatorinline
Max(T msg_in, T &msg_out, const Stream &stream) (defined in grape::cuda::Communicator)grape::cuda::Communicatorinline
Max(T *msg_in, T &msg_out, const Stream &stream) (defined in grape::cuda::Communicator)grape::cuda::Communicatorinline
Max(T msg_in, T &msg_out) (defined in grape::cuda::Communicator)grape::cuda::Communicatorinline
Min(T msg_in, T &msg_out, const Stream &stream) (defined in grape::cuda::Communicator)grape::cuda::Communicatorinline
Min(T *msg_in, T &msg_out, const Stream &stream) (defined in grape::cuda::Communicator)grape::cuda::Communicatorinline
Min(T msg_in, T &msg_out) (defined in grape::cuda::Communicator)grape::cuda::Communicatorinline
mpiType() (defined in grape::cuda::Communicator)grape::cuda::Communicatorinlineprivate
n_rank_ (defined in grape::cuda::Communicator)grape::cuda::Communicatorprivate
nccl_comm_ (defined in grape::cuda::Communicator)grape::cuda::Communicatorprivate
ncclType() (defined in grape::cuda::Communicator)grape::cuda::Communicatorinlineprivate
reduce(T *msg_in, T *msg_out, ncclRedOp_t op, const Stream &stream) (defined in grape::cuda::Communicator)grape::cuda::Communicatorinlineprivate
reduce(T msg_in, T &msg_out, ncclRedOp_t op, const Stream &stream) (defined in grape::cuda::Communicator)grape::cuda::Communicatorinlineprivate
reduce(T *msg_in, T &msg_out, ncclRedOp_t op, const Stream &stream) (defined in grape::cuda::Communicator)grape::cuda::Communicatorinlineprivate
reduce(const T *msg_in, T *msg_out, MPI_Op op) (defined in grape::cuda::Communicator)grape::cuda::Communicatorinlineprivate
Sum(T msg_in, T &msg_out, const Stream &stream) (defined in grape::cuda::Communicator)grape::cuda::Communicatorinline
Sum(T *msg_in, T &msg_out, const Stream &stream) (defined in grape::cuda::Communicator)grape::cuda::Communicatorinline
Sum(T msg_in, T &msg_out) (defined in grape::cuda::Communicator)grape::cuda::Communicatorinline
~Communicator()=default (defined in grape::cuda::Communicator)grape::cuda::Communicatorvirtual
+ + + + diff --git a/classgrape_1_1cuda_1_1Communicator.html b/classgrape_1_1cuda_1_1Communicator.html new file mode 100644 index 00000000..17d43e61 --- /dev/null +++ b/classgrape_1_1cuda_1_1Communicator.html @@ -0,0 +1,170 @@ + + + + + + + +libgrape-lite: grape::cuda::Communicator Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::Communicator Class Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+void InitCommunicator (MPI_Comm comm, ncclComm_t nccl_comm)
 
+template<typename T >
void Sum (T msg_in, T &msg_out, const Stream &stream)
 
+template<typename T >
void Sum (T *msg_in, T &msg_out, const Stream &stream)
 
+template<typename T >
void Sum (T msg_in, T &msg_out)
 
+template<typename T >
void Min (T msg_in, T &msg_out, const Stream &stream)
 
+template<typename T >
void Min (T *msg_in, T &msg_out, const Stream &stream)
 
+template<typename T >
void Min (T msg_in, T &msg_out)
 
+template<typename T >
void Max (T msg_in, T &msg_out, const Stream &stream)
 
+template<typename T >
void Max (T *msg_in, T &msg_out, const Stream &stream)
 
+template<typename T >
void Max (T msg_in, T &msg_out)
 
+template<typename T >
std::vector< T > AllGather (T msg_in)
 
+ + + + + + + + + + + + + + + + + + + +

+Private Member Functions

+template<typename T >
ncclDataType_t ncclType ()
 
+template<typename T >
MPI_Datatype mpiType ()
 
+template<typename T >
void reduce (T *msg_in, T *msg_out, ncclRedOp_t op, const Stream &stream)
 
+template<typename T >
void reduce (T msg_in, T &msg_out, ncclRedOp_t op, const Stream &stream)
 
+template<typename T >
void reduce (T *msg_in, T &msg_out, ncclRedOp_t op, const Stream &stream)
 
+template<typename T >
void reduce (const T *msg_in, T *msg_out, MPI_Op op)
 
+ + + + + + + +

+Private Attributes

+int n_rank_ {}
 
+ncclComm_t nccl_comm_ {}
 
+MPI_Comm comm_
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1DenseVertexSet-members.html b/classgrape_1_1cuda_1_1DenseVertexSet-members.html new file mode 100644 index 00000000..6deecf18 --- /dev/null +++ b/classgrape_1_1cuda_1_1DenseVertexSet-members.html @@ -0,0 +1,97 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::DenseVertexSet< VID_T > Member List
+
+
+ +

This is the complete list of members for grape::cuda::DenseVertexSet< VID_T >, including all inherited members.

+ + + + + + + + + + + + + + + + +
beg_ (defined in grape::cuda::DenseVertexSet< VID_T >)grape::cuda::DenseVertexSet< VID_T >private
bs_ (defined in grape::cuda::DenseVertexSet< VID_T >)grape::cuda::DenseVertexSet< VID_T >private
Clear() (defined in grape::cuda::DenseVertexSet< VID_T >)grape::cuda::DenseVertexSet< VID_T >inline
Clear(const Stream &stream) (defined in grape::cuda::DenseVertexSet< VID_T >)grape::cuda::DenseVertexSet< VID_T >inline
Count() const (defined in grape::cuda::DenseVertexSet< VID_T >)grape::cuda::DenseVertexSet< VID_T >inline
Count(const Stream &stream) const (defined in grape::cuda::DenseVertexSet< VID_T >)grape::cuda::DenseVertexSet< VID_T >inline
DenseVertexSet()=default (defined in grape::cuda::DenseVertexSet< VID_T >)grape::cuda::DenseVertexSet< VID_T >
DenseVertexSet(const VertexRange< VID_T > &range) (defined in grape::cuda::DenseVertexSet< VID_T >)grape::cuda::DenseVertexSet< VID_T >inlineexplicit
DeviceObject() (defined in grape::cuda::DenseVertexSet< VID_T >)grape::cuda::DenseVertexSet< VID_T >inline
end_ (defined in grape::cuda::DenseVertexSet< VID_T >)grape::cuda::DenseVertexSet< VID_T >private
Init(const VertexRange< VID_T > &range) (defined in grape::cuda::DenseVertexSet< VID_T >)grape::cuda::DenseVertexSet< VID_T >inline
Insert(Vertex< VID_T > u) (defined in grape::cuda::DenseVertexSet< VID_T >)grape::cuda::DenseVertexSet< VID_T >inline
Range() const (defined in grape::cuda::DenseVertexSet< VID_T >)grape::cuda::DenseVertexSet< VID_T >inline
Swap(DenseVertexSet< VID_T > &rhs) (defined in grape::cuda::DenseVertexSet< VID_T >)grape::cuda::DenseVertexSet< VID_T >inline
~DenseVertexSet()=default (defined in grape::cuda::DenseVertexSet< VID_T >)grape::cuda::DenseVertexSet< VID_T >
+ + + + diff --git a/classgrape_1_1cuda_1_1DenseVertexSet.html b/classgrape_1_1cuda_1_1DenseVertexSet.html new file mode 100644 index 00000000..a6be19e4 --- /dev/null +++ b/classgrape_1_1cuda_1_1DenseVertexSet.html @@ -0,0 +1,145 @@ + + + + + + + +libgrape-lite: grape::cuda::DenseVertexSet< VID_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::DenseVertexSet< VID_T > Class Template Reference
+
+
+ +

A vertex set with dense vertices. + More...

+ +

#include <vertex_set.h>

+ + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

DenseVertexSet (const VertexRange< VID_T > &range)
 
+void Init (const VertexRange< VID_T > &range)
 
+dev::DenseVertexSet< VID_T > DeviceObject ()
 
+void Insert (Vertex< VID_T > u)
 
+VertexRange< VID_T > Range () const
 
+VID_T Count () const
 
+VID_T Count (const Stream &stream) const
 
+void Clear ()
 
+void Clear (const Stream &stream)
 
+void Swap (DenseVertexSet< VID_T > &rhs)
 
+ + + + + + + +

+Private Attributes

+VID_T beg_ {}
 
+VID_T end_ {}
 
+Bitset< VID_T > bs_ {}
 
+

Detailed Description

+

template<typename VID_T>
+class grape::cuda::DenseVertexSet< VID_T >

+ +

A vertex set with dense vertices.

+
Template Parameters
+ + +
VID_TVertex ID type.
+
+
+
+ + + + diff --git a/classgrape_1_1cuda_1_1DeviceBuffer-members.html b/classgrape_1_1cuda_1_1DeviceBuffer-members.html new file mode 100644 index 00000000..00e420f1 --- /dev/null +++ b/classgrape_1_1cuda_1_1DeviceBuffer-members.html @@ -0,0 +1,97 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::DeviceBuffer< T > Member List
+
+
+ +

This is the complete list of members for grape::cuda::DeviceBuffer< T >, including all inherited members.

+ + + + + + + + + + + + + + + + +
capacity_ (defined in grape::cuda::DeviceBuffer< T >)grape::cuda::DeviceBuffer< T >private
data() (defined in grape::cuda::DeviceBuffer< T >)grape::cuda::DeviceBuffer< T >inline
data() const (defined in grape::cuda::DeviceBuffer< T >)grape::cuda::DeviceBuffer< T >inline
data_ (defined in grape::cuda::DeviceBuffer< T >)grape::cuda::DeviceBuffer< T >private
DeviceBuffer()=default (defined in grape::cuda::DeviceBuffer< T >)grape::cuda::DeviceBuffer< T >
DeviceBuffer(size_t size) (defined in grape::cuda::DeviceBuffer< T >)grape::cuda::DeviceBuffer< T >inlineexplicit
DeviceBuffer(const DeviceBuffer< T > &rhs) (defined in grape::cuda::DeviceBuffer< T >)grape::cuda::DeviceBuffer< T >inline
DeviceBuffer(DeviceBuffer< T > &&rhs) noexcept (defined in grape::cuda::DeviceBuffer< T >)grape::cuda::DeviceBuffer< T >inline
DeviceObject() (defined in grape::cuda::DeviceBuffer< T >)grape::cuda::DeviceBuffer< T >inline
operator=(const DeviceBuffer< T > &rhs) (defined in grape::cuda::DeviceBuffer< T >)grape::cuda::DeviceBuffer< T >inline
operator=(DeviceBuffer< T > &&rhs) noexcept (defined in grape::cuda::DeviceBuffer< T >)grape::cuda::DeviceBuffer< T >inline
resize(size_t size) (defined in grape::cuda::DeviceBuffer< T >)grape::cuda::DeviceBuffer< T >inline
size() const (defined in grape::cuda::DeviceBuffer< T >)grape::cuda::DeviceBuffer< T >inline
size_ (defined in grape::cuda::DeviceBuffer< T >)grape::cuda::DeviceBuffer< T >private
~DeviceBuffer() (defined in grape::cuda::DeviceBuffer< T >)grape::cuda::DeviceBuffer< T >inline
+ + + + diff --git a/classgrape_1_1cuda_1_1DeviceBuffer.html b/classgrape_1_1cuda_1_1DeviceBuffer.html new file mode 100644 index 00000000..a3e588a4 --- /dev/null +++ b/classgrape_1_1cuda_1_1DeviceBuffer.html @@ -0,0 +1,129 @@ + + + + + + + +libgrape-lite: grape::cuda::DeviceBuffer< T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::DeviceBuffer< T > Class Template Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

DeviceBuffer (size_t size)
 
DeviceBuffer (const DeviceBuffer< T > &rhs)
 
DeviceBuffer (DeviceBuffer< T > &&rhs) noexcept
 
+DeviceBufferoperator= (const DeviceBuffer< T > &rhs)
 
+DeviceBufferoperator= (DeviceBuffer< T > &&rhs) noexcept
 
+void resize (size_t size)
 
+T * data ()
 
+const T * data () const
 
+size_t size () const
 
+ArrayView< T > DeviceObject ()
 
+ + + + + + + +

+Private Attributes

+size_t capacity_ {}
 
+size_t size_ {}
 
+T * data_ {}
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1Event-members.html b/classgrape_1_1cuda_1_1Event-members.html new file mode 100644 index 00000000..c4ba5643 --- /dev/null +++ b/classgrape_1_1cuda_1_1Event-members.html @@ -0,0 +1,95 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::Event Member List
+
+
+ +

This is the complete list of members for grape::cuda::Event, including all inherited members.

+ + + + + + + + + + + + + + +
Create() (defined in grape::cuda::Event)grape::cuda::Eventinlinestatic
Event()=default (defined in grape::cuda::Event)grape::cuda::Event
Event(const Event &other)=default (defined in grape::cuda::Event)grape::cuda::Event
Event(Event &&other) noexcept (defined in grape::cuda::Event)grape::cuda::Eventinline
Event(std::shared_ptr< IEvent > internal_event) (defined in grape::cuda::Event)grape::cuda::Eventinlineexplicit
Event(cudaEvent_t cuda_event, const std::function< void(cudaEvent_t)> &releaser) (defined in grape::cuda::Event)grape::cuda::Eventinlineprivate
internal_event_ (defined in grape::cuda::Event)grape::cuda::Eventprivate
operator=(Event &&other) noexcept (defined in grape::cuda::Event)grape::cuda::Eventinline
operator=(const Event &other) (defined in grape::cuda::Event)grape::cuda::Eventinline
Query() const (defined in grape::cuda::Event)grape::cuda::Eventinline
Record(const Stream &stream) const (defined in grape::cuda::Event)grape::cuda::Eventinline
Sync() const (defined in grape::cuda::Event)grape::cuda::Eventinline
Wait(const Stream &stream) const (defined in grape::cuda::Event)grape::cuda::Eventinline
+ + + + diff --git a/classgrape_1_1cuda_1_1Event.html b/classgrape_1_1cuda_1_1Event.html new file mode 100644 index 00000000..0897fa08 --- /dev/null +++ b/classgrape_1_1cuda_1_1Event.html @@ -0,0 +1,134 @@ + + + + + + + +libgrape-lite: grape::cuda::Event Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+ +
+ + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

Event (const Event &other)=default
 
Event (Event &&other) noexcept
 
+Eventoperator= (Event &&other) noexcept
 
+Eventoperator= (const Event &other)
 
Event (std::shared_ptr< IEvent > internal_event)
 
+void Record (const Stream &stream) const
 
+void Wait (const Stream &stream) const
 
+void Sync () const
 
+bool Query () const
 
+ + + +

+Static Public Member Functions

+static Event Create ()
 
+ + + +

+Private Member Functions

Event (cudaEvent_t cuda_event, const std::function< void(cudaEvent_t)> &releaser)
 
+ + + +

+Private Attributes

+std::shared_ptr< IEventinternal_event_ {}
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1EventHolder-members.html b/classgrape_1_1cuda_1_1EventHolder-members.html new file mode 100644 index 00000000..48fbd0ec --- /dev/null +++ b/classgrape_1_1cuda_1_1EventHolder-members.html @@ -0,0 +1,91 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::EventHolder Member List
+
+
+ +

This is the complete list of members for grape::cuda::EventHolder, including all inherited members.

+ + + + + + + + + + +
cuda_event() const (defined in grape::cuda::EventHolder)grape::cuda::EventHolderinlinevirtual
cuda_event_ (defined in grape::cuda::EventHolder)grape::cuda::EventHolderprivate
EventHolder(cudaEvent_t cuda_event, std::function< void(cudaEvent_t)> releaser) (defined in grape::cuda::EventHolder)grape::cuda::EventHolderinline
Query() const override (defined in grape::cuda::EventHolder)grape::cuda::EventHolderinlinevirtual
releaser_ (defined in grape::cuda::EventHolder)grape::cuda::EventHolderprivate
Sync() const override (defined in grape::cuda::EventHolder)grape::cuda::EventHolderinlinevirtual
Wait(cudaStream_t stream) const override (defined in grape::cuda::EventHolder)grape::cuda::EventHolderinlinevirtual
~EventHolder() (defined in grape::cuda::EventHolder)grape::cuda::EventHolderinline
~IEvent()=default (defined in grape::cuda::IEvent)grape::cuda::IEventvirtual
+ + + + diff --git a/classgrape_1_1cuda_1_1EventHolder.html b/classgrape_1_1cuda_1_1EventHolder.html new file mode 100644 index 00000000..e36ece39 --- /dev/null +++ b/classgrape_1_1cuda_1_1EventHolder.html @@ -0,0 +1,120 @@ + + + + + + + +libgrape-lite: grape::cuda::EventHolder Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::EventHolder Class Reference
+
+
+
+Inheritance diagram for grape::cuda::EventHolder:
+
+
+ + +grape::cuda::IEvent + +
+ + + + + + + + + + + + +

+Public Member Functions

EventHolder (cudaEvent_t cuda_event, std::function< void(cudaEvent_t)> releaser)
 
+void Wait (cudaStream_t stream) const override
 
+void Sync () const override
 
+bool Query () const override
 
+cudaEvent_t cuda_event () const
 
+ + + + + +

+Private Attributes

+const cudaEvent_t cuda_event_
 
+std::function< void(cudaEvent_t)> releaser_
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1EventHolder.png b/classgrape_1_1cuda_1_1EventHolder.png new file mode 100644 index 0000000000000000000000000000000000000000..6f94db31e9e4114d338dd477494bdd2a77a8af3d GIT binary patch literal 666 zcmeAS@N?(olHy`uVBq!ia0vp^vw=8(gBeI#PWXNjNJ#|vgt-3y{~ySF@#br3|Dg#$ z78oBmaDcV*jy#adQ4-`A%m7pb0#{Fk7%?y~X?nUihEy=VoqOBwjRB8qc-fMl|NZTj z`bs^&x+DDm}S&!FYe+k&6{c((NDamPfrZ5xw@$uyoeq=Ucb=^)u!Fy3H7L^_z65 zRfg^MT(3#{P3iUm&2@*>JnOa6CoieAoUL*;JGtBNm?`UrIdKf#S&7@OXUFbn zy=k^3^pNq^IDlMfC?3u%x5QilF+CGU} zvBlMuAtDGWdj0#&sQ)2J412eIO^B(JeNl_fQvdzE@I&s7{IKhgfU$Ty zS4}nSWn|fM-ryXr?}@Yeraemoh0TdW8%j6&ZM(HvXNmO6n|`I|o*v82-W;kEw6Aoz zg{D=rT9l*2#;fPdwja-7?v|Bf nJ-i9JFu%(GHEj`?cE$d3prY~Xvxf7535mhe)z4*}Q$iB}P6tWU literal 0 HcmV?d00001 diff --git a/classgrape_1_1cuda_1_1GPUAppBase-members.html b/classgrape_1_1cuda_1_1GPUAppBase-members.html new file mode 100644 index 00000000..2e69150a --- /dev/null +++ b/classgrape_1_1cuda_1_1GPUAppBase-members.html @@ -0,0 +1,91 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::GPUAppBase< FRAG_T, CONTEXT_T > Member List
+
+
+ +

This is the complete list of members for grape::cuda::GPUAppBase< FRAG_T, CONTEXT_T >, including all inherited members.

+ + + + + + + + + + +
GPUAppBase()=default (defined in grape::cuda::GPUAppBase< FRAG_T, CONTEXT_T >)grape::cuda::GPUAppBase< FRAG_T, CONTEXT_T >
IncEval(const FRAG_T &graph, CONTEXT_T &context, message_manager_t &messages)=0grape::cuda::GPUAppBase< FRAG_T, CONTEXT_T >pure virtual
load_strategy (defined in grape::cuda::GPUAppBase< FRAG_T, CONTEXT_T >)grape::cuda::GPUAppBase< FRAG_T, CONTEXT_T >static
message_manager_t typedef (defined in grape::cuda::GPUAppBase< FRAG_T, CONTEXT_T >)grape::cuda::GPUAppBase< FRAG_T, CONTEXT_T >
message_strategy (defined in grape::cuda::GPUAppBase< FRAG_T, CONTEXT_T >)grape::cuda::GPUAppBase< FRAG_T, CONTEXT_T >static
need_build_device_vm (defined in grape::cuda::GPUAppBase< FRAG_T, CONTEXT_T >)grape::cuda::GPUAppBase< FRAG_T, CONTEXT_T >static
need_split_edges (defined in grape::cuda::GPUAppBase< FRAG_T, CONTEXT_T >)grape::cuda::GPUAppBase< FRAG_T, CONTEXT_T >static
PEval(const FRAG_T &graph, CONTEXT_T &context, message_manager_t &messages)=0grape::cuda::GPUAppBase< FRAG_T, CONTEXT_T >pure virtual
~GPUAppBase()=default (defined in grape::cuda::GPUAppBase< FRAG_T, CONTEXT_T >)grape::cuda::GPUAppBase< FRAG_T, CONTEXT_T >virtual
+ + + + diff --git a/classgrape_1_1cuda_1_1GPUAppBase.html b/classgrape_1_1cuda_1_1GPUAppBase.html new file mode 100644 index 00000000..df62ff36 --- /dev/null +++ b/classgrape_1_1cuda_1_1GPUAppBase.html @@ -0,0 +1,295 @@ + + + + + + + +libgrape-lite: grape::cuda::GPUAppBase< FRAG_T, CONTEXT_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::GPUAppBase< FRAG_T, CONTEXT_T > Class Template Referenceabstract
+
+
+ +

GPUAppBase is a base class for GPU apps. Users can process messages in a more flexible way in this kind of app. It contains an GPUMessageManager to process messages, which enables send/receive messages during computation. This strategy improves performance by overlapping the communication time and the evaluation time. + More...

+ +

#include <gpu_app_base.h>

+ + + + +

+Public Types

+using message_manager_t = GPUMessageManager
 
+ + + + + + + +

+Public Member Functions

virtual void PEval (const FRAG_T &graph, CONTEXT_T &context, message_manager_t &messages)=0
 Partial evaluation to implement. More...
 
virtual void IncEval (const FRAG_T &graph, CONTEXT_T &context, message_manager_t &messages)=0
 Incremental evaluation to implement. More...
 
+ + + + + + + + + +

+Static Public Attributes

+static constexpr bool need_split_edges = false
 
+static constexpr bool need_build_device_vm = false
 
static constexpr grape::MessageStrategy message_strategy
 
static constexpr grape::LoadStrategy load_strategy
 
+

Detailed Description

+

template<typename FRAG_T, typename CONTEXT_T>
+class grape::cuda::GPUAppBase< FRAG_T, CONTEXT_T >

+ +

GPUAppBase is a base class for GPU apps. Users can process messages in a more flexible way in this kind of app. It contains an GPUMessageManager to process messages, which enables send/receive messages during computation. This strategy improves performance by overlapping the communication time and the evaluation time.

+
Template Parameters
+ + + +
FRAG_T
CONTEXT_T
+
+
+

Member Function Documentation

+ +

◆ IncEval()

+ +
+
+
+template<typename FRAG_T , typename CONTEXT_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual void grape::cuda::GPUAppBase< FRAG_T, CONTEXT_T >::IncEval (const FRAG_T & graph,
CONTEXT_T & context,
message_manager_tmessages 
)
+
+pure virtual
+
+ +

Incremental evaluation to implement.

+
Note
: This pure virtual function works as an interface, instructing users to implement in the specific app. The IncEval in the inherited apps would be invoked directly, not via virtual functions.
+
Parameters
+ + + + +
graph
context
messages
+
+
+ +
+
+ +

◆ PEval()

+ +
+
+
+template<typename FRAG_T , typename CONTEXT_T >
+ + + + + +
+ + + + + + + + + + + + + + + + + + + + + + + + +
virtual void grape::cuda::GPUAppBase< FRAG_T, CONTEXT_T >::PEval (const FRAG_T & graph,
CONTEXT_T & context,
message_manager_tmessages 
)
+
+pure virtual
+
+ +

Partial evaluation to implement.

+
Note
: This pure virtual function works as an interface, instructing users to implement in the specific app. The PEval in the inherited apps would be invoked directly, not via virtual functions.
+
Parameters
+ + + + +
graph
context
messages
+
+
+ +
+
+

Member Data Documentation

+ +

◆ load_strategy

+ +
+
+
+template<typename FRAG_T , typename CONTEXT_T >
+ + + + + +
+ + + + +
constexpr grape::LoadStrategy grape::cuda::GPUAppBase< FRAG_T, CONTEXT_T >::load_strategy
+
+staticconstexpr
+
+Initial value:
=
+
grape::LoadStrategy::kOnlyOut
+
+
+
+ +

◆ message_strategy

+ +
+
+
+template<typename FRAG_T , typename CONTEXT_T >
+ + + + + +
+ + + + +
constexpr grape::MessageStrategy grape::cuda::GPUAppBase< FRAG_T, CONTEXT_T >::message_strategy
+
+staticconstexpr
+
+Initial value: +
+
+
+ + + + diff --git a/classgrape_1_1cuda_1_1GPUBatchShuffleWorker-members.html b/classgrape_1_1cuda_1_1GPUBatchShuffleWorker-members.html new file mode 100644 index 00000000..86a5551a --- /dev/null +++ b/classgrape_1_1cuda_1_1GPUBatchShuffleWorker-members.html @@ -0,0 +1,95 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::GPUBatchShuffleWorker< APP_T > Member List
+
+
+ +

This is the complete list of members for grape::cuda::GPUBatchShuffleWorker< APP_T >, including all inherited members.

+ + + + + + + + + + + + + + +
app_ (defined in grape::cuda::GPUBatchShuffleWorker< APP_T >)grape::cuda::GPUBatchShuffleWorker< APP_T >private
comm_spec_ (defined in grape::cuda::GPUBatchShuffleWorker< APP_T >)grape::cuda::GPUBatchShuffleWorker< APP_T >private
context_ (defined in grape::cuda::GPUBatchShuffleWorker< APP_T >)grape::cuda::GPUBatchShuffleWorker< APP_T >private
context_t typedef (defined in grape::cuda::GPUBatchShuffleWorker< APP_T >)grape::cuda::GPUBatchShuffleWorker< APP_T >
Finalize() (defined in grape::cuda::GPUBatchShuffleWorker< APP_T >)grape::cuda::GPUBatchShuffleWorker< APP_T >inline
fragment_t typedef (defined in grape::cuda::GPUBatchShuffleWorker< APP_T >)grape::cuda::GPUBatchShuffleWorker< APP_T >
GetContext() (defined in grape::cuda::GPUBatchShuffleWorker< APP_T >)grape::cuda::GPUBatchShuffleWorker< APP_T >inline
GPUBatchShuffleWorker(std::shared_ptr< APP_T > app, std::shared_ptr< fragment_t > graph) (defined in grape::cuda::GPUBatchShuffleWorker< APP_T >)grape::cuda::GPUBatchShuffleWorker< APP_T >inline
Init(const grape::CommSpec &comm_spec, Args &&... args) (defined in grape::cuda::GPUBatchShuffleWorker< APP_T >)grape::cuda::GPUBatchShuffleWorker< APP_T >inline
message_manager_t typedef (defined in grape::cuda::GPUBatchShuffleWorker< APP_T >)grape::cuda::GPUBatchShuffleWorker< APP_T >
messages_ (defined in grape::cuda::GPUBatchShuffleWorker< APP_T >)grape::cuda::GPUBatchShuffleWorker< APP_T >private
Output(std::ostream &os) (defined in grape::cuda::GPUBatchShuffleWorker< APP_T >)grape::cuda::GPUBatchShuffleWorker< APP_T >inline
Query() (defined in grape::cuda::GPUBatchShuffleWorker< APP_T >)grape::cuda::GPUBatchShuffleWorker< APP_T >inline
+ + + + diff --git a/classgrape_1_1cuda_1_1GPUBatchShuffleWorker.html b/classgrape_1_1cuda_1_1GPUBatchShuffleWorker.html new file mode 100644 index 00000000..2a6e262b --- /dev/null +++ b/classgrape_1_1cuda_1_1GPUBatchShuffleWorker.html @@ -0,0 +1,134 @@ + + + + + + + +libgrape-lite: grape::cuda::GPUBatchShuffleWorker< APP_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::GPUBatchShuffleWorker< APP_T > Class Template Reference
+
+
+ + + + + + + + +

+Public Types

+using fragment_t = typename APP_T::fragment_t
 
+using context_t = typename APP_T::context_t
 
+using message_manager_t = BatchShuffleMessageManager
 
+ + + + + + + + + + + + + + +

+Public Member Functions

GPUBatchShuffleWorker (std::shared_ptr< APP_T > app, std::shared_ptr< fragment_t > graph)
 
+template<class... Args>
void Init (const grape::CommSpec &comm_spec, Args &&... args)
 
+void Finalize ()
 
+void Query ()
 
+std::shared_ptr< context_t > GetContext ()
 
+void Output (std::ostream &os)
 
+ + + + + + + + + +

+Private Attributes

+std::shared_ptr< APP_T > app_
 
+std::shared_ptr< context_t > context_
 
+message_manager_t messages_
 
+grape::CommSpec comm_spec_
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1GPUMessageManager-members.html b/classgrape_1_1cuda_1_1GPUMessageManager-members.html new file mode 100644 index 00000000..c75cfa75 --- /dev/null +++ b/classgrape_1_1cuda_1_1GPUMessageManager-members.html @@ -0,0 +1,118 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::GPUMessageManager Member List
+
+
+ +

This is the complete list of members for grape::cuda::GPUMessageManager, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
comm_spec_ (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerprivate
comm_stream_ (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerprivate
computation_finished_ (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerprivate
compute_stream_ (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerprivate
d_to_recv_ (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerprivate
d_to_send_ (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerprivate
DeviceObject() (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerinline
DeviceWarmup(size_t np)grape::cuda::GPUMessageManagerinline
DropBuffer() (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerinline
fid_ (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerprivate
Finalize() constgrape::cuda::GPUMessageManagerinline
FinishARound()grape::cuda::GPUMessageManagerinline
fnum_ (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerprivate
force_continue_ (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerprivate
ForceContinue()grape::cuda::GPUMessageManagerinline
GetAccumulatedCommTime() const (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerinline
GetMsgSize() constgrape::cuda::GPUMessageManagerinline
Init(const grape::CommSpec &comm_spec)grape::cuda::GPUMessageManagerinline
InitBuffer(size_t send_buffer_capacity, size_t recv_buffer_capacity) (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerinline
lengths_in_ (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerprivate
lengths_out_ (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerprivate
nccl_comm() (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerinline
nccl_comm_ (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerprivate
ParallelProcess(const GRAPH_T &frag, FUNC_T func) (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerinline
ParallelProcess(FUNC_T func) (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerinline
pinned_to_recv_ (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerprivate
sent_size_ (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerprivate
Start()grape::cuda::GPUMessageManagerinline
StartARound()grape::cuda::GPUMessageManagerinline
stream() (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerinline
syncLengths() (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerinlineprivate
to_recv_ (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerprivate
to_send_ (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerprivate
to_terminate_ (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerprivate
total_memcpy_time_ (defined in grape::cuda::GPUMessageManager)grape::cuda::GPUMessageManagerprivate
ToTerminate() constgrape::cuda::GPUMessageManagerinline
+ + + + diff --git a/classgrape_1_1cuda_1_1GPUMessageManager.html b/classgrape_1_1cuda_1_1GPUMessageManager.html new file mode 100644 index 00000000..f5b7b5bf --- /dev/null +++ b/classgrape_1_1cuda_1_1GPUMessageManager.html @@ -0,0 +1,356 @@ + + + + + + + +libgrape-lite: grape::cuda::GPUMessageManager Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::GPUMessageManager Class Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

void Init (const grape::CommSpec &comm_spec)
 Initialize message manager. More...
 
+void InitBuffer (size_t send_buffer_capacity, size_t recv_buffer_capacity)
 
+void DropBuffer ()
 
+void Start ()
 This function will be called before Init step of applications.
 
+void StartARound ()
 This function will be called before each evaluation step of applications.
 
+void FinishARound ()
 This function will be called after each evaluation step of applications.
 
+void Finalize () const
 This function will be called after the evaluation of applications.
 
bool ToTerminate () const
 This function will be called by worker after a step to determine whether evaluation is terminated. More...
 
size_t GetMsgSize () const
 Get size of messages sent by this message manager instance. The return value is valid only after FinishARound is called. StartARound will reset the value to zero. More...
 
void ForceContinue ()
 Force continue to evaluate one more round even if all workers stop sending message. More...
 
+double GetAccumulatedCommTime () const
 
+dev::MessageManager DeviceObject ()
 
void DeviceWarmup (size_t np)
 For some GPU servers, the first kernel always takes a long time. This is a Dummy function to warm up the device. More...
 
+template<typename GRAPH_T , typename MESSAGE_T = grape::EmptyType, typename FUNC_T >
void ParallelProcess (const GRAPH_T &frag, FUNC_T func)
 
+template<typename MESSAGE_T = grape::EmptyType, typename FUNC_T >
void ParallelProcess (FUNC_T func)
 
+Streamstream ()
 
+ncclComm_t nccl_comm ()
 
+ + + +

+Private Member Functions

+bool syncLengths ()
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Private Attributes

+InArchiveGroup to_send_
 
+OutArchiveGroup to_recv_
 
+pinned_vector< dev::OutArchivepinned_to_recv_
 
+thrust::device_vector< dev::InArchived_to_send_
 
+thrust::device_vector< dev::OutArchived_to_recv_
 
+Event computation_finished_
 
+grape::CommSpec comm_spec_
 
+std::shared_ptr< ncclComm_t > nccl_comm_
 
+Stream compute_stream_
 
+Stream comm_stream_
 
+std::vector< size_t > lengths_out_
 
+std::vector< size_t > lengths_in_
 
+size_t sent_size_ {}
 
+double total_memcpy_time_ {}
 
+bool to_terminate_ {}
 
+bool force_continue_ {}
 
+fid_t fid_
 
+fid_t fnum_
 
+

Member Function Documentation

+ +

◆ DeviceWarmup()

+ +
+
+ + + + + +
+ + + + + + + + +
void grape::cuda::GPUMessageManager::DeviceWarmup (size_t np)
+
+inline
+
+ +

For some GPU servers, the first kernel always takes a long time. This is a Dummy function to warm up the device.

+

This function can be called by applications.

+ +
+
+ +

◆ ForceContinue()

+ +
+
+ + + + + +
+ + + + + + + +
void grape::cuda::GPUMessageManager::ForceContinue ()
+
+inline
+
+ +

Force continue to evaluate one more round even if all workers stop sending message.

+

This function can be called by applications.

+ +
+
+ +

◆ GetMsgSize()

+ +
+
+ + + + + +
+ + + + + + + +
size_t grape::cuda::GPUMessageManager::GetMsgSize () const
+
+inline
+
+ +

Get size of messages sent by this message manager instance. The return value is valid only after FinishARound is called. StartARound will reset the value to zero.

+
Returns
Size of messages sent by this message manager instance.
+ +
+
+ +

◆ Init()

+ +
+
+ + + + + +
+ + + + + + + + +
void grape::cuda::GPUMessageManager::Init (const grape::CommSpeccomm_spec)
+
+inline
+
+ +

Initialize message manager.

+
Parameters
+ + +
commMPI_Comm object.
+
+
+ +
+
+ +

◆ ToTerminate()

+ +
+
+ + + + + +
+ + + + + + + +
bool grape::cuda::GPUMessageManager::ToTerminate () const
+
+inline
+
+ +

This function will be called by worker after a step to determine whether evaluation is terminated.

+
Returns
Whether evaluation is terminated.
+ +
+
+
+ + + + diff --git a/classgrape_1_1cuda_1_1GPUWorker-members.html b/classgrape_1_1cuda_1_1GPUWorker-members.html new file mode 100644 index 00000000..5511d171 --- /dev/null +++ b/classgrape_1_1cuda_1_1GPUWorker-members.html @@ -0,0 +1,95 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::GPUWorker< APP_T > Member List
+
+
+ +

This is the complete list of members for grape::cuda::GPUWorker< APP_T >, including all inherited members.

+ + + + + + + + + + + + + + +
app_ (defined in grape::cuda::GPUWorker< APP_T >)grape::cuda::GPUWorker< APP_T >private
comm_spec_ (defined in grape::cuda::GPUWorker< APP_T >)grape::cuda::GPUWorker< APP_T >private
context_ (defined in grape::cuda::GPUWorker< APP_T >)grape::cuda::GPUWorker< APP_T >private
context_t typedef (defined in grape::cuda::GPUWorker< APP_T >)grape::cuda::GPUWorker< APP_T >
Finalize() (defined in grape::cuda::GPUWorker< APP_T >)grape::cuda::GPUWorker< APP_T >inline
fragment_t typedef (defined in grape::cuda::GPUWorker< APP_T >)grape::cuda::GPUWorker< APP_T >
GetContext() (defined in grape::cuda::GPUWorker< APP_T >)grape::cuda::GPUWorker< APP_T >inline
GPUWorker(std::shared_ptr< APP_T > app, std::shared_ptr< fragment_t > graph) (defined in grape::cuda::GPUWorker< APP_T >)grape::cuda::GPUWorker< APP_T >inline
Init(const grape::CommSpec &comm_spec, Args &&... args) (defined in grape::cuda::GPUWorker< APP_T >)grape::cuda::GPUWorker< APP_T >inline
message_manager_t typedef (defined in grape::cuda::GPUWorker< APP_T >)grape::cuda::GPUWorker< APP_T >
messages_ (defined in grape::cuda::GPUWorker< APP_T >)grape::cuda::GPUWorker< APP_T >private
Output(std::ostream &os) (defined in grape::cuda::GPUWorker< APP_T >)grape::cuda::GPUWorker< APP_T >inline
Query() (defined in grape::cuda::GPUWorker< APP_T >)grape::cuda::GPUWorker< APP_T >inline
+ + + + diff --git a/classgrape_1_1cuda_1_1GPUWorker.html b/classgrape_1_1cuda_1_1GPUWorker.html new file mode 100644 index 00000000..bdc892cb --- /dev/null +++ b/classgrape_1_1cuda_1_1GPUWorker.html @@ -0,0 +1,134 @@ + + + + + + + +libgrape-lite: grape::cuda::GPUWorker< APP_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::GPUWorker< APP_T > Class Template Reference
+
+
+ + + + + + + + +

+Public Types

+using fragment_t = typename APP_T::fragment_t
 
+using context_t = typename APP_T::context_t
 
+using message_manager_t = GPUMessageManager
 
+ + + + + + + + + + + + + + +

+Public Member Functions

GPUWorker (std::shared_ptr< APP_T > app, std::shared_ptr< fragment_t > graph)
 
+template<class... Args>
void Init (const grape::CommSpec &comm_spec, Args &&... args)
 
+void Finalize ()
 
+void Query ()
 
+std::shared_ptr< context_t > GetContext ()
 
+void Output (std::ostream &os)
 
+ + + + + + + + + +

+Private Attributes

+std::shared_ptr< APP_T > app_
 
+std::shared_ptr< context_t > context_
 
+message_manager_t messages_
 
+grape::CommSpec comm_spec_
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1HostFragment-members.html b/classgrape_1_1cuda_1_1HostFragment-members.html new file mode 100644 index 00000000..c0455371 --- /dev/null +++ b/classgrape_1_1cuda_1_1HostFragment-members.html @@ -0,0 +1,306 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T > Member List
+
+
+ +

This is the complete list of members for grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
__allocate_device_fragment__() (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
__init_edges_splitter__(const Stream &stream, grape::Array< nbr_t *, grape::Allocator< nbr_t * >> const &eoffset, std::vector< grape::VertexArray< inner_vertices_t, nbr_t * >> const &espliters, thrust::device_vector< nbr_t * > &d_eoffset, std::vector< thrust::device_vector< nbr_t * >> &d_espliters_holder, thrust::device_vector< ArrayView< nbr_t * >> &d_espliters) (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
__init_edges_splitter_by_fragment__(const Stream &stream, grape::Array< nbr_t *, grape::Allocator< nbr_t * >> const &eoffset, std::vector< grape::VertexArray< inner_vertices_t, nbr_t * >> const &espliters, thrust::device_vector< nbr_t * > &d_eoffset, std::vector< thrust::device_vector< nbr_t * >> &d_espliters_holder, thrust::device_vector< ArrayView< nbr_t * >> &d_espliters) (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
__initDestFidList(const Stream &stream, bool in_edge, bool out_edge, grape::Array< fid_t, grape::Allocator< fid_t >> const &fid_list, grape::Array< fid_t *, grape::Allocator< fid_t * >> const &fid_list_offset, thrust::device_vector< fid_t > &d_fid_list, thrust::device_vector< fid_t * > &d_fid_list_offset) (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlineprotected
__initMessageDestination(const Stream &stream, const grape::MessageStrategy &msg_strategy) (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlineprotected
__initMirrorInfo(const CommSpec &comm_spec) (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlineprotected
adj_list_t typedef (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
base_t typedef (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
buildCSR(const typename csr_builder_t::vertex_range_t &vertex_range, std::vector< Edge< VID_T, EDATA_T >> &edges, LoadStrategy load_strategy) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
buildMessageDestination(const MessageStrategy &msg_strategy) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprivate
const_adj_list_t typedef (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
ConvertToCOO(bool release_csr=false) (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
coo_frag_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
coo_t typedef (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
csr_builder_t typedef (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >private
csr_t typedef (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >private
CSREdgecutFragmentBase() (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inline
d_idoffset_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
d_idst_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
d_ie_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >mutableprotected
d_ieoffset_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
d_iespliters_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
d_iespliters_holder_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
d_iodoffset_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
d_iodst_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
d_mirrors_of_frag_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
d_mirrors_of_frag_holder_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
d_odoffset_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
d_odst_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
d_oe_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
d_oeoffset_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
d_oespliters_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
d_oespliters_holder_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
d_outer_vertices_of_frag_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
d_ovg2l_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
d_ovgid_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
d_vdata_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
d_vm_ptr_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
deserialize(std::unique_ptr< IOADAPTOR_T > &reader) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
Deserialize(const std::string &prefix, const fid_t fid) (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
dev_vertex_map_t typedef (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
device_t typedef (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
DeviceObject() const (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
directed() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
directed_ (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >protected
edata_t typedef (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
edge_t typedef (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
EdgecutFragmentBase() (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
fid() constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
grape::FragmentBase::fid() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
fid_ (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >protected
fnum() constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
grape::FragmentBase::fnum() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
fnum_ (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >protected
fragment_adj_list_t typedef (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
fragment_const_adj_list_t typedef (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
FragmentBase() (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
FragmentBase(std::shared_ptr< vertex_map_t > vm_ptr) (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineexplicit
get_ie_begin(const vertex_t &v) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
get_ie_begin(const vertex_t &v) const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
get_ie_end(const vertex_t &v) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
get_ie_end(const vertex_t &v) const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
get_oe_begin(const vertex_t &v) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
get_oe_begin(const vertex_t &v) const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
get_oe_end(const vertex_t &v) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
get_oe_end(const vertex_t &v) const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
GetData(const vertex_t &v) const override (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >::GetData(const vertex_t &v) const overridegrape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >inlinevirtual
GetEdgeNum() const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
GetFragId(const Vertex< VID_T > &u) constgrape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >inline
CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >::GetFragId(const Vertex< VID_T > &u) constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetId(const Vertex< VID_T > &v) constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetIncomingAdjList(const vertex_t &v, fid_t src_fid) override (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetIncomingAdjList(const vertex_t &v, fid_t src_fid) const override (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetIncomingAdjList(const vertex_t &v, fid_t src_fid) override (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >inlinevirtual
GetIncomingAdjList(const vertex_t &v, fid_t src_fid) const override (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >inlinevirtual
CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >::GetIncomingAdjList(const vertex_t &v) overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >::GetIncomingAdjList(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
GetIncomingEdgeNum() const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inline
GetIncomingInnerVertexAdjList(const vertex_t &v) override (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetIncomingInnerVertexAdjList(const vertex_t &v) const override (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >::GetIncomingInnerVertexAdjList(const vertex_t &v) overridegrape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >inlinevirtual
ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >::GetIncomingInnerVertexAdjList(const vertex_t &v) const overridegrape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >inlinevirtual
GetIncomingOuterVertexAdjList(const vertex_t &v) override (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetIncomingOuterVertexAdjList(const vertex_t &v) const override (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >::GetIncomingOuterVertexAdjList(const vertex_t &v) overridegrape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >inlinevirtual
ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >::GetIncomingOuterVertexAdjList(const vertex_t &v) const overridegrape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >inlinevirtual
GetInnerVertex(const OID_T &oid, Vertex< VID_T > &v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetInnerVertexGid(vertex_t v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetInnerVertexId(vertex_t v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetInnerVerticesNum() constgrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inline
grape::EdgecutFragmentBase::GetInnerVerticesNum() constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetLocalInDegree(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
GetLocalOutDegree(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
GetOuterVertex(const OID_T &oid, vertex_t &v) const (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetOuterVertexGid(vertex_t v) const overridegrape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >inlinevirtual
GetOuterVertexId(vertex_t v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetOuterVerticesGid() const (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetOuterVerticesNum() constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetOutgoingAdjList(const vertex_t &v, fid_t dst_fid) override (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetOutgoingAdjList(const vertex_t &v, fid_t dst_fid) const override (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetOutgoingAdjList(const vertex_t &v, fid_t dst_fid) override (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >inlinevirtual
GetOutgoingAdjList(const vertex_t &v, fid_t dst_fid) const override (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >inlinevirtual
CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >::GetOutgoingAdjList(const vertex_t &v) overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >::GetOutgoingAdjList(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
GetOutgoingEdgeNum() const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inline
GetOutgoingInnerVertexAdjList(const vertex_t &v) override (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetOutgoingInnerVertexAdjList(const vertex_t &v) const override (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >::GetOutgoingInnerVertexAdjList(const vertex_t &v) overridegrape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >inlinevirtual
ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >::GetOutgoingInnerVertexAdjList(const vertex_t &v) const overridegrape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >inlinevirtual
GetOutgoingOuterVertexAdjList(const vertex_t &v) override (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
GetOutgoingOuterVertexAdjList(const vertex_t &v) const override (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >::GetOutgoingOuterVertexAdjList(const vertex_t &v) overridegrape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >inlinevirtual
ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >::GetOutgoingOuterVertexAdjList(const vertex_t &v) const overridegrape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >inlinevirtual
GetTotalVerticesNum() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetVertex(const OID_T &oid, Vertex< VID_T > &v) constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetVertexMap() (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetVertexMap() const (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
GetVerticesNum() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
Gid2Lid(VID_T gid, VID_T &lid) const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
Gid2Lid(VID_T gid, VID_T &lid) const (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
Gid2Oid(VID_T gid) const (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
Gid2Vertex(const vid_t &gid, vertex_t &v) const overridegrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlinevirtual
HasChild(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
HasParent(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
HostFragment()=default (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
HostFragment(std::shared_ptr< vertex_map_t > vm_ptr) (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlineexplicit
id_parser_ (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >protected
idst_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >protected
idst_built_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >protected
ie_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >protected
IEDests(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
IEDestsSize() const override (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
iespliters_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
ImmutableEdgecutFragment() (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >inline
ImmutableEdgecutFragment(std::shared_ptr< vertex_map_t > vm_ptr) (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >inlineexplicit
Init(fid_t fid, bool directed, std::vector< internal_vertex_t > &vertices, std::vector< edge_t > &edges) (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >::Init(fid_t fid, bool directed, std::vector< internal::Vertex< VID_T, VDATA_T >> &vertices, std::vector< Edge< VID_T, EDATA_T >> &edges)=0grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >pure virtual
init(fid_t fid, bool directed) (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >inline
init(fid_t fid, bool directed) (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
initDestFidList(bool in_edge, bool out_edge, ImmutableCSR< VID_T, fid_t > &csr) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprivate
initMirrorInfo(const CommSpec &comm_spec) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inline
initMirrorInfo(const CommSpec &comm_spec) (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
initOuterVerticesOfFragment() (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >inlineprotected
inner_vertex_array_t typedef (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >
inner_vertices_ (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
inner_vertices_t typedef (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
InnerVertexGid2Lid(VID_T gid, VID_T &lid) const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
InnerVertexGid2Lid(VID_T gid, VID_T &lid) const (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
InnerVertexGid2Vertex(VID_T gid, Vertex< VID_T > &v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
InnerVertices() constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
internal_vertex_t typedef (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
iodst_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >protected
iodst_built_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >protected
IOEDests(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
IOEDestsSize() const override (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
IsBorderVertex(const vertex_t &v) constgrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inline
IsEdgeCut typedef (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
IsIncomingBorderVertex(const vertex_t &v) constgrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inline
IsInnerVertex(const Vertex< VID_T > &v) constgrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inline
grape::EdgecutFragmentBase::IsInnerVertex(const Vertex< VID_T > &v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
IsInnerVertexGid(VID_T gid) const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
IsInnerVertexGid(VID_T gid) const (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
IsInnerVertexLid(VID_T lid) const (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
IsInnerVertexLid(VID_T lid) const (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlineprotected
IsOuterVertex(const Vertex< VID_T > &v) constgrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inline
grape::EdgecutFragmentBase::IsOuterVertex(const Vertex< VID_T > &v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
IsOutgoingBorderVertex(const vertex_t &v) constgrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inline
IsVertexCut typedef (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
ivnum_ (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >protected
load_strategy (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >static
mirror_info_initialized_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >protected
mirror_vertices_t typedef (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
mirrors_of_frag_ (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
MirrorVertices(fid_t fid) const (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
nbr_t typedef (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
odst_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >protected
odst_built_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >protected
oe_ (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >protected
OEDests(const vertex_t &v) const overridegrape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
OEDestsSize() const override (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlinevirtual
oespliters_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
OffloadTopology() const (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
Oid2Gid(const OID_T &oid, VID_T &gid) const (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
oid_t typedef (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
outer_vertex_array_t typedef (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >
outer_vertices_ (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
outer_vertices_of_frag_ (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
outer_vertices_t typedef (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
OuterVertexGid2Lid(VID_T gid, VID_T &lid) const override (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >inlinevirtual
OuterVertexGid2Lid(VID_T gid, VID_T &lid) const =0 (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >protected
OuterVertexGid2Vertex(VID_T gid, Vertex< VID_T > &v) constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
OuterVertices() constgrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
OuterVertices(fid_t fid) const (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
ovg2l_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
ovgid_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
ovnum_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
PrepareToRunApp(const CommSpec &comm_spec, PrepareConf conf)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inlinevirtual
ReleaseDeviceCSR() (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
ReloadTopology() const (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
serialize(std::unique_ptr< IOADAPTOR_T > &writer) (defined in grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >)grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >inlineprotected
Serialize(const std::string &prefix) (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
SetData(const vertex_t &v, const VDATA_T &val) override (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >inline
ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >::SetData(const vertex_t &v, const VDATA_T &val) overridegrape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >inlinevirtual
splited_edges_ (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >protected
splited_edges_by_fragment_ (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >protected
splitEdges() (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >inlineprotected
splitEdgesByFragment() (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >inlineprotected
sub_vertices_t typedef (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
traits_t typedef (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
type_info() (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >inlinestatic
vdata_ (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >protected
vdata_t typedef (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
Vertex2Gid(const vertex_t &v) const overridegrape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inlinevirtual
vertex_array_t typedef (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >
vertex_map_t typedef (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
vertex_range_t typedef (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
vertex_t typedef (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
Vertices() constgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >inline
vertices_ (defined in grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
vertices_t typedef (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >
vid_t typedef (defined in grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >)grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
vm_ptr_ (defined in grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >)grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >protected
~ImmutableEdgecutFragment()=default (defined in grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >)grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >virtual
+ + + + diff --git a/classgrape_1_1cuda_1_1HostFragment.html b/classgrape_1_1cuda_1_1HostFragment.html new file mode 100644 index 00000000..eb363848 --- /dev/null +++ b/classgrape_1_1cuda_1_1HostFragment.html @@ -0,0 +1,1013 @@ + + + + + + + +libgrape-lite: grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T > Class Template Reference
+
+
+
+Inheritance diagram for grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >:
+
+
+ + +grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > > +grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > > +grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T > +grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Types

+using base_t = ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >
 
+using internal_vertex_t = typename base_t::internal_vertex_t
 
+using edge_t = typename base_t::edge_t
 
+using nbr_t = typename base_t::nbr_t
 
+using vertex_t = typename base_t::vertex_t
 
+using const_adj_list_t = typename base_t::const_adj_list_t
 
+using adj_list_t = typename base_t::adj_list_t
 
+using traits_t = typename base_t::traits_t
 
+using vid_t = VID_T
 
+using oid_t = OID_T
 
+using vdata_t = VDATA_T
 
+using edata_t = EDATA_T
 
+using vertex_range_t = typename base_t::vertex_range_t
 
+using vertex_map_t = typename base_t::vertex_map_t
 
+using dev_vertex_map_t = cuda::DeviceVertexMap< vertex_map_t >
 
+using inner_vertices_t = typename base_t::inner_vertices_t
 
+using outer_vertices_t = typename base_t::outer_vertices_t
 
+using device_t = dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >
 
+using coo_t = COOFragment< oid_t, vid_t, vdata_t, edata_t >
 
+using IsEdgeCut = std::true_type
 
+using IsVertexCut = std::false_type
 
- Public Types inherited from grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >
+using traits_t = ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > >
 
+using base_t = CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, traits_t >
 
+using internal_vertex_t = internal::Vertex< VID_T, VDATA_T >
 
+using edge_t = Edge< VID_T, EDATA_T >
 
+using nbr_t = Nbr< VID_T, EDATA_T >
 
+using vertex_t = Vertex< VID_T >
 
+using vid_t = VID_T
 
+using oid_t = OID_T
 
+using vdata_t = VDATA_T
 
+using edata_t = EDATA_T
 
+using vertex_map_t = typename traits_t::vertex_map_t
 
+using IsEdgeCut = std::true_type
 
+using IsVertexCut = std::false_type
 
+using vertex_range_t = VertexRange< VID_T >
 
+using inner_vertices_t = typename traits_t::inner_vertices_t
 
+using outer_vertices_t = typename traits_t::outer_vertices_t
 
+using vertices_t = typename traits_t::vertices_t
 
+using inner_vertex_array_t = VertexArray< inner_vertices_t, T >
 
+using outer_vertex_array_t = VertexArray< outer_vertices_t, T >
 
+using vertex_array_t = VertexArray< vertices_t, T >
 
+using adj_list_t = typename base_t::adj_list_t
 
+using const_adj_list_t = typename base_t::const_adj_list_t
 
- Public Types inherited from grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >
+using nbr_t = Nbr< VID_T, EDATA_T >
 
+using vertex_t = Vertex< VID_T >
 
+using const_adj_list_t = ConstAdjList< VID_T, EDATA_T >
 
+using adj_list_t = AdjList< VID_T, EDATA_T >
 
+using base_t = EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >
 
- Public Types inherited from grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
+using base_t = FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
 
+using vid_t = VID_T
 
+using vertex_t = Vertex< VID_T >
 
+using inner_vertices_t = typename TRAITS_T::inner_vertices_t
 
+using outer_vertices_t = typename TRAITS_T::outer_vertices_t
 
+using sub_vertices_t = typename TRAITS_T::sub_vertices_t
 
+using mirror_vertices_t = typename TRAITS_T::mirror_vertices_t
 
- Public Types inherited from grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
+using vertex_map_t = typename TRAITS_T::vertex_map_t
 
+using fragment_adj_list_t = typename TRAITS_T::fragment_adj_list_t
 
+using fragment_const_adj_list_t = typename TRAITS_T::fragment_const_adj_list_t
 
+using vertices_t = typename TRAITS_T::vertices_t
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

HostFragment (std::shared_ptr< vertex_map_t > vm_ptr)
 
+void Init (fid_t fid, bool directed, std::vector< internal_vertex_t > &vertices, std::vector< edge_t > &edges)
 
+template<typename IOADAPTOR_T >
void Serialize (const std::string &prefix)
 
+template<typename IOADAPTOR_T >
void Deserialize (const std::string &prefix, const fid_t fid)
 
void PrepareToRunApp (const CommSpec &comm_spec, PrepareConf conf)
 For some kind of applications, specific data structures will be generated. More...
 
+const vid_t * GetOuterVerticesGid () const
 
+bool GetOuterVertex (const OID_T &oid, vertex_t &v) const
 
+bool Oid2Gid (const OID_T &oid, VID_T &gid) const
 
+device_t DeviceObject () const
 
+void __allocate_device_fragment__ ()
 
+void OffloadTopology () const
 
+void ReloadTopology () const
 
+void ReleaseDeviceCSR ()
 
+std::shared_ptr< coo_tConvertToCOO (bool release_csr=false)
 
+void __init_edges_splitter__ (const Stream &stream, grape::Array< nbr_t *, grape::Allocator< nbr_t * >> const &eoffset, std::vector< grape::VertexArray< inner_vertices_t, nbr_t * >> const &espliters, thrust::device_vector< nbr_t * > &d_eoffset, std::vector< thrust::device_vector< nbr_t * >> &d_espliters_holder, thrust::device_vector< ArrayView< nbr_t * >> &d_espliters)
 
+void __init_edges_splitter_by_fragment__ (const Stream &stream, grape::Array< nbr_t *, grape::Allocator< nbr_t * >> const &eoffset, std::vector< grape::VertexArray< inner_vertices_t, nbr_t * >> const &espliters, thrust::device_vector< nbr_t * > &d_eoffset, std::vector< thrust::device_vector< nbr_t * >> &d_espliters_holder, thrust::device_vector< ArrayView< nbr_t * >> &d_espliters)
 
+const VDATA_T & GetData (const vertex_t &v) const override
 
+adj_list_t GetIncomingAdjList (const vertex_t &v, fid_t src_fid) override
 
+const_adj_list_t GetIncomingAdjList (const vertex_t &v, fid_t src_fid) const override
 
+adj_list_t GetIncomingInnerVertexAdjList (const vertex_t &v) override
 
+const_adj_list_t GetIncomingInnerVertexAdjList (const vertex_t &v) const override
 
+adj_list_t GetIncomingOuterVertexAdjList (const vertex_t &v) override
 
+const_adj_list_t GetIncomingOuterVertexAdjList (const vertex_t &v) const override
 
+adj_list_t GetOutgoingAdjList (const vertex_t &v, fid_t dst_fid) override
 
+const_adj_list_t GetOutgoingAdjList (const vertex_t &v, fid_t dst_fid) const override
 
+adj_list_t GetOutgoingInnerVertexAdjList (const vertex_t &v) override
 
+const_adj_list_t GetOutgoingInnerVertexAdjList (const vertex_t &v) const override
 
+adj_list_t GetOutgoingOuterVertexAdjList (const vertex_t &v) override
 
+const_adj_list_t GetOutgoingOuterVertexAdjList (const vertex_t &v) const override
 
+void SetData (const vertex_t &v, const VDATA_T &val) override
 
- Public Member Functions inherited from grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >
ImmutableEdgecutFragment (std::shared_ptr< vertex_map_t > vm_ptr)
 
+void Init (fid_t fid, bool directed, std::vector< internal_vertex_t > &vertices, std::vector< edge_t > &edges) override
 
+void Serialize (const std::string &prefix)
 
+void Deserialize (const std::string &prefix, const fid_t fid)
 
void PrepareToRunApp (const CommSpec &comm_spec, PrepareConf conf) override
 For some kind of applications, specific data structures will be generated. More...
 
const VDATA_T & GetData (const vertex_t &v) const override
 Get the data of a vertex. More...
 
void SetData (const vertex_t &v, const VDATA_T &val) override
 Set the data of a vertex. More...
 
+bool OuterVertexGid2Lid (VID_T gid, VID_T &lid) const override
 
VID_T GetOuterVertexGid (vertex_t v) const override
 Convert from inner vertex handle to its global id. More...
 
adj_list_t GetIncomingInnerVertexAdjList (const vertex_t &v) override
 Returns the incoming adjacent inner vertices of v. More...
 
const_adj_list_t GetIncomingInnerVertexAdjList (const vertex_t &v) const override
 Returns the incoming adjacent inner vertices of v. More...
 
adj_list_t GetIncomingOuterVertexAdjList (const vertex_t &v) override
 Returns the incoming adjacent outer vertices of v. More...
 
const_adj_list_t GetIncomingOuterVertexAdjList (const vertex_t &v) const override
 Returns the incoming adjacent outer vertices of v. More...
 
adj_list_t GetOutgoingInnerVertexAdjList (const vertex_t &v) override
 Returns the outgoing adjacent inner vertices of v. More...
 
const_adj_list_t GetOutgoingInnerVertexAdjList (const vertex_t &v) const override
 Returns the outgoing adjacent inner vertices of v. More...
 
adj_list_t GetOutgoingOuterVertexAdjList (const vertex_t &v) override
 Returns the outgoing adjacent outer vertices of v. More...
 
const_adj_list_t GetOutgoingOuterVertexAdjList (const vertex_t &v) const override
 Returns the outgoing adjacent outer vertices of v. More...
 
+adj_list_t GetIncomingAdjList (const vertex_t &v, fid_t src_fid) override
 
+const_adj_list_t GetIncomingAdjList (const vertex_t &v, fid_t src_fid) const override
 
virtual AdjList< VID_T, EDATA_T > GetIncomingAdjList (const Vertex< VID_T > &v)=0
 Returns the incoming adjacent vertices of v. More...
 
+virtual ConstAdjList< VID_T, EDATA_T > GetIncomingAdjList (const Vertex< VID_T > &v) const =0
 
+virtual fragment_adj_list_t GetIncomingAdjList (const Vertex< VID_T > &v, fid_t fid)=0
 
+virtual fragment_const_adj_list_t GetIncomingAdjList (const Vertex< VID_T > &v, fid_t fid) const =0
 
+adj_list_t GetOutgoingAdjList (const vertex_t &v, fid_t dst_fid) override
 
+const_adj_list_t GetOutgoingAdjList (const vertex_t &v, fid_t dst_fid) const override
 
virtual AdjList< VID_T, EDATA_T > GetOutgoingAdjList (const Vertex< VID_T > &v)=0
 Returns the outgoing adjacent vertices of v. More...
 
+virtual ConstAdjList< VID_T, EDATA_T > GetOutgoingAdjList (const Vertex< VID_T > &v) const =0
 
+virtual fragment_adj_list_t GetOutgoingAdjList (const Vertex< VID_T > &v, fid_t fid)=0
 
+virtual fragment_const_adj_list_t GetOutgoingAdjList (const Vertex< VID_T > &v, fid_t fid) const =0
 
+void init (fid_t fid, bool directed)
 
fid_t GetFragId (const Vertex< VID_T > &u) const
 Get the ID of fragment the input vertex belongs to. More...
 
- Public Member Functions inherited from grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >
size_t GetEdgeNum () const override
 Returns the number of edges in this fragment. More...
 
+size_t GetOutgoingEdgeNum () const
 
+size_t GetIncomingEdgeNum () const
 
bool HasChild (const vertex_t &v) const override
 Check if vertex v has a child, that is, existing an edge v->u. More...
 
bool HasParent (const vertex_t &v) const override
 Check if vertex v has a parent, that is, existing an edge u->v. More...
 
int GetLocalOutDegree (const vertex_t &v) const override
 Returns the out-degree of vertex v in this fragment.<Paste> More...
 
int GetLocalInDegree (const vertex_t &v) const override
 Returns the in-degree of vertex v in this fragment. More...
 
adj_list_t GetIncomingAdjList (const vertex_t &v) override
 Returns the incoming adjacent vertices of v. More...
 
const_adj_list_t GetIncomingAdjList (const vertex_t &v) const override
 Returns the incoming adjacent vertices of v. More...
 
adj_list_t GetOutgoingAdjList (const vertex_t &v) override
 Returns the outgoing adjacent vertices of v. More...
 
const_adj_list_t GetOutgoingAdjList (const vertex_t &v) const override
 Returns the outgoing adjacent vertices of v. More...
 
bool IsIncomingBorderVertex (const vertex_t &v) const
 Check if inner vertex v is an incoming border vertex, that is, existing edge u->v, u is an outer vertex. More...
 
bool IsOutgoingBorderVertex (const vertex_t &v) const
 Check if inner vertex v is an outgoing border vertex, that is, existing edge v->u, u is an outer vertex. More...
 
bool IsBorderVertex (const vertex_t &v) const
 Check if inner vertex v is an border vertex, that is, existing edge v->u or u->v, u is an outer vertex. More...
 
DestList IEDests (const vertex_t &v) const override
 Return the incoming edge destination fragment ID list of a inner vertex. More...
 
+size_t IEDestsSize () const override
 
DestList OEDests (const vertex_t &v) const override
 Return the outgoing edge destination fragment ID list of a Vertex. More...
 
+size_t OEDestsSize () const override
 
DestList IOEDests (const vertex_t &v) const override
 Return the edge destination fragment ID list of a inner vertex. More...
 
+size_t IOEDestsSize () const override
 
bool IsInnerVertex (const Vertex< VID_T > &v) const
 Check if vertex v is inner vertex of this fragment. More...
 
bool IsOuterVertex (const Vertex< VID_T > &v) const
 Check if vertex v is outer vertex of this fragment. More...
 
VID_T GetInnerVerticesNum () const
 Returns the number of inner vertices in this fragment. More...
 
+void initMirrorInfo (const CommSpec &comm_spec)
 
- Public Member Functions inherited from grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
VID_T GetInnerVerticesNum () const
 Returns the number of inner vertices in this fragment. More...
 
VID_T GetOuterVerticesNum () const
 Returns the number of outer vertices in this fragment. More...
 
const inner_vertices_t & InnerVertices () const
 Returns the vertex range of inner vertices in this fragment. More...
 
const outer_vertices_t & OuterVertices () const
 Returns the vertex range of outer vertices in this fragment. More...
 
+const sub_vertices_t & OuterVertices (fid_t fid) const
 
+const mirror_vertices_t & MirrorVertices (fid_t fid) const
 
bool IsInnerVertex (const Vertex< VID_T > &v) const
 Check if vertex v is inner vertex of this fragment. More...
 
bool IsOuterVertex (const Vertex< VID_T > &v) const
 Check if vertex v is outer vertex of this fragment. More...
 
bool GetInnerVertex (const OID_T &oid, Vertex< VID_T > &v) const
 Get a inner vertex with original ID vid. More...
 
OID_T GetInnerVertexId (vertex_t v) const
 Get the original ID of an inner vertex. More...
 
OID_T GetOuterVertexId (vertex_t v) const
 Get the original ID of an outer vertex. More...
 
bool InnerVertexGid2Vertex (VID_T gid, Vertex< VID_T > &v) const
 Convert from global id to an inner vertex handle. More...
 
bool OuterVertexGid2Vertex (VID_T gid, Vertex< VID_T > &v) const
 Convert from global id to an outer vertex handle. More...
 
VID_T GetInnerVertexGid (vertex_t v) const
 Convert from outer vertex handle to its global id. More...
 
bool Gid2Vertex (const vid_t &gid, vertex_t &v) const override
 Convert from global id to a vertex handle. More...
 
vid_t Vertex2Gid (const vertex_t &v) const override
 Convert from vertex handle to its global id. More...
 
fid_t fid () const
 Returns the ID of this fragment. More...
 
fid_t fnum () const
 Returns the number of fragments. More...
 
- Public Member Functions inherited from grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
FragmentBase (std::shared_ptr< vertex_map_t > vm_ptr)
 
+std::shared_ptr< vertex_map_t > GetVertexMap ()
 
+const std::shared_ptr< vertex_map_t > GetVertexMap () const
 
virtual void Init (fid_t fid, bool directed, std::vector< internal::Vertex< VID_T, VDATA_T >> &vertices, std::vector< Edge< VID_T, EDATA_T >> &edges)=0
 Construct a fragment with a set of vertices and edges. More...
 
bool directed () const
 Returns true if the fragment is directed, false otherwise. More...
 
fid_t fid () const
 Returns the ID of this fragment. More...
 
fid_t fnum () const
 Returns the number of fragments. More...
 
VID_T GetVerticesNum () const
 Returns the number of vertices in this fragment. More...
 
size_t GetTotalVerticesNum () const
 Returns the number of vertices in the entire graph. More...
 
const vertices_t & Vertices () const
 Get all vertices referenced to this fragment. More...
 
bool GetVertex (const OID_T &oid, Vertex< VID_T > &v) const
 Get a vertex with original ID vid. More...
 
OID_T GetId (const Vertex< VID_T > &v) const
 Get the original ID of a vertex. More...
 
+OID_T Gid2Oid (VID_T gid) const
 
fid_t GetFragId (const Vertex< VID_T > &u) const
 Get the ID of fragment the input vertex belongs to. More...
 
+ + + + + + +

+Static Public Attributes

+static constexpr grape::LoadStrategy load_strategy = _load_strategy
 
- Static Public Attributes inherited from grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >
+static constexpr LoadStrategy load_strategy
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Protected Member Functions

+void __initMessageDestination (const Stream &stream, const grape::MessageStrategy &msg_strategy)
 
+void __initDestFidList (const Stream &stream, bool in_edge, bool out_edge, grape::Array< fid_t, grape::Allocator< fid_t >> const &fid_list, grape::Array< fid_t *, grape::Allocator< fid_t * >> const &fid_list_offset, thrust::device_vector< fid_t > &d_fid_list, thrust::device_vector< fid_t * > &d_fid_list_offset)
 
+void __initMirrorInfo (const CommSpec &comm_spec)
 
- Protected Member Functions inherited from grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >
+void initOuterVerticesOfFragment ()
 
+void splitEdges ()
 
+void splitEdgesByFragment ()
 
- Protected Member Functions inherited from grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >
+void buildCSR (const typename csr_builder_t::vertex_range_t &vertex_range, std::vector< Edge< VID_T, EDATA_T >> &edges, LoadStrategy load_strategy)
 
+void serialize (std::unique_ptr< IOADAPTOR_T > &writer)
 
+void deserialize (std::unique_ptr< IOADAPTOR_T > &reader)
 
+nbr_tget_ie_begin (const vertex_t &v)
 
+const nbr_tget_ie_begin (const vertex_t &v) const
 
+nbr_tget_ie_end (const vertex_t &v)
 
+const nbr_tget_ie_end (const vertex_t &v) const
 
+nbr_tget_oe_begin (const vertex_t &v)
 
+const nbr_tget_oe_begin (const vertex_t &v) const
 
+nbr_tget_oe_end (const vertex_t &v)
 
+const nbr_tget_oe_end (const vertex_t &v) const
 
+bool Gid2Lid (VID_T gid, VID_T &lid) const
 
+bool InnerVertexGid2Lid (VID_T gid, VID_T &lid) const
 
+bool IsInnerVertexGid (VID_T gid) const
 
+bool IsInnerVertexLid (VID_T lid) const
 
+virtual bool OuterVertexGid2Lid (VID_T gid, VID_T &lid) const =0
 
- Protected Member Functions inherited from grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
+bool IsInnerVertexGid (VID_T gid) const
 
+bool IsInnerVertexLid (VID_T lid) const
 
+bool Gid2Lid (VID_T gid, VID_T &lid) const
 
+bool InnerVertexGid2Lid (VID_T gid, VID_T &lid) const
 
+void initMirrorInfo (const CommSpec &comm_spec)
 
+template<typename IOADAPTOR_T >
void serialize (std::unique_ptr< IOADAPTOR_T > &writer)
 
+template<typename IOADAPTOR_T >
void deserialize (std::unique_ptr< IOADAPTOR_T > &reader)
 
- Protected Member Functions inherited from grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
+void init (fid_t fid, bool directed)
 
+template<typename IOADAPTOR_T >
void serialize (std::unique_ptr< IOADAPTOR_T > &writer)
 
+template<typename IOADAPTOR_T >
void deserialize (std::unique_ptr< IOADAPTOR_T > &reader)
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Protected Attributes

+std::shared_ptr< dev_vertex_map_t > d_vm_ptr_
 
+std::shared_ptr< CUDASTL::HashMap< VID_T, VID_T > > d_ovg2l_
 
+thrust::device_vector< VID_T > d_ovgid_
 
+thrust::device_vector< nbr_t > d_ie_
 
+thrust::device_vector< nbr_t > d_oe_
 
+thrust::device_vector< nbr_t * > d_ieoffset_
 
+thrust::device_vector< nbr_t * > d_oeoffset_
 
+thrust::device_vector< VDATA_T > d_vdata_
 
+thrust::device_vector< fid_t > d_idst_
 
+thrust::device_vector< fid_t > d_odst_
 
+thrust::device_vector< fid_t > d_iodst_
 
+thrust::device_vector< fid_t * > d_idoffset_
 
+thrust::device_vector< fid_t * > d_odoffset_
 
+thrust::device_vector< fid_t * > d_iodoffset_
 
+std::vector< thrust::device_vector< nbr_t * > > d_iespliters_holder_
 
+std::vector< thrust::device_vector< nbr_t * > > d_oespliters_holder_
 
+thrust::device_vector< ArrayView< nbr_t * > > d_iespliters_
 
+thrust::device_vector< ArrayView< nbr_t * > > d_oespliters_
 
+thrust::device_vector< vertex_range_t > d_outer_vertices_of_frag_
 
+std::vector< thrust::device_vector< vertex_t > > d_mirrors_of_frag_holder_
 
+thrust::device_vector< ArrayView< vertex_t > > d_mirrors_of_frag_
 
+std::shared_ptr< coo_tcoo_frag_
 
+VID_T ovnum_
 
+ska::flat_hash_map< VID_T, VID_T, std::hash< VID_T >, std::equal_to< VID_T >, Allocator< std::pair< VID_T, VID_T > > > ovg2l_
 
+Array< VID_T, Allocator< VID_T > > ovgid_
 
+Array< VDATA_T, Allocator< VDATA_T > > vdata_
 
+std::vector< VertexArray< inner_vertices_t, nbr_t * > > iespliters_
 
+std::vector< VertexArray< inner_vertices_t, nbr_t * > > oespliters_
 
- Protected Attributes inherited from grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >
+VID_T ovnum_
 
+ska::flat_hash_map< VID_T, VID_T, std::hash< VID_T >, std::equal_to< VID_T >, Allocator< std::pair< VID_T, VID_T > > > ovg2l_
 
+Array< VID_T, Allocator< VID_T > > ovgid_
 
+Array< VDATA_T, Allocator< VDATA_T > > vdata_
 
+std::vector< VertexArray< inner_vertices_t, nbr_t * > > iespliters_
 
+std::vector< VertexArray< inner_vertices_t, nbr_t * > > oespliters_
 
+bool splited_edges_by_fragment_
 
+bool splited_edges_
 
+VID_T ivnum_
 
+bool directed_
 
+fid_t fid_
 
+fid_t fnum_
 
+IdParser< VID_T > id_parser_
 
- Protected Attributes inherited from grape::CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >
+csr_t ie_
 
+csr_t oe_
 
+ImmutableCSR< VID_T, fid_t > idst_
 
+ImmutableCSR< VID_T, fid_t > odst_
 
+ImmutableCSR< VID_T, fid_t > iodst_
 
+bool idst_built_
 
+bool odst_built_
 
+bool iodst_built_
 
+bool mirror_info_initialized_
 
- Protected Attributes inherited from grape::EdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
+inner_vertices_t inner_vertices_
 
+outer_vertices_t outer_vertices_
 
+std::vector< sub_vertices_t > outer_vertices_of_frag_
 
+std::vector< mirror_vertices_t > mirrors_of_frag_
 
+IdParser< VID_T > id_parser_
 
+std::shared_ptr< vertex_map_t > vm_ptr_
 
- Protected Attributes inherited from grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >
+fid_t fid_
 
+fid_t fnum_
 
+bool directed_
 
+VID_T ivnum_
 
+vertices_t vertices_
 
+std::shared_ptr< vertex_map_t > vm_ptr_
 
+IdParser< VID_T > id_parser_
 
+ + + + +

+Additional Inherited Members

- Static Public Member Functions inherited from grape::ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >
+static std::string type_info ()
 
+

Member Function Documentation

+ +

◆ PrepareToRunApp()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , grape::LoadStrategy _load_strategy = grape::LoadStrategy::kOnlyOut, typename VERTEX_MAP_T = GlobalVertexMap<OID_T, VID_T>>
+ + + + + +
+ + + + + + + + + + + + + + + + + + +
void grape::cuda::HostFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy, VERTEX_MAP_T >::PrepareToRunApp (const CommSpeccomm_spec,
PrepareConf conf 
)
+
+inlinevirtual
+
+ +

For some kind of applications, specific data structures will be generated.

+
Parameters
+ + + +
strategy
need_split_edge
+
+
+ +

Implements grape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >.

+ +
+
+
+ + + + diff --git a/classgrape_1_1cuda_1_1HostFragment.png b/classgrape_1_1cuda_1_1HostFragment.png new file mode 100644 index 0000000000000000000000000000000000000000..f3cc3814ff19fa49e6c9ac57abc29f840b0f1255 GIT binary patch literal 6452 zcmeI0cT`jPw#UOTqJv-=un`4EnjnfIgc1Z51OkGzP^2nNAP`z8hVBR|f)Yvu1eGR+ z5($J72tnxq=>ZeENDBm{gccw#wz>1xd+Xk{?qBb{_0C#3*}r|x**V$kw?Dt{Z$C6N z(B|hA;spQz{16>YV*ub+5XWBM!_7ILe3|@)^L5nly6H7Go6Rw&=a`5m@1Jt4Z=c%Q z+FcI^ML5Gfe#QnS0M1Qc4+_~-j`LU@MDvPiAQvNjwk)gQu;%NAqpWR_4Y7mX5l7|A z6R;*#>G}sOMhSvpw|4Y4WCMl*MncvCSmo+AJA(wo?5d7C#cQ^Y(b9(*>nj{cI4g#H zS7=r4Les<@;ao@NraRRQuiJx%cG?TlM$0BUx6&5fk(L2grj1jvSXr~G{^bH-f&bDV zWgaGZy?PbSaPyy!_B9=;Tq%iYutgM2ggBJbqnXR08x)EV9dM2WYUouyHezPrEOa8E&6inO$w+tn&V8AsQ0V!Sr(X*R_ zq@t=7tSoNGlApXayFPjD!}csDhfWU7xtWhiU2CEL-ZV}?*cOq4GcH0&AJYa3)MkV7 zcMK?S)7#LVm(Hw_*;OcG%LQJ2Rl!HWj+d3(Q27G8lqPLGf(9$KS3Rne5jMXdwRdR= zFa3TC^XLea%uul%*@z{7_P~+l$GwMCWKFmA8?GXXwmm7btCM9}S6`7#n0Q?o)==-8 z#kxtP3m%biQ=z7iKVYrfE?*VXFd=IO)#j%o6pbpkD9aj@X!>b-Ji0$1^fl%%_2c6v zL@Z3zlv#eG;&F$6xwIfFBq@!R#C}9VBNT(CL*a`rmYFksm_-6eaLjs2Jbx+^zA)Ne zttBq4&;lHs?4VreATZIspXn+2zJ-%o(5qpURptsGpO>smVQlh4cQAOm9?6P%g(<{+ zEku`u_3qW zBgh2vsTsYmlh3x-Hh(jf*zeZDz>7R0*4!JfR?gSMuk~h^2HiGFat}&$I}5GIgF?3{ zHZ^7&)$lCoH0iz4rf>S+VeICTq~UWXj4R*Pn02fkXRHlt)&*^5`X}=v$Hf^rfmkZo zd{+Dhc4#B6YBf^2zG@k?pi*dd&*>ebfzrm*S74XjD(JRO>PNQ{sMoc{rIS+lClQyD z9!S5vu4>I}T^l}ZO9}%S&L#QY4}~)GHw##T>V5QQ>J=NdQ&af^U#GXMdm7loio)^; zQ6!bvER1?vLB}*0JtNTklmXd0-=-|V4TdQ&im!58uAx6$*tpFua{F9)BTuXNOP-qy zkFZ(nByy;xCY?POYhLPGdCAWl+&Xkqfm4;Ng)%e#a?ha**dNrroU+saI?;iVbCvHvz0QdP?92e(8IM-2o zD&SjKzPCRD@K}JphvfeGGh9Ez09ya&hAGWXL_ws)6O45wauToWN-;E0VxkZ&)MK$@ z5LzAXj~}LxJ@x4iKmS{p4l4fJfb*ZlTD}jsGvZ@sR?%U4-D>DDB`Z{;OpKUovz&L; zonfV#(|sLn{0mdDeQy^3wAx$AuHb^uZk-sYAKUJtJ}(V~qHgXC0g~VYnpp_l@zg#O z$~>xfNrW)$b7P5KCIVY?Gpr|qGJw9u8_4$WW6$f=zg>)7k0QHRmiqO<`@lj z7*TzfI=v)Wf@|sORDYH<#b2<`?Gk>xq(f6O>Q!tfeAnqvn{sP;h{8~$8#XFa3cl(n z_?kGP?U?05>Eoh0A8t!G<;!)pwDBu*z)ww9hDqPKWYn$$pjK{8&-MjT#pI@*aj zUuY82p=@_9URhc3c#bY+Iza&Vd4bkn{Ea0sLXPH!D`I4(vqJJsvnv?ce-guOD z`>grHbQiqQ_G8J8JxzunLV2$Z^$w{B{VYwKc@`fZtIKY!d7}Hp#PZk~C*+uLGkG`P z_3qUf3AzMe;jzI~R1uu<;!OHF)S%c(oNSt)vQoJbRvWi;g*%})$n6F5`TFGa9Jw(yn{?o%@kipF z(p>|@xO+wN20KqBJ03R1!K_`5u=UH^C+ubll@Z%}d(aYXZL-UT>vQXB>q=w_;{3va zNo=lo;f<7M9pbJbpa{E=pg_-$qlU&wu(mTIiYN8cT$t`BUXIqUX}{h{4t^Xg0l};X zaF=eLSwEfYp>PR?)5MAb^{J4XFODFMQSII6*qWER-Qm0UEv-|{J3ddJ(WA+)8^`%_O&LXg2W ze#cKjguMKoNUBOfUeAylDY)$Q;d{L=Gii-xZ(DJ~~2Y*ZftPkDWBWm9QMj zPp~zLQ_FHFM={s%zr6Cb|0r#*_}D~aIjI~+W8Ic-G{~{}N;1sU{%_2)2dw@D$>lYd zq3_%qZ1_RKijHdv1wX)w{K-HK86g1ASLXh&VBo(6_D_wkBoB?z5ie3 z{BJl_k_Glm$d>l!mX=4f!XdONx#KQ+-Orrj#rUOM24zwe<76K(FZ$N8K0QWsfDiky zy}41Pbt+{K>sVPO%C3tTG5l5)*Uh~SlFkiMvFcGW&du%5tm8LfNcb^bw+9a$MNUBudSQt`EW zOfE3fpdxc*f4hzP_EgBQ1=_;7GiuG0h zp()Rx60(-ZlqiSRA&+1(V>bITSg-os?o3dp7o2SH{tmAA-@jq>`6*8*5$3m%U`hRa zXIi9^8=pa2q`G7Z)OBi2m;WM2Dzef}%}({q!JBJzB`PB29`&>@oCYRomyJ{o zo!&b}8-_HzZIa24Y4U8P6J3Mvdw@ym4 z0T-i1>!RteqU@1lq4|>0@4L{kDot1M{s|RHX&@WqLrbc=2|;(*x$Be>9@YQ{&$Nom zNlry&nL-YwBc|oR9`>lR8?HBBK)C{4{G`{C-ua++48uXGHaQ+@cHSlh6Vk=Y1t83e z#m|?O2)HidW1(@%4(lN`)JFD#q8{DKO%#~4gANf%8hwqEGb69Qzw|U||IugJj2``7 zeZcUs^mcxm5t_Qd%k4YAn(uN*50vSM+o~Q&;O@$E66GD~#$x=;&$&@8`Vc+qp0|s# zs>C~6Mt%58U0}c8Z9?lmI{thhuV2)1<7EVdu8QxtYY^<~=kMg8-)*C_kiv4$C>Rnp&l2<+ibUWKKr^e7xP{t1r~WkT2f7#k2Mw z3C)AIZ+34cKHRWI^|=VFQ_#^r%{kS3*)p5@nfY42xG zEK|C?!^Pf=b)6mdDm?|9MJ%EiDwAR}!uw_7v+uR_>x4YfHGXo@SKPI==WvF4q!?on z@%0JU+OA6(U$VtcylQTwglDg-PCVM(zEt}=hn0T&w6#$?4#Dwk^S^WtM-Tn2YX5r? zBm?AN_NyYw<~l;v`J1fbFoL#=1H_kicfPAc9($1=s&G^-EUfQ`;I#Rv9a+|c7l+GXJ-Au0^LioE-G!($Z|b!%6$_SQb*|O;^Cv?tlzyh;A>g=s06wU>2f)p)~8vf8|;M^z(Rtosg9_=)K zkh_T+Z~Y7^pc}By;)1}ZBa`T@nMCM{g`fnir9B+I(6x4{FaC9Q@Fa7F_gI-ECm zU;l+#aZR$xVR4MU$`LA7&oLs<2bd&;ZbR{1FNYj4?ZBad65UvWgt{m&_CYV+UlY_0 zR63eB*=Un);Rc`mM5E&0dA$W+80H}+#S%^2QEr40%CN;Xli}lR-Cd-s`ZXFL%%4L% zrE&FQ4KA{9-8;*~Vo^av)Km*NddA5r?>-zIJNhshF=g>m$bs^h9)%6TyPVf@)OMe5 zZCo0%nnmKe_zt~mW(P!#2(jS;aqxs#LL>T=+9_b6is>~Rq}Asq@WR=D(DA&XKirA{#0G~Ov5oi@Z*4}9WqF=n`LCbAfnrrT;8fV*NE}q35JQO;kXr3s+P(_G= zAN?L+nWlAco~-4BH^1<~WV$7>LuKBYsiI$u-{ofS5+ zzj}G?5l%_=v&Lf`AR(}nE;@d=^;H?JE11Y(t~Y1Ou-18~9|_Y$VPx&5`+mPh+A>(( zMj)pVQ2S0)l>Atx+a=S3qu%pOvynYamo=VIu&$YVs zcYqdzhLA_D0wu`>~-GLS$;R^@$8wXud@nkxE8QUD8e~8m*L?`oy zn=h5%yjzLl7y3h|71AfJ!LTY3ITnPc|LUn%evCKMi#5;(3ni8`#7Qe$TgKxK)@&%? ziWvxf2BDA@)GCG6aXfTqGr%e9IwQDofj8R80g~;-jJ`h8+UT#Pa5Scz)Nt3b51X&4 zDhbp(eWQISQG17NTPeS`F3MAeGYZO-Zu58sx=M_1FvDiu$dpkqAP^tCC{ae7c>y4C zqKWbn9Z9}K4@ZXt^3Yj~vUe%bUHuf$!zfk;<~Uvu5er+f9^loRr7a=&)G?_ zlU4p|>-Xm>VsP zqC6b>o_$`0J17B9s2JXBDc;&|TtPSaoF1K=yV^<*j=fP&?iW*x-+s3wkND4OgJ9=X8k`A;XHA z6Z2D0Il?nbJM9xnl0X27yg=4ckLDU~b1zqRU~HtnDEs0gvhYAKoGWmz`Wav=Wyz8{ zJ;&=6xq*=Z%?p7q9rLw`PbYy|xnU-@vbvBJJN|1XyT>hC(pjS2$c>%s2@+AoEh zUqJQ + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::InArchive Member List
+
+
+ +

This is the complete list of members for grape::cuda::InArchive, including all inherited members.

+ + + + + + + + + + + + + + + + +
Allocate(uint32_t capacity) (defined in grape::cuda::InArchive)grape::cuda::InArchiveinline
buffer_ (defined in grape::cuda::InArchive)grape::cuda::InArchiveprivate
capacity() const (defined in grape::cuda::InArchive)grape::cuda::InArchiveinline
Clear() (defined in grape::cuda::InArchive)grape::cuda::InArchiveinline
Clear(const Stream &stream) (defined in grape::cuda::InArchive)grape::cuda::InArchiveinline
data() (defined in grape::cuda::InArchive)grape::cuda::InArchiveinline
DeviceObject() (defined in grape::cuda::InArchive)grape::cuda::InArchiveinline
Empty() const (defined in grape::cuda::InArchive)grape::cuda::InArchiveinline
Empty(const Stream &stream) const (defined in grape::cuda::InArchive)grape::cuda::InArchiveinline
grape::cuda::OutArchive (defined in grape::cuda::InArchive)grape::cuda::InArchivefriend
InArchive() (defined in grape::cuda::InArchive)grape::cuda::InArchiveinline
InArchive(uint32_t capacity) (defined in grape::cuda::InArchive)grape::cuda::InArchiveinlineexplicit
size() const (defined in grape::cuda::InArchive)grape::cuda::InArchiveinline
size(const Stream &stream) const (defined in grape::cuda::InArchive)grape::cuda::InArchiveinline
size_ (defined in grape::cuda::InArchive)grape::cuda::InArchiveprivate
+ + + + diff --git a/classgrape_1_1cuda_1_1InArchive.html b/classgrape_1_1cuda_1_1InArchive.html new file mode 100644 index 00000000..e7e53168 --- /dev/null +++ b/classgrape_1_1cuda_1_1InArchive.html @@ -0,0 +1,136 @@ + + + + + + + +libgrape-lite: grape::cuda::InArchive Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::InArchive Class Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

InArchive (uint32_t capacity)
 
+dev::InArchive DeviceObject ()
 
+void Allocate (uint32_t capacity)
 
+uint32_t size () const
 
+uint32_t size (const Stream &stream) const
 
+uint32_t capacity () const
 
+void Clear ()
 
+void Clear (const Stream &stream)
 
+bool Empty () const
 
+bool Empty (const Stream &stream) const
 
+char * data ()
 
+ + + + + +

+Private Attributes

+thrust::device_vector< char > buffer_
 
+SharedValue< uint32_t > size_
 
+ + + +

+Friends

+class grape::cuda::OutArchive
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1InArchiveGroup-members.html b/classgrape_1_1cuda_1_1InArchiveGroup-members.html new file mode 100644 index 00000000..b72a6b8d --- /dev/null +++ b/classgrape_1_1cuda_1_1InArchiveGroup-members.html @@ -0,0 +1,95 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::InArchiveGroup Member List
+
+
+ +

This is the complete list of members for grape::cuda::InArchiveGroup, including all inherited members.

+ + + + + + + + + + + + + + +
buffers_ (defined in grape::cuda::InArchiveGroup)grape::cuda::InArchiveGroupprivate
Clear(const Stream &stream) (defined in grape::cuda::InArchiveGroup)grape::cuda::InArchiveGroupinline
data(size_t idx) (defined in grape::cuda::InArchiveGroup)grape::cuda::InArchiveGroupinline
DeviceObject(size_t idx) (defined in grape::cuda::InArchiveGroup)grape::cuda::InArchiveGroupinline
Empty(size_t idx, const Stream &stream) const (defined in grape::cuda::InArchiveGroup)grape::cuda::InArchiveGroupinline
grape::cuda::OutArchive (defined in grape::cuda::InArchiveGroup)grape::cuda::InArchiveGroupfriend
InArchiveGroup()=default (defined in grape::cuda::InArchiveGroup)grape::cuda::InArchiveGroup
InArchiveGroup(size_t group_size) (defined in grape::cuda::InArchiveGroup)grape::cuda::InArchiveGroupinlineexplicit
Init(size_t size) (defined in grape::cuda::InArchiveGroup)grape::cuda::InArchiveGroupinline
resize(size_t idx, uint32_t capacity) (defined in grape::cuda::InArchiveGroup)grape::cuda::InArchiveGroupinline
size(const Stream &stream) const (defined in grape::cuda::InArchiveGroup)grape::cuda::InArchiveGroupinline
size(const Stream &stream) (defined in grape::cuda::InArchiveGroup)grape::cuda::InArchiveGroupinline
sizes_ (defined in grape::cuda::InArchiveGroup)grape::cuda::InArchiveGroupprivate
+ + + + diff --git a/classgrape_1_1cuda_1_1InArchiveGroup.html b/classgrape_1_1cuda_1_1InArchiveGroup.html new file mode 100644 index 00000000..a2ebbd73 --- /dev/null +++ b/classgrape_1_1cuda_1_1InArchiveGroup.html @@ -0,0 +1,130 @@ + + + + + + + +libgrape-lite: grape::cuda::InArchiveGroup Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::InArchiveGroup Class Reference
+
+
+ + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

InArchiveGroup (size_t group_size)
 
+void Init (size_t size)
 
+dev::InArchive DeviceObject (size_t idx)
 
+void resize (size_t idx, uint32_t capacity)
 
+const SharedArray< uint32_t >::host_t & size (const Stream &stream) const
 
+SharedArray< uint32_t >::host_t & size (const Stream &stream)
 
+void Clear (const Stream &stream)
 
+bool Empty (size_t idx, const Stream &stream) const
 
+char * data (size_t idx)
 
+ + + + + +

+Private Attributes

+std::vector< thrust::device_vector< char > > buffers_
 
+SharedArray< uint32_t > sizes_
 
+ + + +

+Friends

+class grape::cuda::OutArchive
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1OutArchive-members.html b/classgrape_1_1cuda_1_1OutArchive-members.html new file mode 100644 index 00000000..f2a60483 --- /dev/null +++ b/classgrape_1_1cuda_1_1OutArchive-members.html @@ -0,0 +1,96 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::OutArchive Member List
+
+
+ +

This is the complete list of members for grape::cuda::OutArchive, including all inherited members.

+ + + + + + + + + + + + + + + +
Allocate(uint32_t capacity) (defined in grape::cuda::OutArchive)grape::cuda::OutArchiveinline
AvailableBytes() const (defined in grape::cuda::OutArchive)grape::cuda::OutArchiveinline
AvailableBytes(const Stream &stream) const (defined in grape::cuda::OutArchive)grape::cuda::OutArchiveinline
buffer_ (defined in grape::cuda::OutArchive)grape::cuda::OutArchiveprivate
Clear() (defined in grape::cuda::OutArchive)grape::cuda::OutArchiveinline
Clear(const Stream &stream) (defined in grape::cuda::OutArchive)grape::cuda::OutArchiveinline
data() (defined in grape::cuda::OutArchive)grape::cuda::OutArchiveinline
DeviceObject() (defined in grape::cuda::OutArchive)grape::cuda::OutArchiveinline
limit_ (defined in grape::cuda::OutArchive)grape::cuda::OutArchiveprivate
OutArchive() (defined in grape::cuda::OutArchive)grape::cuda::OutArchiveinline
OutArchive(uint32_t capacity) (defined in grape::cuda::OutArchive)grape::cuda::OutArchiveinlineexplicit
OutArchive(const InArchive &ia) (defined in grape::cuda::OutArchive)grape::cuda::OutArchiveinlineexplicit
pos_ (defined in grape::cuda::OutArchive)grape::cuda::OutArchiveprivate
SetLimit(uint32_t limit) (defined in grape::cuda::OutArchive)grape::cuda::OutArchiveinline
+ + + + diff --git a/classgrape_1_1cuda_1_1OutArchive.html b/classgrape_1_1cuda_1_1OutArchive.html new file mode 100644 index 00000000..815ab4f0 --- /dev/null +++ b/classgrape_1_1cuda_1_1OutArchive.html @@ -0,0 +1,129 @@ + + + + + + + +libgrape-lite: grape::cuda::OutArchive Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::OutArchive Class Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

OutArchive (uint32_t capacity)
 
OutArchive (const InArchive &ia)
 
+dev::OutArchive DeviceObject ()
 
+void Clear ()
 
+void Clear (const Stream &stream)
 
+void Allocate (uint32_t capacity)
 
+char * data ()
 
+void SetLimit (uint32_t limit)
 
+uint32_t AvailableBytes () const
 
+uint32_t AvailableBytes (const Stream &stream) const
 
+ + + + + + + +

+Private Attributes

+thrust::device_vector< char > buffer_
 
+uint32_t limit_
 
+SharedValue< uint32_t > pos_
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1OutArchiveGroup-members.html b/classgrape_1_1cuda_1_1OutArchiveGroup-members.html new file mode 100644 index 00000000..0fa8f0a8 --- /dev/null +++ b/classgrape_1_1cuda_1_1OutArchiveGroup-members.html @@ -0,0 +1,92 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::OutArchiveGroup Member List
+
+
+ +

This is the complete list of members for grape::cuda::OutArchiveGroup, including all inherited members.

+ + + + + + + + + + + +
buffers_ (defined in grape::cuda::OutArchiveGroup)grape::cuda::OutArchiveGroupprivate
Clear(const Stream &stream) (defined in grape::cuda::OutArchiveGroup)grape::cuda::OutArchiveGroupinline
data(size_t idx) (defined in grape::cuda::OutArchiveGroup)grape::cuda::OutArchiveGroupinline
DeviceObject(size_t idx) (defined in grape::cuda::OutArchiveGroup)grape::cuda::OutArchiveGroupinline
Init(size_t group_size) (defined in grape::cuda::OutArchiveGroup)grape::cuda::OutArchiveGroupinline
limits_ (defined in grape::cuda::OutArchiveGroup)grape::cuda::OutArchiveGroupprivate
OutArchiveGroup()=default (defined in grape::cuda::OutArchiveGroup)grape::cuda::OutArchiveGroup
OutArchiveGroup(size_t group_size) (defined in grape::cuda::OutArchiveGroup)grape::cuda::OutArchiveGroupinlineexplicit
pos_ (defined in grape::cuda::OutArchiveGroup)grape::cuda::OutArchiveGroupprivate
resize(size_t idx, uint32_t size) (defined in grape::cuda::OutArchiveGroup)grape::cuda::OutArchiveGroupinline
+ + + + diff --git a/classgrape_1_1cuda_1_1OutArchiveGroup.html b/classgrape_1_1cuda_1_1OutArchiveGroup.html new file mode 100644 index 00000000..3113767b --- /dev/null +++ b/classgrape_1_1cuda_1_1OutArchiveGroup.html @@ -0,0 +1,117 @@ + + + + + + + +libgrape-lite: grape::cuda::OutArchiveGroup Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::OutArchiveGroup Class Reference
+
+
+ + + + + + + + + + + + + + +

+Public Member Functions

OutArchiveGroup (size_t group_size)
 
+void Init (size_t group_size)
 
+dev::OutArchive DeviceObject (size_t idx)
 
+void Clear (const Stream &stream)
 
+void resize (size_t idx, uint32_t size)
 
+char * data (size_t idx)
 
+ + + + + + + +

+Private Attributes

+std::vector< DeviceBuffer< char > > buffers_
 
+std::vector< size_t > limits_
 
+SharedArray< uint32_t > pos_
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1ParallelEngine-members.html b/classgrape_1_1cuda_1_1ParallelEngine-members.html new file mode 100644 index 00000000..23ecfb2b --- /dev/null +++ b/classgrape_1_1cuda_1_1ParallelEngine-members.html @@ -0,0 +1,106 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::ParallelEngine Member List
+
+
+ +

This is the complete list of members for grape::cuda::ParallelEngine, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + +
__calc_prefix_sum__(const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws) (defined in grape::cuda::ParallelEngine)grape::cuda::ParallelEngineinline
degree_ (defined in grape::cuda::ParallelEngine)grape::cuda::ParallelEngineprivate
ForEachEdge(const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, ASSIGN_OP assign_op, EDGE_OP op, LoadBalancing lb) (defined in grape::cuda::ParallelEngine)grape::cuda::ParallelEngineinline
ForEachEdgeCM(const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, ASSIGN_OP assign_op, EDGE_OP op) (defined in grape::cuda::ParallelEngine)grape::cuda::ParallelEngineinline
ForEachEdgeCMOld(const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, ASSIGN_OP assign_op, EDGE_OP op) (defined in grape::cuda::ParallelEngine)grape::cuda::ParallelEngineinline
ForEachEdgeCTA(const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, ASSIGN_OP assign_op, EDGE_OP op) (defined in grape::cuda::ParallelEngine)grape::cuda::ParallelEngineinline
ForEachEdgeNone(const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, ASSIGN_OP assign_op, EDGE_OP op) (defined in grape::cuda::ParallelEngine)grape::cuda::ParallelEngineinline
ForEachEdgeStrict(const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, ASSIGN_OP assign_op, EDGE_OP op) (defined in grape::cuda::ParallelEngine)grape::cuda::ParallelEngineinline
ForEachEdgeWarp(const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, ASSIGN_OP assign_op, EDGE_OP op) (defined in grape::cuda::ParallelEngine)grape::cuda::ParallelEngineinline
ForEachIncomingEdge(const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, ASSIGN_OP assign_op, EDGE_OP op, LoadBalancing lb) (defined in grape::cuda::ParallelEngine)grape::cuda::ParallelEngineinline
ForEachIncomingEdge(const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, EDGE_OP op, LoadBalancing lb) (defined in grape::cuda::ParallelEngine)grape::cuda::ParallelEngineinline
ForEachIncomingInnerVertexEdge(const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, ASSIGN_OP assign_op, EDGE_OP op, LoadBalancing lb) (defined in grape::cuda::ParallelEngine)grape::cuda::ParallelEngineinline
ForEachIncomingInnerVertexEdge(const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, EDGE_OP op, LoadBalancing lb) (defined in grape::cuda::ParallelEngine)grape::cuda::ParallelEngineinline
ForEachIncomingOuterVertexEdge(const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, ASSIGN_OP assign_op, EDGE_OP op, LoadBalancing lb) (defined in grape::cuda::ParallelEngine)grape::cuda::ParallelEngineinline
ForEachIncomingOuterVertexEdge(const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, EDGE_OP op, LoadBalancing lb) (defined in grape::cuda::ParallelEngine)grape::cuda::ParallelEngineinline
ForEachOutgoingEdge(const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, ASSIGN_OP assign_op, EDGE_OP op, LoadBalancing lb) (defined in grape::cuda::ParallelEngine)grape::cuda::ParallelEngineinline
ForEachOutgoingEdge(const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, EDGE_OP op, LoadBalancing lb) (defined in grape::cuda::ParallelEngine)grape::cuda::ParallelEngineinline
ForEachOutgoingInnerVertexEdge(const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, ASSIGN_OP assign_op, EDGE_OP op, LoadBalancing lb) (defined in grape::cuda::ParallelEngine)grape::cuda::ParallelEngineinline
ForEachOutgoingInnerVertexEdge(const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, EDGE_OP op, LoadBalancing lb) (defined in grape::cuda::ParallelEngine)grape::cuda::ParallelEngineinline
ForEachOutgoingOuterVertexEdge(const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, ASSIGN_OP assign_op, EDGE_OP op, LoadBalancing lb) (defined in grape::cuda::ParallelEngine)grape::cuda::ParallelEngineinline
ForEachOutgoingOuterVertexEdge(const Stream &stream, const FRAG_T &dev_frag, const WORK_SOURCE_T &ws, EDGE_OP op, LoadBalancing lb) (defined in grape::cuda::ParallelEngine)grape::cuda::ParallelEngineinline
ParallelEngine() (defined in grape::cuda::ParallelEngine)grape::cuda::ParallelEngineinline
prefix_sum_ (defined in grape::cuda::ParallelEngine)grape::cuda::ParallelEngineprivate
~ParallelEngine() (defined in grape::cuda::ParallelEngine)grape::cuda::ParallelEngineinlinevirtual
+ + + + diff --git a/classgrape_1_1cuda_1_1ParallelEngine.html b/classgrape_1_1cuda_1_1ParallelEngine.html new file mode 100644 index 00000000..70d56c36 --- /dev/null +++ b/classgrape_1_1cuda_1_1ParallelEngine.html @@ -0,0 +1,176 @@ + + + + + + + +libgrape-lite: grape::cuda::ParallelEngine Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
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_
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1Queue-members.html b/classgrape_1_1cuda_1_1Queue-members.html new file mode 100644 index 00000000..8efe1c58 --- /dev/null +++ b/classgrape_1_1cuda_1_1Queue-members.html @@ -0,0 +1,94 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::Queue< T, SIZE_T > Member List
+
+
+ +

This is the complete list of members for grape::cuda::Queue< T, SIZE_T >, including all inherited members.

+ + + + + + + + + + + + + +
Clear() (defined in grape::cuda::Queue< T, SIZE_T >)grape::cuda::Queue< T, SIZE_T >inline
Clear(const Stream &stream) (defined in grape::cuda::Queue< T, SIZE_T >)grape::cuda::Queue< T, SIZE_T >inline
counter_ (defined in grape::cuda::Queue< T, SIZE_T >)grape::cuda::Queue< T, SIZE_T >private
data() (defined in grape::cuda::Queue< T, SIZE_T >)grape::cuda::Queue< T, SIZE_T >inline
data() const (defined in grape::cuda::Queue< T, SIZE_T >)grape::cuda::Queue< T, SIZE_T >inline
data_ (defined in grape::cuda::Queue< T, SIZE_T >)grape::cuda::Queue< T, SIZE_T >private
device_t typedef (defined in grape::cuda::Queue< T, SIZE_T >)grape::cuda::Queue< T, SIZE_T >
DeviceObject() (defined in grape::cuda::Queue< T, SIZE_T >)grape::cuda::Queue< T, SIZE_T >inline
Init(SIZE_T capacity) (defined in grape::cuda::Queue< T, SIZE_T >)grape::cuda::Queue< T, SIZE_T >inline
size() const (defined in grape::cuda::Queue< T, SIZE_T >)grape::cuda::Queue< T, SIZE_T >inline
size(const Stream &stream) (defined in grape::cuda::Queue< T, SIZE_T >)grape::cuda::Queue< T, SIZE_T >inline
Swap(Queue< T, SIZE_T > &rhs) (defined in grape::cuda::Queue< T, SIZE_T >)grape::cuda::Queue< T, SIZE_T >inline
+ + + + diff --git a/classgrape_1_1cuda_1_1Queue.html b/classgrape_1_1cuda_1_1Queue.html new file mode 100644 index 00000000..0c92f231 --- /dev/null +++ b/classgrape_1_1cuda_1_1Queue.html @@ -0,0 +1,130 @@ + + + + + + + +libgrape-lite: grape::cuda::Queue< T, SIZE_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::Queue< T, SIZE_T > Class Template Reference
+
+
+ + + + +

+Public Types

+using device_t = dev::Queue< T, SIZE_T >
 
+ + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+void Init (SIZE_T capacity)
 
+void Clear ()
 
+void Clear (const Stream &stream)
 
+size_t size () const
 
+size_t size (const Stream &stream)
 
+T * data ()
 
+const T * data () const
 
+device_t DeviceObject ()
 
+void Swap (Queue< T, SIZE_T > &rhs)
 
+ + + + + +

+Private Attributes

+thrust::device_vector< T > data_
 
+SharedValue< SIZE_T > counter_ {}
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1SharedArray-members.html b/classgrape_1_1cuda_1_1SharedArray-members.html new file mode 100644 index 00000000..3d3b6fbf --- /dev/null +++ b/classgrape_1_1cuda_1_1SharedArray-members.html @@ -0,0 +1,105 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::SharedArray< T > Member List
+
+
+ +

This is the complete list of members for grape::cuda::SharedArray< T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + +
Assign(const SharedArray< T > &rhs) (defined in grape::cuda::SharedArray< T >)grape::cuda::SharedArray< T >inline
Assign(const SharedArray< T > &rhs, const Stream &stream) (defined in grape::cuda::SharedArray< T >)grape::cuda::SharedArray< T >inline
d_buffer_ (defined in grape::cuda::SharedArray< T >)grape::cuda::SharedArray< T >private
data() (defined in grape::cuda::SharedArray< T >)grape::cuda::SharedArray< T >inline
data() const (defined in grape::cuda::SharedArray< T >)grape::cuda::SharedArray< T >inline
data(size_t idx) (defined in grape::cuda::SharedArray< T >)grape::cuda::SharedArray< T >inline
data(size_t idx) const (defined in grape::cuda::SharedArray< T >)grape::cuda::SharedArray< T >inline
device_t typedef (defined in grape::cuda::SharedArray< T >)grape::cuda::SharedArray< T >
fill(const T &t) (defined in grape::cuda::SharedArray< T >)grape::cuda::SharedArray< T >inline
fill(const T &t, const Stream &stream) (defined in grape::cuda::SharedArray< T >)grape::cuda::SharedArray< T >inline
get(size_t idx) (defined in grape::cuda::SharedArray< T >)grape::cuda::SharedArray< T >inline
get(size_t idx) const (defined in grape::cuda::SharedArray< T >)grape::cuda::SharedArray< T >inline
get(size_t idx, const Stream &stream) const (defined in grape::cuda::SharedArray< T >)grape::cuda::SharedArray< T >inline
get(const Stream &stream) const (defined in grape::cuda::SharedArray< T >)grape::cuda::SharedArray< T >inline
get(const Stream &stream) (defined in grape::cuda::SharedArray< T >)grape::cuda::SharedArray< T >inline
h_buffer_ (defined in grape::cuda::SharedArray< T >)grape::cuda::SharedArray< T >private
host_t typedef (defined in grape::cuda::SharedArray< T >)grape::cuda::SharedArray< T >
resize(size_t size) (defined in grape::cuda::SharedArray< T >)grape::cuda::SharedArray< T >inline
set(size_t idx, const T &t) (defined in grape::cuda::SharedArray< T >)grape::cuda::SharedArray< T >inline
set(size_t idx, const T &t, const Stream &stream) (defined in grape::cuda::SharedArray< T >)grape::cuda::SharedArray< T >inline
SharedArray()=default (defined in grape::cuda::SharedArray< T >)grape::cuda::SharedArray< T >
SharedArray(size_t size) (defined in grape::cuda::SharedArray< T >)grape::cuda::SharedArray< T >inlineexplicit
Swap(SharedArray< T > &rhs) (defined in grape::cuda::SharedArray< T >)grape::cuda::SharedArray< T >inline
+ + + + diff --git a/classgrape_1_1cuda_1_1SharedArray.html b/classgrape_1_1cuda_1_1SharedArray.html new file mode 100644 index 00000000..3cd5ec3e --- /dev/null +++ b/classgrape_1_1cuda_1_1SharedArray.html @@ -0,0 +1,160 @@ + + + + + + + +libgrape-lite: grape::cuda::SharedArray< T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::SharedArray< T > Class Template Reference
+
+
+ + + + + + +

+Public Types

+using device_t = thrust::device_vector< T >
 
+using host_t = pinned_vector< T >
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

SharedArray (size_t size)
 
+void resize (size_t size)
 
+void set (size_t idx, const T &t)
 
+void set (size_t idx, const T &t, const Stream &stream)
 
+void fill (const T &t)
 
+void fill (const T &t, const Stream &stream)
 
+thrust::device_vector< T >::reference get (size_t idx)
 
+thrust::device_vector< T >::const_reference get (size_t idx) const
 
+T get (size_t idx, const Stream &stream) const
 
+const host_t & get (const Stream &stream) const
 
+host_t & get (const Stream &stream)
 
+T * data ()
 
+const T * data () const
 
+T * data (size_t idx)
 
+const T * data (size_t idx) const
 
+void Assign (const SharedArray< T > &rhs)
 
+void Assign (const SharedArray< T > &rhs, const Stream &stream)
 
+void Swap (SharedArray< T > &rhs)
 
+ + + + + +

+Private Attributes

+device_t d_buffer_
 
+host_t h_buffer_
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1SharedValue-members.html b/classgrape_1_1cuda_1_1SharedValue-members.html new file mode 100644 index 00000000..23051c0c --- /dev/null +++ b/classgrape_1_1cuda_1_1SharedValue-members.html @@ -0,0 +1,95 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::SharedValue< T > Member List
+
+
+ +

This is the complete list of members for grape::cuda::SharedValue< T >, including all inherited members.

+ + + + + + + + + + + + + + +
Assign(const SharedValue< T > &rhs) (defined in grape::cuda::SharedValue< T >)grape::cuda::SharedValue< T >inline
Assign(const SharedValue< T > &rhs, const Stream &stream) (defined in grape::cuda::SharedValue< T >)grape::cuda::SharedValue< T >inline
d_buffer_ (defined in grape::cuda::SharedValue< T >)grape::cuda::SharedValue< T >private
data() (defined in grape::cuda::SharedValue< T >)grape::cuda::SharedValue< T >inline
data() const (defined in grape::cuda::SharedValue< T >)grape::cuda::SharedValue< T >inline
get() (defined in grape::cuda::SharedValue< T >)grape::cuda::SharedValue< T >inline
get() const (defined in grape::cuda::SharedValue< T >)grape::cuda::SharedValue< T >inline
get(const Stream &stream) const (defined in grape::cuda::SharedValue< T >)grape::cuda::SharedValue< T >inline
h_buffer_ (defined in grape::cuda::SharedValue< T >)grape::cuda::SharedValue< T >private
set(const T &t) (defined in grape::cuda::SharedValue< T >)grape::cuda::SharedValue< T >inline
set(const T &t, const Stream &stream) (defined in grape::cuda::SharedValue< T >)grape::cuda::SharedValue< T >inline
SharedValue() (defined in grape::cuda::SharedValue< T >)grape::cuda::SharedValue< T >inline
Swap(SharedValue< T > &rhs) (defined in grape::cuda::SharedValue< T >)grape::cuda::SharedValue< T >inline
+ + + + diff --git a/classgrape_1_1cuda_1_1SharedValue.html b/classgrape_1_1cuda_1_1SharedValue.html new file mode 100644 index 00000000..6f03a742 --- /dev/null +++ b/classgrape_1_1cuda_1_1SharedValue.html @@ -0,0 +1,126 @@ + + + + + + + +libgrape-lite: grape::cuda::SharedValue< T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::SharedValue< T > Class Template Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+void set (const T &t)
 
+void set (const T &t, const Stream &stream)
 
+thrust::device_vector< T >::reference get ()
 
+thrust::device_vector< T >::const_reference get () const
 
+T get (const Stream &stream) const
 
+T * data ()
 
+const T * data () const
 
+void Assign (const SharedValue< T > &rhs)
 
+void Assign (const SharedValue< T > &rhs, const Stream &stream)
 
+void Swap (SharedValue< T > &rhs)
 
+ + + + + +

+Private Attributes

+thrust::device_vector< T > d_buffer_
 
+pinned_vector< T > h_buffer_
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1Stream-members.html b/classgrape_1_1cuda_1_1Stream-members.html new file mode 100644 index 00000000..d8b8998e --- /dev/null +++ b/classgrape_1_1cuda_1_1Stream-members.html @@ -0,0 +1,92 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::Stream Member List
+
+
+ +

This is the complete list of members for grape::cuda::Stream, including all inherited members.

+ + + + + + + + + + + +
cuda_stream() const (defined in grape::cuda::Stream)grape::cuda::Streaminline
cuda_stream_ (defined in grape::cuda::Stream)grape::cuda::Streamprivate
operator=(const Stream &other)=delete (defined in grape::cuda::Stream)grape::cuda::Stream
operator=(Stream &&other) noexcept (defined in grape::cuda::Stream)grape::cuda::Streaminline
priority_ (defined in grape::cuda::Stream)grape::cuda::Streamprivate
Stream(StreamPriority priority=StreamPriority::kDefault) (defined in grape::cuda::Stream)grape::cuda::Streaminlineexplicit
Stream(const Stream &other)=delete (defined in grape::cuda::Stream)grape::cuda::Stream
Stream(Stream &&other) noexcept (defined in grape::cuda::Stream)grape::cuda::Streaminline
Sync() const (defined in grape::cuda::Stream)grape::cuda::Streaminline
~Stream() (defined in grape::cuda::Stream)grape::cuda::Streaminline
+ + + + diff --git a/classgrape_1_1cuda_1_1Stream.html b/classgrape_1_1cuda_1_1Stream.html new file mode 100644 index 00000000..b5957761 --- /dev/null +++ b/classgrape_1_1cuda_1_1Stream.html @@ -0,0 +1,117 @@ + + + + + + + +libgrape-lite: grape::cuda::Stream Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::Stream Class Reference
+
+
+ + + + + + + + + + + + + + + + +

+Public Member Functions

Stream (StreamPriority priority=StreamPriority::kDefault)
 
Stream (const Stream &other)=delete
 
Stream (Stream &&other) noexcept
 
+Streamoperator= (const Stream &other)=delete
 
+Streamoperator= (Stream &&other) noexcept
 
+void Sync () const
 
+cudaStream_t cuda_stream () const
 
+ + + + + +

+Private Attributes

+StreamPriority priority_
 
+cudaStream_t cuda_stream_ {}
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1VertexArray-members.html b/classgrape_1_1cuda_1_1VertexArray-members.html new file mode 100644 index 00000000..176a6ac3 --- /dev/null +++ b/classgrape_1_1cuda_1_1VertexArray-members.html @@ -0,0 +1,154 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::VertexArray< T, VID_T > Member List
+
+
+ +

This is the complete list of members for grape::cuda::VertexArray< T, VID_T >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
__alloc() noexcept (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inlineprivate
__alloc() const noexcept (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inlineprivate
__alloc_traits typedef (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >
__base (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >private
__construct_at_end(size_type __n) (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inlineprivate
__construct_at_end(size_type __n, const_reference __x) (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inlineprivate
__construct_at_end(_ForwardIterator __first, _ForwardIterator __last, size_type __n) (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inlineprivate
__destruct_at_end(pointer __new_last) (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inlineprivate
__destruct_at_end(pointer __new_last, pointer __end) (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inlineprivate
__range_check(size_type __n) const noexcept (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inlineprivate
__vallocate(size_type __n) (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inlineprivate
__vdeallocate() (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inlineprivate
__vdeallocate(pointer __begin, size_type __size) (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inlineprivate
allocator_type typedef (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >
Array() noexcept (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inline
Array(const allocator_type &__a) noexcept (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inlineexplicit
Array(size_type __n, const allocator_type &__a=allocator_type()) (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inlineexplicit
Array(size_type __n, const value_type &__x, const allocator_type &__a=allocator_type()) (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inline
Array(const Array &__x) (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inline
Array(Array &&__x) noexcept (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inline
Array(const Array &__x, const allocator_type &__a) (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inline
Array(Array &&__x, const allocator_type &__a) (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inline
at(size_type __n) noexcept (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inline
at(size_type __n) const noexcept (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inline
Base typedef (defined in grape::cuda::VertexArray< T, VID_T >)grape::cuda::VertexArray< T, VID_T >private
begin() noexcept (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inline
begin() const noexcept (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inline
clear() noexcept (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inline
Clear() (defined in grape::cuda::VertexArray< T, VID_T >)grape::cuda::VertexArray< T, VID_T >inline
const_iterator typedef (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >
const_pointer typedef (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >
const_reference typedef (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >
D2H() (defined in grape::cuda::VertexArray< T, VID_T >)grape::cuda::VertexArray< T, VID_T >inline
D2H(const Stream &stream) (defined in grape::cuda::VertexArray< T, VID_T >)grape::cuda::VertexArray< T, VID_T >inline
d_data_ (defined in grape::cuda::VertexArray< T, VID_T >)grape::cuda::VertexArray< T, VID_T >private
data() noexcept (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inline
data() const noexcept (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inline
DeviceObject() (defined in grape::cuda::VertexArray< T, VID_T >)grape::cuda::VertexArray< T, VID_T >inline
empty() const noexcept (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inline
end() noexcept (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inline
end() const noexcept (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inline
fake_start_ (defined in grape::cuda::VertexArray< T, VID_T >)grape::cuda::VertexArray< T, VID_T >private
get_allocator() const noexcept (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inline
GetVertexRange() const (defined in grape::cuda::VertexArray< T, VID_T >)grape::cuda::VertexArray< T, VID_T >inline
H2D() (defined in grape::cuda::VertexArray< T, VID_T >)grape::cuda::VertexArray< T, VID_T >inline
H2D(const Stream &stream) (defined in grape::cuda::VertexArray< T, VID_T >)grape::cuda::VertexArray< T, VID_T >inline
Init(const VertexRange< VID_T > &range) (defined in grape::cuda::VertexArray< T, VID_T >)grape::cuda::VertexArray< T, VID_T >inline
Init(const VertexRange< VID_T > &range, const T &value) (defined in grape::cuda::VertexArray< T, VID_T >)grape::cuda::VertexArray< T, VID_T >inline
iterator typedef (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >
operator=(const Array &__x) (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inline
operator=(Array &&__x) (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inline
operator[](Vertex< VID_T > &loc) (defined in grape::cuda::VertexArray< T, VID_T >)grape::cuda::VertexArray< T, VID_T >inline
operator[](const Vertex< VID_T > &loc) const (defined in grape::cuda::VertexArray< T, VID_T >)grape::cuda::VertexArray< T, VID_T >inline
operator[](size_type __n) noexcept (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inline
operator[](size_type __n) const noexcept (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inline
pointer typedef (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >
range_ (defined in grape::cuda::VertexArray< T, VID_T >)grape::cuda::VertexArray< T, VID_T >private
reference typedef (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >
resize(size_t size) (defined in grape::cuda::VertexArray< T, VID_T >)grape::cuda::VertexArray< T, VID_T >inline
resize(size_type __new_size, const value_type &__x) (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inline
SetValue(VertexRange< VID_T > &range, const T &value) (defined in grape::cuda::VertexArray< T, VID_T >)grape::cuda::VertexArray< T, VID_T >inline
SetValue(const T &value) (defined in grape::cuda::VertexArray< T, VID_T >)grape::cuda::VertexArray< T, VID_T >inline
size() const noexcept (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inline
size_type typedef (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >
Swap(VertexArray &rhs) (defined in grape::cuda::VertexArray< T, VID_T >)grape::cuda::VertexArray< T, VID_T >inline
swap(Array &__x) noexcept (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inline
value_type typedef (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >
VertexArray() (defined in grape::cuda::VertexArray< T, VID_T >)grape::cuda::VertexArray< T, VID_T >inline
VertexArray(const VertexRange< VID_T > &range) (defined in grape::cuda::VertexArray< T, VID_T >)grape::cuda::VertexArray< T, VID_T >inlineexplicit
VertexArray(const VertexRange< VID_T > &range, const T &value) (defined in grape::cuda::VertexArray< T, VID_T >)grape::cuda::VertexArray< T, VID_T >inline
~Array() noexcept (defined in grape::Array< T, grape::Allocator< T > >)grape::Array< T, grape::Allocator< T > >inline
~VertexArray()=default (defined in grape::cuda::VertexArray< T, VID_T >)grape::cuda::VertexArray< T, VID_T >
+ + + + diff --git a/classgrape_1_1cuda_1_1VertexArray.html b/classgrape_1_1cuda_1_1VertexArray.html new file mode 100644 index 00000000..270ba912 --- /dev/null +++ b/classgrape_1_1cuda_1_1VertexArray.html @@ -0,0 +1,279 @@ + + + + + + + +libgrape-lite: grape::cuda::VertexArray< T, VID_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::VertexArray< T, VID_T > Class Template Reference
+
+
+
+Inheritance diagram for grape::cuda::VertexArray< T, VID_T >:
+
+
+ + +grape::Array< T, grape::Allocator< T > > + +
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

VertexArray (const VertexRange< VID_T > &range)
 
VertexArray (const VertexRange< VID_T > &range, const T &value)
 
+void Init (const VertexRange< VID_T > &range)
 
+void Init (const VertexRange< VID_T > &range, const T &value)
 
+void SetValue (VertexRange< VID_T > &range, const T &value)
 
+void SetValue (const T &value)
 
+T & operator[] (Vertex< VID_T > &loc)
 
+const T & operator[] (const Vertex< VID_T > &loc) const
 
+void resize (size_t size)
 
+void Swap (VertexArray &rhs)
 
+void Clear ()
 
+const VertexRange< VID_T > & GetVertexRange () const
 
+dev::VertexArray< T, VID_T > DeviceObject ()
 
+void H2D ()
 
+void H2D (const Stream &stream)
 
+void D2H ()
 
+void D2H (const Stream &stream)
 
- Public Member Functions inherited from grape::Array< T, grape::Allocator< T > >
+allocator_type get_allocator () const noexcept
 
Array (const allocator_type &__a) noexcept
 
Array (size_type __n, const allocator_type &__a=allocator_type())
 
Array (size_type __n, const value_type &__x, const allocator_type &__a=allocator_type())
 
Array (const Array &__x)
 
Array (Array &&__x) noexcept
 
Array (const Array &__x, const allocator_type &__a)
 
Array (Array &&__x, const allocator_type &__a)
 
+Arrayoperator= (const Array &__x)
 
+Arrayoperator= (Array &&__x)
 
+size_type size () const noexcept
 
+void resize (size_type __new_size)
 
+void resize (size_type __new_size, const value_type &__x)
 
+bool empty () const noexcept
 
+reference operator[] (size_type __n) noexcept
 
+const_reference operator[] (size_type __n) const noexcept
 
+reference at (size_type __n) noexcept
 
+const_reference at (size_type __n) const noexcept
 
+pointer data () noexcept
 
+const_pointer data () const noexcept
 
+iterator begin () noexcept
 
+const_iterator begin () const noexcept
 
+iterator end () noexcept
 
+const_iterator end () const noexcept
 
+void swap (Array &__x) noexcept
 
+void clear () noexcept
 
+ + + +

+Private Types

+using Base = grape::Array< T, grape::Allocator< T > >
 
+ + + + + + + +

+Private Attributes

+VertexRange< VID_T > range_
 
+T * fake_start_
 
+thrust::device_vector< T > d_data_
 
+ + + + + + + + + + + + + + + + + + + + + + +

+Additional Inherited Members

- Public Types inherited from grape::Array< T, grape::Allocator< T > >
+using pointer = T *
 
+using const_pointer = const T *
 
+using reference = T &
 
+using const_reference = const T &
 
+using size_type = size_t
 
+using value_type = T
 
+using allocator_type = grape::Allocator< T >
 
+using iterator = pointer
 
+using const_iterator = const_pointer
 
+using __alloc_traits = std::allocator_traits< grape::Allocator< T > >
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1VertexArray.png b/classgrape_1_1cuda_1_1VertexArray.png new file mode 100644 index 0000000000000000000000000000000000000000..bb0ed207d51949ca517e24876f5cfc34dd729a71 GIT binary patch literal 887 zcmV--1Bm>IP)002-30{{R3_P)ak0000OP)t-s|Ns90 z008Lh^>vTJkN^MxkN^Mxkifve1&Q1r00008bW%=J0RR90|NsC0)yh;d00099Nkl{G}546!8yXuFF9+5h}v;Xp~w+!RdTQB>-5YUL5)s5demq8?bccsMXA|yqtqk&deCEVU!SwlUkB|Xr*43W$`9}Khguhom^5s z9v-n>Qm@bsv3*j{8V=w^lN!K>CN+Q$O=XEfB>r}lVYlQT+rLLHYsY&(iE%n*HF3b2~4IkLo zxrWE;yM0V8P6JQB)ipd8W1A3W3s*I~LmfLgIorEOc5^&mJGn* + + + + + + +libgrape-lite: grape::cuda::dev::Bitset< SIZE_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::dev::Bitset< SIZE_T > Class Template Reference
+
+
+
+ + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1Bitset_3_01uint32__t_01_4-members.html b/classgrape_1_1cuda_1_1dev_1_1Bitset_3_01uint32__t_01_4-members.html new file mode 100644 index 00000000..38e2689d --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1Bitset_3_01uint32__t_01_4-members.html @@ -0,0 +1,95 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::dev::Bitset< uint32_t > Member List
+
+
+ +

This is the complete list of members for grape::cuda::dev::Bitset< uint32_t >, including all inherited members.

+ + + + + + + + + + + + + + +
bit_offset(uint32_t n) const (defined in grape::cuda::dev::Bitset< uint32_t >)grape::cuda::dev::Bitset< uint32_t >inlineprivate
Bitset(ArrayView< uint64_t > data, uint32_t size, uint32_t *positive_count) (defined in grape::cuda::dev::Bitset< uint32_t >)grape::cuda::dev::Bitset< uint32_t >inline
clear() (defined in grape::cuda::dev::Bitset< uint32_t >)grape::cuda::dev::Bitset< uint32_t >inline
data_ (defined in grape::cuda::dev::Bitset< uint32_t >)grape::cuda::dev::Bitset< uint32_t >private
get_bit(uint32_t pos) const (defined in grape::cuda::dev::Bitset< uint32_t >)grape::cuda::dev::Bitset< uint32_t >inline
get_positive_count() const (defined in grape::cuda::dev::Bitset< uint32_t >)grape::cuda::dev::Bitset< uint32_t >inline
get_size() const (defined in grape::cuda::dev::Bitset< uint32_t >)grape::cuda::dev::Bitset< uint32_t >inline
kBitsPerWord (defined in grape::cuda::dev::Bitset< uint32_t >)grape::cuda::dev::Bitset< uint32_t >privatestatic
positive_count_ (defined in grape::cuda::dev::Bitset< uint32_t >)grape::cuda::dev::Bitset< uint32_t >private
set_bit(uint32_t pos) (defined in grape::cuda::dev::Bitset< uint32_t >)grape::cuda::dev::Bitset< uint32_t >inline
set_bit_atomic(uint32_t pos) (defined in grape::cuda::dev::Bitset< uint32_t >)grape::cuda::dev::Bitset< uint32_t >inline
size_ (defined in grape::cuda::dev::Bitset< uint32_t >)grape::cuda::dev::Bitset< uint32_t >private
word_offset(uint32_t n) const (defined in grape::cuda::dev::Bitset< uint32_t >)grape::cuda::dev::Bitset< uint32_t >inlineprivate
+ + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1Bitset_3_01uint32__t_01_4.html b/classgrape_1_1cuda_1_1dev_1_1Bitset_3_01uint32__t_01_4.html new file mode 100644 index 00000000..ea200262 --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1Bitset_3_01uint32__t_01_4.html @@ -0,0 +1,137 @@ + + + + + + + +libgrape-lite: grape::cuda::dev::Bitset< uint32_t > Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::dev::Bitset< uint32_t > Class Reference
+
+
+ + + + + + + + + + + + + + + + +

+Public Member Functions

+__host__ __device__ Bitset (ArrayView< uint64_t > data, uint32_t size, uint32_t *positive_count)
 
+__device__ __forceinline__ bool set_bit (uint32_t pos)
 
+__device__ __forceinline__ bool set_bit_atomic (uint32_t pos)
 
+__device__ __forceinline__ void clear ()
 
+__device__ __forceinline__ bool get_bit (uint32_t pos) const
 
+__device__ __forceinline__ uint32_t get_size () const
 
+__device__ __forceinline__ uint32_t get_positive_count () const
 
+ + + + + +

+Private Member Functions

+__device__ __forceinline__ uint32_t word_offset (uint32_t n) const
 
+__device__ __forceinline__ uint32_t bit_offset (uint32_t n) const
 
+ + + + + + + +

+Private Attributes

+ArrayView< uint32_t > data_
 
+uint32_t size_ {}
 
+uint32_t * positive_count_ {}
 
+ + + +

+Static Private Attributes

+static const uint32_t kBitsPerWord = 32
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1Bitset_3_01uint64__t_01_4-members.html b/classgrape_1_1cuda_1_1dev_1_1Bitset_3_01uint64__t_01_4-members.html new file mode 100644 index 00000000..11c7cb2b --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1Bitset_3_01uint64__t_01_4-members.html @@ -0,0 +1,95 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::dev::Bitset< uint64_t > Member List
+
+
+ +

This is the complete list of members for grape::cuda::dev::Bitset< uint64_t >, including all inherited members.

+ + + + + + + + + + + + + + +
bit_offset(uint64_t n) const (defined in grape::cuda::dev::Bitset< uint64_t >)grape::cuda::dev::Bitset< uint64_t >inlineprivate
Bitset(ArrayView< uint64_t > data, uint64_t size, uint64_t *positive_count) (defined in grape::cuda::dev::Bitset< uint64_t >)grape::cuda::dev::Bitset< uint64_t >inline
clear() (defined in grape::cuda::dev::Bitset< uint64_t >)grape::cuda::dev::Bitset< uint64_t >inline
data_ (defined in grape::cuda::dev::Bitset< uint64_t >)grape::cuda::dev::Bitset< uint64_t >private
get_bit(uint64_t pos) const (defined in grape::cuda::dev::Bitset< uint64_t >)grape::cuda::dev::Bitset< uint64_t >inline
get_positive_count() const (defined in grape::cuda::dev::Bitset< uint64_t >)grape::cuda::dev::Bitset< uint64_t >inline
get_size() const (defined in grape::cuda::dev::Bitset< uint64_t >)grape::cuda::dev::Bitset< uint64_t >inline
kBitsPerWord (defined in grape::cuda::dev::Bitset< uint64_t >)grape::cuda::dev::Bitset< uint64_t >privatestatic
positive_count_ (defined in grape::cuda::dev::Bitset< uint64_t >)grape::cuda::dev::Bitset< uint64_t >private
set_bit(uint64_t pos) (defined in grape::cuda::dev::Bitset< uint64_t >)grape::cuda::dev::Bitset< uint64_t >inline
set_bit_atomic(uint64_t pos) (defined in grape::cuda::dev::Bitset< uint64_t >)grape::cuda::dev::Bitset< uint64_t >inline
size_ (defined in grape::cuda::dev::Bitset< uint64_t >)grape::cuda::dev::Bitset< uint64_t >private
word_offset(uint64_t n) const (defined in grape::cuda::dev::Bitset< uint64_t >)grape::cuda::dev::Bitset< uint64_t >inlineprivate
+ + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1Bitset_3_01uint64__t_01_4.html b/classgrape_1_1cuda_1_1dev_1_1Bitset_3_01uint64__t_01_4.html new file mode 100644 index 00000000..c4410d6f --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1Bitset_3_01uint64__t_01_4.html @@ -0,0 +1,137 @@ + + + + + + + +libgrape-lite: grape::cuda::dev::Bitset< uint64_t > Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::dev::Bitset< uint64_t > Class Reference
+
+
+ + + + + + + + + + + + + + + + +

+Public Member Functions

+__host__ __device__ Bitset (ArrayView< uint64_t > data, uint64_t size, uint64_t *positive_count)
 
+__device__ __forceinline__ bool set_bit (uint64_t pos)
 
+__device__ __forceinline__ bool set_bit_atomic (uint64_t pos)
 
+__device__ __forceinline__ void clear ()
 
+__device__ __forceinline__ bool get_bit (uint64_t pos) const
 
+__device__ __forceinline__ uint64_t get_size () const
 
+__device__ __forceinline__ uint64_t get_positive_count () const
 
+ + + + + +

+Private Member Functions

+__device__ __forceinline__ uint64_t word_offset (uint64_t n) const
 
+__device__ __forceinline__ uint64_t bit_offset (uint64_t n) const
 
+ + + + + + + +

+Private Attributes

+ArrayView< uint64_t > data_
 
+uint64_t size_ {}
 
+uint64_t * positive_count_ {}
 
+ + + +

+Static Private Attributes

+static const uint32_t kBitsPerWord = 64
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1COOFragment-members.html b/classgrape_1_1cuda_1_1dev_1_1COOFragment-members.html new file mode 100644 index 00000000..832f7f05 --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1COOFragment-members.html @@ -0,0 +1,96 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T > Member List
+
+
+ +

This is the complete list of members for grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >, including all inherited members.

+ + + + + + + + + + + + + + + +
COOFragment()=default (defined in grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >)grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >
COOFragment(ArrayView< edge_t > edges) (defined in grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >)grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >inline
edata_t typedef (defined in grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >)grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >
edge(size_t eid) const (defined in grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >)grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >inline
edge(size_t eid) (defined in grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >)grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >inline
edge_t typedef (defined in grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >)grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >
edges_ (defined in grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >)grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >private
GetEdgeNum() const (defined in grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >)grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >inline
oid_t typedef (defined in grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >)grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >
operator[](size_t eid) const (defined in grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >)grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >inline
operator[](size_t eid) (defined in grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >)grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >inline
vdata_t typedef (defined in grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >)grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >
vertex_t typedef (defined in grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >)grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >
vid_t typedef (defined in grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >)grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >
+ + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1COOFragment.html b/classgrape_1_1cuda_1_1dev_1_1COOFragment.html new file mode 100644 index 00000000..a55bea7d --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1COOFragment.html @@ -0,0 +1,133 @@ + + + + + + + +libgrape-lite: grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T > Class Template Reference
+
+
+ + + + + + + + + + + + + + +

+Public Types

+using oid_t = OID_T
 
+using vid_t = VID_T
 
+using vdata_t = VDATA_T
 
+using edata_t = EDATA_T
 
+using vertex_t = Vertex< vid_t >
 
+using edge_t = Edge< vid_t, EDATA_T >
 
+ + + + + + + + + + + + + +

+Public Member Functions

+DEV_HOST COOFragment (ArrayView< edge_t > edges)
 
+DEV_INLINE const edge_tedge (size_t eid) const
 
+DEV_INLINE edge_tedge (size_t eid)
 
+DEV_INLINE edge_toperator[] (size_t eid) const
 
+DEV_INLINE edge_toperator[] (size_t eid)
 
+DEV_HOST_INLINE size_t GetEdgeNum () const
 
+ + + +

+Private Attributes

+ArrayView< edge_tedges_
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1DenseVertexSet-members.html b/classgrape_1_1cuda_1_1dev_1_1DenseVertexSet-members.html new file mode 100644 index 00000000..5b1af196 --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1DenseVertexSet-members.html @@ -0,0 +1,89 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::dev::DenseVertexSet< VID_T > Member List
+
+ + + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1DenseVertexSet.html b/classgrape_1_1cuda_1_1dev_1_1DenseVertexSet.html new file mode 100644 index 00000000..ce016148 --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1DenseVertexSet.html @@ -0,0 +1,111 @@ + + + + + + + +libgrape-lite: grape::cuda::dev::DenseVertexSet< VID_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::dev::DenseVertexSet< VID_T > Class Template Reference
+
+
+ + + + + + + + + + + + +

+Public Member Functions

DenseVertexSet (VID_T beg, const Bitset< VID_T > &bitset)
 
+DEV_INLINE bool Insert (Vertex< VID_T > v)
 
+DEV_INLINE bool Exist (Vertex< VID_T > v) const
 
+DEV_INLINE void Clear ()
 
+DEV_INLINE size_t Count ()
 
+ + + + + +

+Private Attributes

+VID_T beg_
 
+Bitset< VID_T > bitset_
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1DeviceFragment-members.html b/classgrape_1_1cuda_1_1dev_1_1DeviceFragment-members.html new file mode 100644 index 00000000..5942977c --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1DeviceFragment-members.html @@ -0,0 +1,164 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy > Member List
+
+
+ +

This is the complete list of members for grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >, including all inherited members.

+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
adj_list_t typedef (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >
const_adj_list_t typedef (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >
edata_t typedef (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >
fid_ (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >private
GetData(const vertex_t &v) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetFragId(const vertex_t &u) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetId(const vertex_t &v) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetIncomingAdjList(const vertex_t &v) (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetIncomingAdjList(const vertex_t &v) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetIncomingEdgeIndex(const nbr_t &nbr) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetIncomingEdgeIndex(const vertex_t &u, const nbr_t &nbr) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetIncomingInnerVertexAdjList(const vertex_t &v)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetIncomingInnerVertexAdjList(const vertex_t &v) constgrape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetIncomingOuterVertexAdjList(const vertex_t &v)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetIncomingOuterVertexAdjList(const vertex_t &v) constgrape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetInnerVertex(const OID_T &oid, vertex_t &v) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetInnerVertexGid(const vertex_t &v) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetInnerVertexId(const vertex_t &v) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetInnerVerticesNum() const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetLocalInDegree(const vertex_t &v) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetLocalOutDegree(const vertex_t &v) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetOuterVertex(const OID_T &oid, vertex_t &v) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetOuterVertexGid(const vertex_t &v) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetOuterVertexId(const vertex_t &v) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetOuterVerticesNum() const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetOutgoingAdjList(const vertex_t &v) (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetOutgoingAdjList(const vertex_t &v) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetOutgoingEdgeIndex(const nbr_t &nbr) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetOutgoingEdgeIndex(const vertex_t &u, const nbr_t &nbr) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetOutgoingInnerVertexAdjList(const vertex_t &v)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetOutgoingInnerVertexAdjList(const vertex_t &v) constgrape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetOutgoingOuterVertexAdjList(const vertex_t &v)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetOutgoingOuterVertexAdjList(const vertex_t &v) constgrape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
GetVertex(const OID_T &oid, vertex_t &v) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
Gid2Oid(const VID_T &gid) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
Gid2Vertex(const VID_T &gid, vertex_t &v) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
grape::cuda::HostFragment (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >friend
id_parser_ (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >private
idoffset_ (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >private
idst_ (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >private
ie_ (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >private
IEDests(const vertex_t &v) constgrape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
ienum_ (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >private
ieoffset_ (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >private
iespliters_ (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >private
InnerVertexGid2Vertex(const VID_T &gid, vertex_t &v) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
InnerVertices() const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
iodoffset_ (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >private
iodst_ (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >private
IOEDests(const vertex_t &v) constgrape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
IsInnerVertex(const vertex_t &v) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
IsOuterVertex(const vertex_t &v) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
ivnum_ (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >private
mirrors_of_frag_ (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >private
MirrorVertices(fid_t fid) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
nbr_t typedef (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >
odoffset_ (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >private
odst_ (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >private
oe_ (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >private
OEDests(const vertex_t &v) constgrape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
oenum_ (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >private
oeoffset_ (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >private
oespliters_ (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >private
Oid2Gid(const OID_T &oid, VID_T &gid) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
oid_t typedef (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >
outer_vertices_of_frag_ (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >private
OuterVertexGid2Vertex(const VID_T &gid, vertex_t &v) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
OuterVertices() const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
OuterVertices(fid_t fid) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
ovg2l_ (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >private
ovgid_ (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >private
ovnum_ (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >private
SetData(const vertex_t &v, const VDATA_T &val) (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
tvnum_ (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >private
vdata_ (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >private
vdata_t typedef (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >
Vertex2Gid(const vertex_t &v) const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
vertex_range_t typedef (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >
vertex_t typedef (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >
Vertices() const (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >inline
vid_t typedef (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >
vm_ (defined in grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >)grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >private
+ + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html b/classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html new file mode 100644 index 00000000..e304ffbd --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html @@ -0,0 +1,764 @@ + + + + + + + +libgrape-lite: grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy > Class Template Reference
+
+
+ + + + + + + + + + + + + + + + + + + + +

+Public Types

+using vertex_t = Vertex< VID_T >
 
+using nbr_t = Nbr< VID_T, EDATA_T >
 
+using vertex_range_t = VertexRange< VID_T >
 
+using adj_list_t = AdjList< VID_T, EDATA_T >
 
+using const_adj_list_t = ConstAdjList< VID_T, EDATA_T >
 
+using vid_t = VID_T
 
+using oid_t = OID_T
 
+using vdata_t = VDATA_T
 
+using edata_t = EDATA_T
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

+DEV_HOST_INLINE vertex_range_t Vertices () const
 
+DEV_HOST_INLINE vertex_range_t InnerVertices () const
 
+DEV_HOST_INLINE vertex_range_t OuterVertices () const
 
+DEV_INLINE vertex_range_t OuterVertices (fid_t fid) const
 
+DEV_INLINE ArrayView< vertex_tMirrorVertices (fid_t fid) const
 
+DEV_INLINE bool GetVertex (const OID_T &oid, vertex_t &v) const
 
+DEV_INLINE OID_T GetId (const vertex_t &v) const
 
+DEV_HOST_INLINE fid_t GetFragId (const vertex_t &u) const
 
+DEV_INLINE const VDATA_T & GetData (const vertex_t &v) const
 
+DEV_INLINE void SetData (const vertex_t &v, const VDATA_T &val)
 
+DEV_INLINE VID_T GetLocalOutDegree (const vertex_t &v) const
 
+DEV_INLINE VID_T GetLocalInDegree (const vertex_t &v) const
 
+DEV_INLINE bool Gid2Vertex (const VID_T &gid, vertex_t &v) const
 
+DEV_INLINE VID_T Vertex2Gid (const vertex_t &v) const
 
+DEV_HOST_INLINE VID_T GetInnerVerticesNum () const
 
+DEV_HOST_INLINE VID_T GetOuterVerticesNum () const
 
+DEV_HOST_INLINE bool IsInnerVertex (const vertex_t &v) const
 
+DEV_HOST_INLINE bool IsOuterVertex (const vertex_t &v) const
 
+DEV_INLINE bool GetInnerVertex (const OID_T &oid, vertex_t &v) const
 
+DEV_INLINE bool GetOuterVertex (const OID_T &oid, vertex_t &v) const
 
+DEV_INLINE OID_T GetInnerVertexId (const vertex_t &v) const
 
+DEV_INLINE OID_T GetOuterVertexId (const vertex_t &v) const
 
+DEV_INLINE OID_T Gid2Oid (const VID_T &gid) const
 
+DEV_INLINE bool Oid2Gid (const OID_T &oid, VID_T &gid) const
 
+DEV_HOST_INLINE bool InnerVertexGid2Vertex (const VID_T &gid, vertex_t &v) const
 
+DEV_INLINE bool OuterVertexGid2Vertex (const VID_T &gid, vertex_t &v) const
 
+DEV_INLINE VID_T GetOuterVertexGid (const vertex_t &v) const
 
+DEV_HOST_INLINE VID_T GetInnerVertexGid (const vertex_t &v) const
 
DEV_INLINE DestList IEDests (const vertex_t &v) const
 Return the incoming edge destination fragment ID list of a inner vertex. More...
 
DEV_INLINE DestList OEDests (const vertex_t &v) const
 Return the outgoing edge destination fragment ID list of a Vertex. More...
 
DEV_INLINE DestList IOEDests (const vertex_t &v) const
 Return the edge destination fragment ID list of a inner vertex. More...
 
+DEV_INLINE adj_list_t GetIncomingAdjList (const vertex_t &v)
 
+DEV_INLINE const_adj_list_t GetIncomingAdjList (const vertex_t &v) const
 
DEV_INLINE adj_list_t GetIncomingInnerVertexAdjList (const vertex_t &v)
 Returns the incoming adjacent inner vertices of v. More...
 
DEV_INLINE const_adj_list_t GetIncomingInnerVertexAdjList (const vertex_t &v) const
 Returns the incoming adjacent inner vertices of v. More...
 
DEV_INLINE adj_list_t GetIncomingOuterVertexAdjList (const vertex_t &v)
 Returns the incoming adjacent outer vertices of v. More...
 
DEV_INLINE const_adj_list_t GetIncomingOuterVertexAdjList (const vertex_t &v) const
 Returns the incoming adjacent outer vertices of v. More...
 
DEV_INLINE adj_list_t GetOutgoingInnerVertexAdjList (const vertex_t &v)
 Returns the outgoing adjacent inner vertices of v. More...
 
DEV_INLINE const_adj_list_t GetOutgoingInnerVertexAdjList (const vertex_t &v) const
 Returns the outgoing adjacent inner vertices of v. More...
 
DEV_INLINE adj_list_t GetOutgoingOuterVertexAdjList (const vertex_t &v)
 Returns the outgoing adjacent outer vertices of v. More...
 
DEV_INLINE const_adj_list_t GetOutgoingOuterVertexAdjList (const vertex_t &v) const
 Returns the outgoing adjacent outer vertices of v. More...
 
+DEV_INLINE adj_list_t GetOutgoingAdjList (const vertex_t &v)
 
+DEV_INLINE const_adj_list_t GetOutgoingAdjList (const vertex_t &v) const
 
+DEV_INLINE size_t GetIncomingEdgeIndex (const nbr_t &nbr) const
 
+DEV_INLINE size_t GetIncomingEdgeIndex (const vertex_t &u, const nbr_t &nbr) const
 
+DEV_INLINE size_t GetOutgoingEdgeIndex (const nbr_t &nbr) const
 
+DEV_INLINE size_t GetOutgoingEdgeIndex (const vertex_t &u, const nbr_t &nbr) const
 
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Private Attributes

+DeviceVertexMap< OID_T, VID_T > vm_
 
+size_t ivnum_ {}
 
+size_t ovnum_ {}
 
+size_t tvnum_ {}
 
+size_t ienum_ {}
 
+size_t oenum_ {}
 
+fid_t fid_ {}
 
+IdParser< VID_T > id_parser_
 
+CUDASTL::HashMap< VID_T, VID_T > * ovg2l_ {}
 
+ArrayView< VID_T > ovgid_ {}
 
+ArrayView< nbr_t * > ieoffset_
 
+ArrayView< nbr_t * > oeoffset_
 
+ArrayView< nbr_tie_
 
+ArrayView< nbr_toe_
 
+ArrayView< VDATA_T > vdata_ {}
 
+ArrayView< fid_t > idst_
 
+ArrayView< fid_t > odst_
 
+ArrayView< fid_t > iodst_
 
+ArrayView< fid_t * > idoffset_
 
+ArrayView< fid_t * > odoffset_
 
+ArrayView< fid_t * > iodoffset_
 
+ArrayView< ArrayView< nbr_t * > > iespliters_
 
+ArrayView< ArrayView< nbr_t * > > oespliters_
 
+ArrayView< vertex_range_touter_vertices_of_frag_
 
+ArrayView< ArrayView< vertex_t > > mirrors_of_frag_
 
+ + + + +

+Friends

+template<typename _OID_T , typename _VID_T , typename _VDATA_T , typename _EDATA_T , grape::LoadStrategy __load_strategy, typename _VERTEX_MAP_T >
class grape::cuda::HostFragment
 
+

Member Function Documentation

+ +

◆ GetIncomingInnerVertexAdjList() [1/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , grape::LoadStrategy _load_strategy = grape::LoadStrategy::kOnlyOut>
+ + + + + +
+ + + + + + + + +
DEV_INLINE adj_list_t grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >::GetIncomingInnerVertexAdjList (const vertex_tv)
+
+inline
+
+ +

Returns the incoming adjacent inner vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The incoming adjacent inner vertices of v.
+
Attention
This method is available only when need_split_edges set in application's specification.
+ +
+
+ +

◆ GetIncomingInnerVertexAdjList() [2/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , grape::LoadStrategy _load_strategy = grape::LoadStrategy::kOnlyOut>
+ + + + + +
+ + + + + + + + +
DEV_INLINE const_adj_list_t grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >::GetIncomingInnerVertexAdjList (const vertex_tv) const
+
+inline
+
+ +

Returns the incoming adjacent inner vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The incoming adjacent inner vertices of v.
+
Attention
This method is available only when need_split_edges set in application's specification.
+ +
+
+ +

◆ GetIncomingOuterVertexAdjList() [1/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , grape::LoadStrategy _load_strategy = grape::LoadStrategy::kOnlyOut>
+ + + + + +
+ + + + + + + + +
DEV_INLINE adj_list_t grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >::GetIncomingOuterVertexAdjList (const vertex_tv)
+
+inline
+
+ +

Returns the incoming adjacent outer vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The incoming adjacent outer vertices of v.
+
Attention
This method is available only when need_split_edges set in application's specification.
+ +
+
+ +

◆ GetIncomingOuterVertexAdjList() [2/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , grape::LoadStrategy _load_strategy = grape::LoadStrategy::kOnlyOut>
+ + + + + +
+ + + + + + + + +
DEV_INLINE const_adj_list_t grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >::GetIncomingOuterVertexAdjList (const vertex_tv) const
+
+inline
+
+ +

Returns the incoming adjacent outer vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The incoming adjacent outer vertices of v.
+
Attention
This method is available only when need_split_edges set in application's specification.
+ +
+
+ +

◆ GetOutgoingInnerVertexAdjList() [1/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , grape::LoadStrategy _load_strategy = grape::LoadStrategy::kOnlyOut>
+ + + + + +
+ + + + + + + + +
DEV_INLINE adj_list_t grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >::GetOutgoingInnerVertexAdjList (const vertex_tv)
+
+inline
+
+ +

Returns the outgoing adjacent inner vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The outgoing adjacent inner vertices of v.
+
Attention
This method is available only when need_split_edges set in application's specification.
+ +
+
+ +

◆ GetOutgoingInnerVertexAdjList() [2/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , grape::LoadStrategy _load_strategy = grape::LoadStrategy::kOnlyOut>
+ + + + + +
+ + + + + + + + +
DEV_INLINE const_adj_list_t grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >::GetOutgoingInnerVertexAdjList (const vertex_tv) const
+
+inline
+
+ +

Returns the outgoing adjacent inner vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The outgoing adjacent inner vertices of v.
+
Attention
This method is available only when need_split_edges set in application's specification.
+ +
+
+ +

◆ GetOutgoingOuterVertexAdjList() [1/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , grape::LoadStrategy _load_strategy = grape::LoadStrategy::kOnlyOut>
+ + + + + +
+ + + + + + + + +
DEV_INLINE adj_list_t grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >::GetOutgoingOuterVertexAdjList (const vertex_tv)
+
+inline
+
+ +

Returns the outgoing adjacent outer vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The outgoing adjacent outer vertices of v.
+
Attention
This method is available only when need_split_edges set in application's specification.
+ +
+
+ +

◆ GetOutgoingOuterVertexAdjList() [2/2]

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , grape::LoadStrategy _load_strategy = grape::LoadStrategy::kOnlyOut>
+ + + + + +
+ + + + + + + + +
DEV_INLINE const_adj_list_t grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >::GetOutgoingOuterVertexAdjList (const vertex_tv) const
+
+inline
+
+ +

Returns the outgoing adjacent outer vertices of v.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The outgoing adjacent outer vertices of v.
+
Attention
This method is available only when need_split_edges set in application's specification.
+ +
+
+ +

◆ IEDests()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , grape::LoadStrategy _load_strategy = grape::LoadStrategy::kOnlyOut>
+ + + + + +
+ + + + + + + + +
DEV_INLINE DestList grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >::IEDests (const vertex_tv) const
+
+inline
+
+ +

Return the incoming edge destination fragment ID list of a inner vertex.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The incoming edge destination fragment ID list.
+
Attention
This method is only available when application set message strategy as kAlongIncomingEdgeToOuterVertex.
+ +
+
+ +

◆ IOEDests()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , grape::LoadStrategy _load_strategy = grape::LoadStrategy::kOnlyOut>
+ + + + + +
+ + + + + + + + +
DEV_INLINE DestList grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >::IOEDests (const vertex_tv) const
+
+inline
+
+ +

Return the edge destination fragment ID list of a inner vertex.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The edge destination fragment ID list.
+
Attention
This method is only available when application set message strategy as kAlongedge_toOuterVertex.
+ +
+
+ +

◆ OEDests()

+ +
+
+
+template<typename OID_T , typename VID_T , typename VDATA_T , typename EDATA_T , grape::LoadStrategy _load_strategy = grape::LoadStrategy::kOnlyOut>
+ + + + + +
+ + + + + + + + +
DEV_INLINE DestList grape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >::OEDests (const vertex_tv) const
+
+inline
+
+ +

Return the outgoing edge destination fragment ID list of a Vertex.

+
Parameters
+ + +
vInput vertex.
+
+
+
Returns
The outgoing edge destination fragment ID list.
+
Attention
This method is only available when application set message strategy as kAlongOutgoingedge_toOuterVertex.
+ +
+
+
+ + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1InArchive-members.html b/classgrape_1_1cuda_1_1dev_1_1InArchive-members.html new file mode 100644 index 00000000..00c658ea --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1InArchive-members.html @@ -0,0 +1,89 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::dev::InArchive Member List
+
+
+ +

This is the complete list of members for grape::cuda::dev::InArchive, including all inherited members.

+ + + + + + + + +
AddBytes(const T &elem) (defined in grape::cuda::dev::InArchive)grape::cuda::dev::InArchiveinline
AddBytesWarp(const T &elem) (defined in grape::cuda::dev::InArchive)grape::cuda::dev::InArchiveinline
AddBytesWarpOpt(int fid, const T &elem) (defined in grape::cuda::dev::InArchive)grape::cuda::dev::InArchiveinline
buffer_ (defined in grape::cuda::dev::InArchive)grape::cuda::dev::InArchiveprivate
InArchive()=default (defined in grape::cuda::dev::InArchive)grape::cuda::dev::InArchive
InArchive(const ArrayView< char > &buffer, uint32_t *size) (defined in grape::cuda::dev::InArchive)grape::cuda::dev::InArchiveinline
size_ (defined in grape::cuda::dev::InArchive)grape::cuda::dev::InArchiveprivate
+ + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1InArchive.html b/classgrape_1_1cuda_1_1dev_1_1InArchive.html new file mode 100644 index 00000000..49a7de76 --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1InArchive.html @@ -0,0 +1,111 @@ + + + + + + + +libgrape-lite: grape::cuda::dev::InArchive Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::dev::InArchive Class Reference
+
+
+ + + + + + + + + + + + + +

+Public Member Functions

InArchive (const ArrayView< char > &buffer, uint32_t *size)
 
+template<typename T >
DEV_INLINE void AddBytes (const T &elem)
 
+template<typename T >
DEV_INLINE void AddBytesWarpOpt (int fid, const T &elem)
 
+template<typename T >
DEV_INLINE void AddBytesWarp (const T &elem)
 
+ + + + + +

+Private Attributes

+ArrayView< char > buffer_
 
+uint32_t * size_ {}
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1MFLCounter-members.html b/classgrape_1_1cuda_1_1dev_1_1MFLCounter-members.html new file mode 100644 index 00000000..f7132165 --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1MFLCounter-members.html @@ -0,0 +1,98 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::dev::MFLCounter< T > Member List
+
+
+ +

This is the complete list of members for grape::cuda::dev::MFLCounter< T >, including all inherited members.

+ + + + + + + + + + + + + + + + + +
cid (defined in grape::cuda::dev::MFLCounter< T >)grape::cuda::dev::MFLCounter< T >private
cms_cnt (defined in grape::cuda::dev::MFLCounter< T >)grape::cuda::dev::MFLCounter< T >private
cms_k (defined in grape::cuda::dev::MFLCounter< T >)grape::cuda::dev::MFLCounter< T >private
cms_size (defined in grape::cuda::dev::MFLCounter< T >)grape::cuda::dev::MFLCounter< T >private
csize (defined in grape::cuda::dev::MFLCounter< T >)grape::cuda::dev::MFLCounter< T >private
dft (defined in grape::cuda::dev::MFLCounter< T >)grape::cuda::dev::MFLCounter< T >private
global_cnt (defined in grape::cuda::dev::MFLCounter< T >)grape::cuda::dev::MFLCounter< T >private
global_ht (defined in grape::cuda::dev::MFLCounter< T >)grape::cuda::dev::MFLCounter< T >private
init(uint32_t *shm_data, T *global_data, uint32_t *global_cnt, int ht_size, int cms_size, int cms_k, int cid, int csize, int width, T dft) (defined in grape::cuda::dev::MFLCounter< T >)grape::cuda::dev::MFLCounter< T >inline
insert_global_ht(T l, size_t begin, size_t end) (defined in grape::cuda::dev::MFLCounter< T >)grape::cuda::dev::MFLCounter< T >inline
insert_shm_cms(T l) (defined in grape::cuda::dev::MFLCounter< T >)grape::cuda::dev::MFLCounter< T >inline
insert_shm_ht(T l) (defined in grape::cuda::dev::MFLCounter< T >)grape::cuda::dev::MFLCounter< T >inline
query_shm_ht(T l) (defined in grape::cuda::dev::MFLCounter< T >)grape::cuda::dev::MFLCounter< T >inline
shm_cnt (defined in grape::cuda::dev::MFLCounter< T >)grape::cuda::dev::MFLCounter< T >private
shm_ht (defined in grape::cuda::dev::MFLCounter< T >)grape::cuda::dev::MFLCounter< T >private
shm_ht_size (defined in grape::cuda::dev::MFLCounter< T >)grape::cuda::dev::MFLCounter< T >private
+ + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1MFLCounter.html b/classgrape_1_1cuda_1_1dev_1_1MFLCounter.html new file mode 100644 index 00000000..b4ecde2a --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1MFLCounter.html @@ -0,0 +1,138 @@ + + + + + + + +libgrape-lite: grape::cuda::dev::MFLCounter< T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::dev::MFLCounter< T > Class Template Reference
+
+
+ + + + + + + + + + + + +

+Public Member Functions

+__device__ __forceinline__ void init (uint32_t *shm_data, T *global_data, uint32_t *global_cnt, int ht_size, int cms_size, int cms_k, int cid, int csize, int width, T dft)
 
+__device__ __forceinline__ int insert_shm_ht (T l)
 
+__device__ __forceinline__ int query_shm_ht (T l)
 
+__device__ __forceinline__ int insert_shm_cms (T l)
 
+__device__ __forceinline__ int insert_global_ht (T l, size_t begin, size_t end)
 
+ + + + + + + + + + + + + + + + + + + + + + + +

+Private Attributes

+T * shm_ht
 
+uint32_t * shm_cnt
 
+int shm_ht_size
 
+int cms_k
 
+int cms_size
 
+uint32_t * cms_cnt
 
+T * global_ht
 
+uint32_t * global_cnt
 
+int cid
 
+int csize
 
+T dft
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1MessageManager-members.html b/classgrape_1_1cuda_1_1dev_1_1MessageManager-members.html new file mode 100644 index 00000000..67778dfb --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1MessageManager-members.html @@ -0,0 +1,94 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::dev::MessageManager Member List
+
+
+ +

This is the complete list of members for grape::cuda::dev::MessageManager, including all inherited members.

+ + + + + + + + + + + + + +
MessageManager(const ArrayView< InArchive > &to_send) (defined in grape::cuda::dev::MessageManager)grape::cuda::dev::MessageManagerinlineexplicit
SendMsgThroughEdges(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg) (defined in grape::cuda::dev::MessageManager)grape::cuda::dev::MessageManagerinline
SendMsgThroughIEdges(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg) (defined in grape::cuda::dev::MessageManager)grape::cuda::dev::MessageManagerinline
SendMsgThroughOEdges(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg) (defined in grape::cuda::dev::MessageManager)grape::cuda::dev::MessageManagerinline
SendMsgThroughOEdges(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v) (defined in grape::cuda::dev::MessageManager)grape::cuda::dev::MessageManagerinline
SendToFragment(fid_t dst_fid, const MESSAGE_T &msg) (defined in grape::cuda::dev::MessageManager)grape::cuda::dev::MessageManagerinline
SendToFragmentWarpOpt(fid_t dst_fid, const MESSAGE_T &msg) (defined in grape::cuda::dev::MessageManager)grape::cuda::dev::MessageManagerinline
SyncStateOnOuterVertex(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg) (defined in grape::cuda::dev::MessageManager)grape::cuda::dev::MessageManagerinline
SyncStateOnOuterVertex(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v) (defined in grape::cuda::dev::MessageManager)grape::cuda::dev::MessageManagerinline
SyncStateOnOuterVertexWarpOpt(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg) (defined in grape::cuda::dev::MessageManager)grape::cuda::dev::MessageManagerinline
SyncStateOnOuterVertexWarpOpt(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v) (defined in grape::cuda::dev::MessageManager)grape::cuda::dev::MessageManagerinline
to_send_ (defined in grape::cuda::dev::MessageManager)grape::cuda::dev::MessageManagerprivate
+ + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1MessageManager.html b/classgrape_1_1cuda_1_1dev_1_1MessageManager.html new file mode 100644 index 00000000..629d9a04 --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1MessageManager.html @@ -0,0 +1,136 @@ + + + + + + + +libgrape-lite: grape::cuda::dev::MessageManager Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::dev::MessageManager Class Reference
+
+
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

+Public Member Functions

MessageManager (const ArrayView< InArchive > &to_send)
 
+template<typename GRAPH_T , typename MESSAGE_T >
DEV_INLINE void SyncStateOnOuterVertex (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)
 
+template<typename GRAPH_T >
DEV_INLINE void SyncStateOnOuterVertex (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v)
 
+template<typename GRAPH_T , typename MESSAGE_T >
DEV_INLINE void SyncStateOnOuterVertexWarpOpt (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)
 
+template<typename GRAPH_T >
DEV_INLINE void SyncStateOnOuterVertexWarpOpt (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v)
 
+template<typename GRAPH_T , typename MESSAGE_T >
DEV_INLINE void SendMsgThroughIEdges (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)
 
+template<typename GRAPH_T , typename MESSAGE_T >
DEV_INLINE void SendMsgThroughOEdges (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)
 
+template<typename GRAPH_T >
DEV_INLINE void SendMsgThroughOEdges (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v)
 
+template<typename GRAPH_T , typename MESSAGE_T >
DEV_INLINE void SendMsgThroughEdges (const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)
 
+template<typename MESSAGE_T >
DEV_INLINE void SendToFragment (fid_t dst_fid, const MESSAGE_T &msg)
 
+template<typename MESSAGE_T >
DEV_INLINE void SendToFragmentWarpOpt (fid_t dst_fid, const MESSAGE_T &msg)
 
+ + + +

+Private Attributes

+ArrayView< InArchiveto_send_
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1OutArchive-members.html b/classgrape_1_1cuda_1_1dev_1_1OutArchive-members.html new file mode 100644 index 00000000..27f939e2 --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1OutArchive-members.html @@ -0,0 +1,91 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::dev::OutArchive Member List
+
+
+ +

This is the complete list of members for grape::cuda::dev::OutArchive, including all inherited members.

+ + + + + + + + + + +
buffer_ (defined in grape::cuda::dev::OutArchive)grape::cuda::dev::OutArchiveprivate
data() (defined in grape::cuda::dev::OutArchive)grape::cuda::dev::OutArchiveinline
Empty() const (defined in grape::cuda::dev::OutArchive)grape::cuda::dev::OutArchiveinline
GetBytes(T &elem) (defined in grape::cuda::dev::OutArchive)grape::cuda::dev::OutArchiveinline
GetBytesWarp(T &elem) (defined in grape::cuda::dev::OutArchive)grape::cuda::dev::OutArchiveinline
OutArchive()=default (defined in grape::cuda::dev::OutArchive)grape::cuda::dev::OutArchive
OutArchive(const ArrayView< char > &data, uint32_t *offset) (defined in grape::cuda::dev::OutArchive)grape::cuda::dev::OutArchiveinline
pos_ (defined in grape::cuda::dev::OutArchive)grape::cuda::dev::OutArchiveprivate
size() const (defined in grape::cuda::dev::OutArchive)grape::cuda::dev::OutArchiveinline
+ + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1OutArchive.html b/classgrape_1_1cuda_1_1dev_1_1OutArchive.html new file mode 100644 index 00000000..4b48872f --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1OutArchive.html @@ -0,0 +1,116 @@ + + + + + + + +libgrape-lite: grape::cuda::dev::OutArchive Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::dev::OutArchive Class Reference
+
+
+ + + + + + + + + + + + + + + + +

+Public Member Functions

OutArchive (const ArrayView< char > &data, uint32_t *offset)
 
+template<typename T >
DEV_INLINE bool GetBytes (T &elem)
 
+template<typename T >
DEV_INLINE bool GetBytesWarp (T &elem)
 
+DEV_INLINE bool Empty () const
 
+DEV_INLINE uint32_t size () const
 
+DEV_INLINE char * data ()
 
+ + + + + +

+Private Attributes

+ArrayView< char > buffer_
 
+uint32_t * pos_ {}
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1Queue.html b/classgrape_1_1cuda_1_1dev_1_1Queue.html new file mode 100644 index 00000000..3a5acaf6 --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1Queue.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: grape::cuda::dev::Queue< T, SIZE_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::dev::Queue< T, SIZE_T > Class Template Reference
+
+
+
+ + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1Queue_3_01T_00_01uint32__t_01_4-members.html b/classgrape_1_1cuda_1_1dev_1_1Queue_3_01T_00_01uint32__t_01_4-members.html new file mode 100644 index 00000000..578e6446 --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1Queue_3_01T_00_01uint32__t_01_4-members.html @@ -0,0 +1,93 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::dev::Queue< T, uint32_t > Member List
+
+ + + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1Queue_3_01T_00_01uint32__t_01_4.html b/classgrape_1_1cuda_1_1dev_1_1Queue_3_01T_00_01uint32__t_01_4.html new file mode 100644 index 00000000..077a2d5c --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1Queue_3_01T_00_01uint32__t_01_4.html @@ -0,0 +1,120 @@ + + + + + + + +libgrape-lite: grape::cuda::dev::Queue< T, uint32_t > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::dev::Queue< T, uint32_t > Class Template Reference
+
+
+ + + + + + + + + + + + + + + + + + +

+Public Member Functions

+DEV_HOST Queue (const ArrayView< T > &data, uint32_t *last_pos)
 
+DEV_INLINE void Append (const T &item)
 
+DEV_INLINE void AppendWarp (const T &item)
 
+DEV_INLINE void Clear () const
 
+DEV_INLINE T & operator[] (uint32_t i)
 
+DEV_INLINE const T & operator[] (uint32_t i) const
 
+DEV_INLINE uint32_t size () const
 
+DEV_INLINE void Swap (Queue< T, uint32_t > &rhs)
 
+ + + + + +

+Private Attributes

+ArrayView< T > data_
 
+uint32_t * last_pos_ {}
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1Queue_3_01T_00_01uint64__t_01_4-members.html b/classgrape_1_1cuda_1_1dev_1_1Queue_3_01T_00_01uint64__t_01_4-members.html new file mode 100644 index 00000000..298a1841 --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1Queue_3_01T_00_01uint64__t_01_4-members.html @@ -0,0 +1,93 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::dev::Queue< T, uint64_t > Member List
+
+ + + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1Queue_3_01T_00_01uint64__t_01_4.html b/classgrape_1_1cuda_1_1dev_1_1Queue_3_01T_00_01uint64__t_01_4.html new file mode 100644 index 00000000..86ed6834 --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1Queue_3_01T_00_01uint64__t_01_4.html @@ -0,0 +1,120 @@ + + + + + + + +libgrape-lite: grape::cuda::dev::Queue< T, uint64_t > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::dev::Queue< T, uint64_t > Class Template Reference
+
+
+ + + + + + + + + + + + + + + + + + +

+Public Member Functions

+DEV_HOST Queue (const ArrayView< T > &data, uint64_t *last_pos)
 
+DEV_INLINE void Append (const T &item)
 
+DEV_INLINE void AppendWarp (const T &item)
 
+DEV_INLINE void Clear () const
 
+DEV_INLINE T & operator[] (uint64_t i)
 
+DEV_INLINE const T & operator[] (uint64_t i) const
 
+DEV_INLINE uint64_t size () const
 
+DEV_INLINE void Swap (Queue< T, uint64_t > &rhs)
 
+ + + + + +

+Private Attributes

+ArrayView< T > data_
 
+uint64_t * last_pos_ {}
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1ShmHashTable-members.html b/classgrape_1_1cuda_1_1dev_1_1ShmHashTable-members.html new file mode 100644 index 00000000..c72fbb78 --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1ShmHashTable-members.html @@ -0,0 +1,94 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::dev::ShmHashTable< T > Member List
+
+ + + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1ShmHashTable.html b/classgrape_1_1cuda_1_1dev_1_1ShmHashTable.html new file mode 100644 index 00000000..3dee6bec --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1ShmHashTable.html @@ -0,0 +1,126 @@ + + + + + + + +libgrape-lite: grape::cuda::dev::ShmHashTable< T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::dev::ShmHashTable< T > Class Template Reference
+
+
+ + + + + + + + + + +

+Public Member Functions

+__device__ __forceinline__ void init (T *shm_data, T *global_data, int offset, int bucket_size, int cached_size, int bucket_num, int bucket_stride)
 
+__device__ __forceinline__ void clear (int thread_lane, int csize)
 
+__device__ __forceinline__ bool insert (T element)
 
+__device__ __forceinline__ bool lookup (T element)
 
+ + + + + + + + + + + + + + + + + +

+Public Attributes

+T * bin_count
 
+T * cache
 
+T * data
 
+int offset
 
+int bucket_size
 
+int cached_size
 
+int bucket_num
 
+int bucket_stride
 
+
+ + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1VertexArray-members.html b/classgrape_1_1cuda_1_1dev_1_1VertexArray-members.html new file mode 100644 index 00000000..85ea5cd1 --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1VertexArray-members.html @@ -0,0 +1,91 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::cuda::dev::VertexArray< T, VID_T > Member List
+
+ + + + + diff --git a/classgrape_1_1cuda_1_1dev_1_1VertexArray.html b/classgrape_1_1cuda_1_1dev_1_1VertexArray.html new file mode 100644 index 00000000..82370a97 --- /dev/null +++ b/classgrape_1_1cuda_1_1dev_1_1VertexArray.html @@ -0,0 +1,114 @@ + + + + + + + +libgrape-lite: grape::cuda::dev::VertexArray< T, VID_T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::cuda::dev::VertexArray< T, VID_T > Class Template Reference
+
+
+ + + + + + + + + + + + +

+Public Member Functions

+DEV_HOST VertexArray (VertexRange< VID_T > range, T *data)
 
+DEV_INLINE T & operator[] (const Vertex< VID_T > &loc)
 
+DEV_INLINE const T & operator[] (const Vertex< VID_T > &loc) const
 
+DEV_HOST_INLINE T * data ()
 
+DEV_HOST_INLINE size_t size () const
 
+ + + + + + + +

+Private Attributes

+VertexRange< VID_T > range_
 
+T * data_ {}
 
+T * fake_start_ {}
 
+
+ + + + diff --git a/classgrape_1_1mutable__csr__impl_1_1Blob-members.html b/classgrape_1_1mutable__csr__impl_1_1Blob-members.html new file mode 100644 index 00000000..d16e287d --- /dev/null +++ b/classgrape_1_1mutable__csr__impl_1_1Blob-members.html @@ -0,0 +1,93 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::mutable_csr_impl::Blob< VID_T, T > Member List
+
+ + + + + diff --git a/classgrape_1_1mutable__csr__impl_1_1Blob.html b/classgrape_1_1mutable__csr__impl_1_1Blob.html new file mode 100644 index 00000000..f9c796ee --- /dev/null +++ b/classgrape_1_1mutable__csr__impl_1_1Blob.html @@ -0,0 +1,117 @@ + + + + + + + +libgrape-lite: grape::mutable_csr_impl::Blob< VID_T, T > Class Template Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::mutable_csr_impl::Blob< VID_T, T > Class Template Reference
+
+
+ + + + + + + + + + + + + + + + + + +

+Public Member Functions

Blob (size_t size)
 
Blob (Blob &&rhs)
 
+void resize (size_t size)
 
+T * data ()
 
+const T * data () const
 
+T & operator[] (VID_T index)
 
+const T & operator[] (VID_T index) const
 
+size_t size () const
 
+ + + +

+Private Attributes

+Array< T, Allocator< T > > buffer_
 
+
+ + + + diff --git a/classgrape_1_1sync__comm_1_1WorkerIterator-members.html b/classgrape_1_1sync__comm_1_1WorkerIterator-members.html new file mode 100644 index 00000000..13240b9e --- /dev/null +++ b/classgrape_1_1sync__comm_1_1WorkerIterator-members.html @@ -0,0 +1,91 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape::sync_comm::WorkerIterator Member List
+
+
+ +

This is the complete list of members for grape::sync_comm::WorkerIterator, including all inherited members.

+ + + + + + + + + + +
cur_ (defined in grape::sync_comm::WorkerIterator)grape::sync_comm::WorkerIteratorprivate
num_ (defined in grape::sync_comm::WorkerIterator)grape::sync_comm::WorkerIteratorprivate
operator!=(const WorkerIterator &rhs) noexcept (defined in grape::sync_comm::WorkerIterator)grape::sync_comm::WorkerIteratorinline
operator*() const noexcept (defined in grape::sync_comm::WorkerIterator)grape::sync_comm::WorkerIteratorinline
operator++() noexcept (defined in grape::sync_comm::WorkerIterator)grape::sync_comm::WorkerIteratorinline
operator++(int) noexcept (defined in grape::sync_comm::WorkerIterator)grape::sync_comm::WorkerIteratorinline
operator==(const WorkerIterator &rhs) noexcept (defined in grape::sync_comm::WorkerIterator)grape::sync_comm::WorkerIteratorinline
WorkerIterator(int cur, int num) noexcept (defined in grape::sync_comm::WorkerIterator)grape::sync_comm::WorkerIteratorinline
~WorkerIterator()=default (defined in grape::sync_comm::WorkerIterator)grape::sync_comm::WorkerIterator
+ + + + diff --git a/classgrape_1_1sync__comm_1_1WorkerIterator.html b/classgrape_1_1sync__comm_1_1WorkerIterator.html new file mode 100644 index 00000000..cae6b424 --- /dev/null +++ b/classgrape_1_1sync__comm_1_1WorkerIterator.html @@ -0,0 +1,114 @@ + + + + + + + +libgrape-lite: grape::sync_comm::WorkerIterator Class Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+ +
+
grape::sync_comm::WorkerIterator Class Reference
+
+
+ + + + + + + + + + + + + + +

+Public Member Functions

WorkerIterator (int cur, int num) noexcept
 
+WorkerIteratoroperator++ () noexcept
 
+WorkerIterator operator++ (int) noexcept
 
+int operator* () const noexcept
 
+bool operator== (const WorkerIterator &rhs) noexcept
 
+bool operator!= (const WorkerIterator &rhs) noexcept
 
+ + + + + +

+Private Attributes

+int cur_
 
+int num_
 
+
+ + + + diff --git a/closed.png b/closed.png new file mode 100644 index 0000000000000000000000000000000000000000..98cc2c909da37a6df914fbf67780eebd99c597f5 GIT binary patch literal 132 zcmeAS@N?(olHy`uVBq!ia0vp^oFL4>1|%O$WD@{V-kvUwAr*{o@8{^CZMh(5KoB^r_<4^zF@3)Cp&&t3hdujKf f*?bjBoY!V+E))@{xMcbjXe@)LtDnm{r-UW|*e5JT literal 0 HcmV?d00001 diff --git a/dir_0ac875d46873659b11df92ca15225f14.html b/dir_0ac875d46873659b11df92ca15225f14.html new file mode 100644 index 00000000..58e36159 --- /dev/null +++ b/dir_0ac875d46873659b11df92ca15225f14.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: /home/runner/work/libgrape-lite/libgrape-lite/grape/cuda/serialization Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
serialization Directory Reference
+
+
+
+ + + + diff --git a/dir_188297b17b8c7e2f88ff5b95af01904c.html b/dir_188297b17b8c7e2f88ff5b95af01904c.html new file mode 100644 index 00000000..d7f61acb --- /dev/null +++ b/dir_188297b17b8c7e2f88ff5b95af01904c.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: /home/runner/work/libgrape-lite/libgrape-lite/grape/fragment Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
fragment Directory Reference
+
+
+
+ + + + diff --git a/dir_1f464a49fc50ae467988ae0658141bfa.html b/dir_1f464a49fc50ae467988ae0658141bfa.html new file mode 100644 index 00000000..dc212fa9 --- /dev/null +++ b/dir_1f464a49fc50ae467988ae0658141bfa.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: /home/runner/work/libgrape-lite/libgrape-lite/grape/app Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
app Directory Reference
+
+
+
+ + + + diff --git a/dir_2f174c8db964414c11598a70facd9f09.html b/dir_2f174c8db964414c11598a70facd9f09.html new file mode 100644 index 00000000..d1e89d5c --- /dev/null +++ b/dir_2f174c8db964414c11598a70facd9f09.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: /home/runner/work/libgrape-lite/libgrape-lite/grape/cuda/communication Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
communication Directory Reference
+
+
+
+ + + + diff --git a/dir_30f3908cde7d7cb566881e1add56dc6f.html b/dir_30f3908cde7d7cb566881e1add56dc6f.html new file mode 100644 index 00000000..3f0c8af6 --- /dev/null +++ b/dir_30f3908cde7d7cb566881e1add56dc6f.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: /home/runner/work/libgrape-lite/libgrape-lite/grape/serialization Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
serialization Directory Reference
+
+
+
+ + + + diff --git a/dir_31dedf82b84e375e6f8373268199e921.html b/dir_31dedf82b84e375e6f8373268199e921.html new file mode 100644 index 00000000..da9d8ae7 --- /dev/null +++ b/dir_31dedf82b84e375e6f8373268199e921.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: /home/runner/work/libgrape-lite/libgrape-lite/grape/graph Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
graph Directory Reference
+
+
+
+ + + + diff --git a/dir_3cdb14565d08ed562605462a5ea6b4a8.html b/dir_3cdb14565d08ed562605462a5ea6b4a8.html new file mode 100644 index 00000000..f7fd55bf --- /dev/null +++ b/dir_3cdb14565d08ed562605462a5ea6b4a8.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: /home/runner/work/libgrape-lite/libgrape-lite/grape/worker Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
worker Directory Reference
+
+
+
+ + + + diff --git a/dir_4f287cebe9c73a478d2777c0d88e0498.html b/dir_4f287cebe9c73a478d2777c0d88e0498.html new file mode 100644 index 00000000..26b20df1 --- /dev/null +++ b/dir_4f287cebe9c73a478d2777c0d88e0498.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: /home/runner/work/libgrape-lite/libgrape-lite/grape/cuda/utils Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
utils Directory Reference
+
+
+
+ + + + diff --git a/dir_5ffe253db61b30379d175ada8bcca58c.html b/dir_5ffe253db61b30379d175ada8bcca58c.html new file mode 100644 index 00000000..c7fefd2a --- /dev/null +++ b/dir_5ffe253db61b30379d175ada8bcca58c.html @@ -0,0 +1,83 @@ + + + + + + + +libgrape-lite: /home/runner/work/libgrape-lite/libgrape-lite/grape/cuda Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
cuda Directory Reference
+
+
+ + +

+Directories

+
+ + + + diff --git a/dir_63f1f8eb9f6d3217afd8e8dfb74e7cbf.html b/dir_63f1f8eb9f6d3217afd8e8dfb74e7cbf.html new file mode 100644 index 00000000..ed12ee6e --- /dev/null +++ b/dir_63f1f8eb9f6d3217afd8e8dfb74e7cbf.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: /home/runner/work/libgrape-lite/libgrape-lite/grape/cuda/fragment Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
fragment Directory Reference
+
+
+
+ + + + diff --git a/dir_6a28a02402b7ed57aa26456f71070f0e.html b/dir_6a28a02402b7ed57aa26456f71070f0e.html new file mode 100644 index 00000000..d8492746 --- /dev/null +++ b/dir_6a28a02402b7ed57aa26456f71070f0e.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: /home/runner/work/libgrape-lite/libgrape-lite/grape/cuda/parallel Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
parallel Directory Reference
+
+
+
+ + + + diff --git a/dir_6e96519b469f3dcd4cc74fe05ae52155.html b/dir_6e96519b469f3dcd4cc74fe05ae52155.html new file mode 100644 index 00000000..d40eceef --- /dev/null +++ b/dir_6e96519b469f3dcd4cc74fe05ae52155.html @@ -0,0 +1,85 @@ + + + + + + + +libgrape-lite: /home/runner/work/libgrape-lite/libgrape-lite/grape Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
grape Directory Reference
+
+
+ + + + +

+Directories

directory  cuda
 
+
+ + + + diff --git a/dir_7cc9563f11a98ea309c2844e3e65fc87.html b/dir_7cc9563f11a98ea309c2844e3e65fc87.html new file mode 100644 index 00000000..05f5b646 --- /dev/null +++ b/dir_7cc9563f11a98ea309c2844e3e65fc87.html @@ -0,0 +1,85 @@ + + + + + + + +libgrape-lite: /home/runner/work/libgrape-lite/libgrape-lite/grape/utils Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
utils Directory Reference
+
+
+ + + + +

+Files

file  atomic_ops.h
 
+
+ + + + diff --git a/dir_82e82516cffc8eee3f011f0572d55bd8.html b/dir_82e82516cffc8eee3f011f0572d55bd8.html new file mode 100644 index 00000000..07de22d4 --- /dev/null +++ b/dir_82e82516cffc8eee3f011f0572d55bd8.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: /home/runner/work/libgrape-lite/libgrape-lite/grape/communication Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
communication Directory Reference
+
+
+
+ + + + diff --git a/dir_ab9d625e1a973d380d9281b74aefd4f2.html b/dir_ab9d625e1a973d380d9281b74aefd4f2.html new file mode 100644 index 00000000..a82c6e85 --- /dev/null +++ b/dir_ab9d625e1a973d380d9281b74aefd4f2.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: /home/runner/work/libgrape-lite/libgrape-lite/grape/parallel Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
parallel Directory Reference
+
+
+
+ + + + diff --git a/dir_bbb4e56976a3e714fa0f43ec99c1d102.html b/dir_bbb4e56976a3e714fa0f43ec99c1d102.html new file mode 100644 index 00000000..7c26618f --- /dev/null +++ b/dir_bbb4e56976a3e714fa0f43ec99c1d102.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: /home/runner/work/libgrape-lite/libgrape-lite/grape/io Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
io Directory Reference
+
+
+
+ + + + diff --git a/dir_c0b548cf109dbac2657a6a4a50903ef5.html b/dir_c0b548cf109dbac2657a6a4a50903ef5.html new file mode 100644 index 00000000..89ba4af1 --- /dev/null +++ b/dir_c0b548cf109dbac2657a6a4a50903ef5.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: /home/runner/work/libgrape-lite/libgrape-lite/grape/cuda/app Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
app Directory Reference
+
+
+
+ + + + diff --git a/dir_c1ff87c90977f1292b51b622879499fa.html b/dir_c1ff87c90977f1292b51b622879499fa.html new file mode 100644 index 00000000..81371740 --- /dev/null +++ b/dir_c1ff87c90977f1292b51b622879499fa.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: /home/runner/work/libgrape-lite/libgrape-lite/grape/vertex_map Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
vertex_map Directory Reference
+
+
+
+ + + + diff --git a/dir_c61c2ea1b93cc3c8a7d025c3375b558a.html b/dir_c61c2ea1b93cc3c8a7d025c3375b558a.html new file mode 100644 index 00000000..2aec99b7 --- /dev/null +++ b/dir_c61c2ea1b93cc3c8a7d025c3375b558a.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: /home/runner/work/libgrape-lite/libgrape-lite/grape/cuda/vertex_map Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
vertex_map Directory Reference
+
+
+
+ + + + diff --git a/dir_df854676fb38863dcf4a7b22887d8d30.html b/dir_df854676fb38863dcf4a7b22887d8d30.html new file mode 100644 index 00000000..d5e15d9a --- /dev/null +++ b/dir_df854676fb38863dcf4a7b22887d8d30.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: /home/runner/work/libgrape-lite/libgrape-lite/grape/cuda/worker Directory Reference + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + + +
+
+ + +
+ +
+ + +
+
+
+
worker Directory Reference
+
+
+
+ + + + diff --git a/doc.png b/doc.png new file mode 100644 index 0000000000000000000000000000000000000000..17edabff95f7b8da13c9516a04efe05493c29501 GIT binary patch literal 746 zcmV7=@pnbNXRFEm&G8P!&WHG=d)>K?YZ1bzou)2{$)) zumDct!>4SyxL;zgaG>wy`^Hv*+}0kUfCrz~BCOViSb$_*&;{TGGn2^x9K*!Sf0=lV zpP=7O;GA0*Jm*tTYj$IoXvimpnV4S1Z5f$p*f$Db2iq2zrVGQUz~yq`ahn7ck(|CE z7Gz;%OP~J6)tEZWDzjhL9h2hdfoU2)Nd%T<5Kt;Y0XLt&<@6pQx!nw*5`@bq#?l*?3z{Hlzoc=Pr>oB5(9i6~_&-}A(4{Q$>c>%rV&E|a(r&;?i5cQB=} zYSDU5nXG)NS4HEs0it2AHe2>shCyr7`6@4*6{r@8fXRbTA?=IFVWAQJL&H5H{)DpM#{W(GL+Idzf^)uRV@oB8u$ z8v{MfJbTiiRg4bza<41NAzrl{=3fl_D+$t+^!xlQ8S}{UtY`e z;;&9UhyZqQRN%2pot{*Ei0*4~hSF_3AH2@fKU!$NSflS>{@tZpDT4`M2WRTTVH+D? z)GFlEGGHe?koB}i|1w45!BF}N_q&^HJ&-tyR{(afC6H7|aml|tBBbv}55C5DNP8p3 z)~jLEO4Z&2hZmP^i-e%(@d!(E|KRafiU8Q5u(wU((j8un3OR*Hvj+t literal 0 HcmV?d00001 diff --git a/doxygen.css b/doxygen.css new file mode 100644 index 00000000..ffbff022 --- /dev/null +++ b/doxygen.css @@ -0,0 +1,1793 @@ +/* The standard CSS for doxygen 1.9.1 */ + +body, table, div, p, dl { + font: 400 14px/22px Roboto,sans-serif; +} + +p.reference, p.definition { + font: 400 14px/22px Roboto,sans-serif; +} + +/* @group Heading Levels */ + +h1.groupheader { + font-size: 150%; +} + +.title { + font: 400 14px/28px Roboto,sans-serif; + font-size: 150%; + font-weight: bold; + margin: 10px 2px; +} + +h2.groupheader { + border-bottom: 1px solid #879ECB; + color: #354C7B; + font-size: 150%; + font-weight: normal; + margin-top: 1.75em; + padding-top: 8px; + padding-bottom: 4px; + width: 100%; +} + +h3.groupheader { + font-size: 100%; +} + +h1, h2, h3, h4, h5, h6 { + -webkit-transition: text-shadow 0.5s linear; + -moz-transition: text-shadow 0.5s linear; + -ms-transition: text-shadow 0.5s linear; + -o-transition: text-shadow 0.5s linear; + transition: text-shadow 0.5s linear; + margin-right: 15px; +} + +h1.glow, h2.glow, h3.glow, h4.glow, h5.glow, h6.glow { + text-shadow: 0 0 15px cyan; +} + +dt { + font-weight: bold; +} + +ul.multicol { + -moz-column-gap: 1em; + -webkit-column-gap: 1em; + column-gap: 1em; + -moz-column-count: 3; + -webkit-column-count: 3; + column-count: 3; +} + +p.startli, p.startdd { + margin-top: 2px; +} + +th p.starttd, th p.intertd, th p.endtd { + font-size: 100%; + font-weight: 700; +} + +p.starttd { + margin-top: 0px; +} + +p.endli { + margin-bottom: 0px; +} + +p.enddd { + margin-bottom: 4px; +} + +p.endtd { + margin-bottom: 2px; +} + +p.interli { +} + +p.interdd { +} + +p.intertd { +} + +/* @end */ + +caption { + font-weight: bold; +} + +span.legend { + font-size: 70%; + text-align: center; +} + +h3.version { + font-size: 90%; + text-align: center; +} + +div.navtab { + border-right: 1px solid #A3B4D7; + padding-right: 15px; + text-align: right; + line-height: 110%; +} + +div.navtab table { + border-spacing: 0; +} + +td.navtab { + padding-right: 6px; + padding-left: 6px; +} +td.navtabHL { + background-image: url('tab_a.png'); + background-repeat:repeat-x; + padding-right: 6px; + padding-left: 6px; +} + +td.navtabHL a, td.navtabHL a:visited { + color: #fff; + text-shadow: 0px 1px 1px rgba(0, 0, 0, 1.0); +} + +a.navtab { + font-weight: bold; +} + +div.qindex{ + text-align: center; + width: 100%; + line-height: 140%; + font-size: 130%; + color: #A0A0A0; +} + +dt.alphachar{ + font-size: 180%; + font-weight: bold; +} + +.alphachar a{ + color: black; +} + +.alphachar a:hover, .alphachar a:visited{ + text-decoration: none; +} + +.classindex dl { + padding: 25px; + column-count:1 +} + +.classindex dd { + display:inline-block; + margin-left: 50px; + width: 90%; + line-height: 1.15em; +} + +.classindex dl.odd { + background-color: #F8F9FC; +} + +@media(min-width: 1120px) { + .classindex dl { + column-count:2 + } +} + +@media(min-width: 1320px) { + .classindex dl { + column-count:3 + } +} + + +/* @group Link Styling */ + +a { + color: #3D578C; + font-weight: normal; + text-decoration: none; +} + +.contents a:visited { + color: #4665A2; +} + +a:hover { + text-decoration: underline; +} + +.contents a.qindexHL:visited { + color: #FFFFFF; +} + +a.el { + font-weight: bold; +} + +a.elRef { +} + +a.code, a.code:visited, a.line, a.line:visited { + color: #4665A2; +} + +a.codeRef, a.codeRef:visited, a.lineRef, a.lineRef:visited { + color: #4665A2; +} + +/* @end */ + +dl.el { + margin-left: -1cm; +} + +ul { + overflow: hidden; /*Fixed: list item bullets overlap floating elements*/ +} + +#side-nav ul { + overflow: visible; /* reset ul rule for scroll bar in GENERATE_TREEVIEW window */ +} + +#main-nav ul { + overflow: visible; /* reset ul rule for the navigation bar drop down lists */ +} + +.fragment { + text-align: left; + direction: ltr; + overflow-x: auto; /*Fixed: fragment lines overlap floating elements*/ + overflow-y: hidden; +} + +pre.fragment { + border: 1px solid #C4CFE5; + background-color: #FBFCFD; + padding: 4px 6px; + margin: 4px 8px 4px 2px; + overflow: auto; + word-wrap: break-word; + font-size: 9pt; + line-height: 125%; + font-family: monospace, fixed; + font-size: 105%; +} + +div.fragment { + padding: 0 0 1px 0; /*Fixed: last line underline overlap border*/ + margin: 4px 8px 4px 2px; + background-color: #FBFCFD; + border: 1px solid #C4CFE5; +} + +div.line { + font-family: monospace, fixed; + font-size: 13px; + min-height: 13px; + line-height: 1.0; + text-wrap: unrestricted; + white-space: -moz-pre-wrap; /* Moz */ + white-space: -pre-wrap; /* Opera 4-6 */ + white-space: -o-pre-wrap; /* Opera 7 */ + white-space: pre-wrap; /* CSS3 */ + word-wrap: break-word; /* IE 5.5+ */ + text-indent: -53px; + padding-left: 53px; + padding-bottom: 0px; + margin: 0px; + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +div.line:after { + content:"\000A"; + white-space: pre; +} + +div.line.glow { + background-color: cyan; + box-shadow: 0 0 10px cyan; +} + + +span.lineno { + padding-right: 4px; + text-align: right; + border-right: 2px solid #0F0; + background-color: #E8E8E8; + white-space: pre; +} +span.lineno a { + background-color: #D8D8D8; +} + +span.lineno a:hover { + background-color: #C8C8C8; +} + +.lineno { + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +div.ah, span.ah { + background-color: black; + font-weight: bold; + color: #FFFFFF; + margin-bottom: 3px; + margin-top: 3px; + padding: 0.2em; + border: solid thin #333; + border-radius: 0.5em; + -webkit-border-radius: .5em; + -moz-border-radius: .5em; + box-shadow: 2px 2px 3px #999; + -webkit-box-shadow: 2px 2px 3px #999; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + background-image: -webkit-gradient(linear, left top, left bottom, from(#eee), to(#000),color-stop(0.3, #444)); + background-image: -moz-linear-gradient(center top, #eee 0%, #444 40%, #000 110%); +} + +div.classindex ul { + list-style: none; + padding-left: 0; +} + +div.classindex span.ai { + display: inline-block; +} + +div.groupHeader { + margin-left: 16px; + margin-top: 12px; + font-weight: bold; +} + +div.groupText { + margin-left: 16px; + font-style: italic; +} + +body { + background-color: white; + color: black; + margin: 0; +} + +div.contents { + margin-top: 10px; + margin-left: 12px; + margin-right: 8px; +} + +td.indexkey { + background-color: #EBEFF6; + font-weight: bold; + border: 1px solid #C4CFE5; + margin: 2px 0px 2px 0; + padding: 2px 10px; + white-space: nowrap; + vertical-align: top; +} + +td.indexvalue { + background-color: #EBEFF6; + border: 1px solid #C4CFE5; + padding: 2px 10px; + margin: 2px 0px; +} + +tr.memlist { + background-color: #EEF1F7; +} + +p.formulaDsp { + text-align: center; +} + +img.formulaDsp { + +} + +img.formulaInl, img.inline { + vertical-align: middle; +} + +div.center { + text-align: center; + margin-top: 0px; + margin-bottom: 0px; + padding: 0px; +} + +div.center img { + border: 0px; +} + +address.footer { + text-align: right; + padding-right: 12px; +} + +img.footer { + border: 0px; + vertical-align: middle; +} + +/* @group Code Colorization */ + +span.keyword { + color: #008000 +} + +span.keywordtype { + color: #604020 +} + +span.keywordflow { + color: #e08000 +} + +span.comment { + color: #800000 +} + +span.preprocessor { + color: #806020 +} + +span.stringliteral { + color: #002080 +} + +span.charliteral { + color: #008080 +} + +span.vhdldigit { + color: #ff00ff +} + +span.vhdlchar { + color: #000000 +} + +span.vhdlkeyword { + color: #700070 +} + +span.vhdllogic { + color: #ff0000 +} + +blockquote { + background-color: #F7F8FB; + border-left: 2px solid #9CAFD4; + margin: 0 24px 0 4px; + padding: 0 12px 0 16px; +} + +blockquote.DocNodeRTL { + border-left: 0; + border-right: 2px solid #9CAFD4; + margin: 0 4px 0 24px; + padding: 0 16px 0 12px; +} + +/* @end */ + +/* +.search { + color: #003399; + font-weight: bold; +} + +form.search { + margin-bottom: 0px; + margin-top: 0px; +} + +input.search { + font-size: 75%; + color: #000080; + font-weight: normal; + background-color: #e8eef2; +} +*/ + +td.tiny { + font-size: 75%; +} + +.dirtab { + padding: 4px; + border-collapse: collapse; + border: 1px solid #A3B4D7; +} + +th.dirtab { + background: #EBEFF6; + font-weight: bold; +} + +hr { + height: 0px; + border: none; + border-top: 1px solid #4A6AAA; +} + +hr.footer { + height: 1px; +} + +/* @group Member Descriptions */ + +table.memberdecls { + border-spacing: 0px; + padding: 0px; +} + +.memberdecls td, .fieldtable tr { + -webkit-transition-property: background-color, box-shadow; + -webkit-transition-duration: 0.5s; + -moz-transition-property: background-color, box-shadow; + -moz-transition-duration: 0.5s; + -ms-transition-property: background-color, box-shadow; + -ms-transition-duration: 0.5s; + -o-transition-property: background-color, box-shadow; + -o-transition-duration: 0.5s; + transition-property: background-color, box-shadow; + transition-duration: 0.5s; +} + +.memberdecls td.glow, .fieldtable tr.glow { + background-color: cyan; + box-shadow: 0 0 15px cyan; +} + +.mdescLeft, .mdescRight, +.memItemLeft, .memItemRight, +.memTemplItemLeft, .memTemplItemRight, .memTemplParams { + background-color: #F9FAFC; + border: none; + margin: 4px; + padding: 1px 0 0 8px; +} + +.mdescLeft, .mdescRight { + padding: 0px 8px 4px 8px; + color: #555; +} + +.memSeparator { + border-bottom: 1px solid #DEE4F0; + line-height: 1px; + margin: 0px; + padding: 0px; +} + +.memItemLeft, .memTemplItemLeft { + white-space: nowrap; +} + +.memItemRight, .memTemplItemRight { + width: 100%; +} + +.memTemplParams { + color: #4665A2; + white-space: nowrap; + font-size: 80%; +} + +/* @end */ + +/* @group Member Details */ + +/* Styles for detailed member documentation */ + +.memtitle { + padding: 8px; + border-top: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + border-top-right-radius: 4px; + border-top-left-radius: 4px; + margin-bottom: -1px; + background-image: url('nav_f.png'); + background-repeat: repeat-x; + background-color: #E2E8F2; + line-height: 1.25; + font-weight: 300; + float:left; +} + +.permalink +{ + font-size: 65%; + display: inline-block; + vertical-align: middle; +} + +.memtemplate { + font-size: 80%; + color: #4665A2; + font-weight: normal; + margin-left: 9px; +} + +.memnav { + background-color: #EBEFF6; + border: 1px solid #A3B4D7; + text-align: center; + margin: 2px; + margin-right: 15px; + padding: 2px; +} + +.mempage { + width: 100%; +} + +.memitem { + padding: 0; + margin-bottom: 10px; + margin-right: 5px; + -webkit-transition: box-shadow 0.5s linear; + -moz-transition: box-shadow 0.5s linear; + -ms-transition: box-shadow 0.5s linear; + -o-transition: box-shadow 0.5s linear; + transition: box-shadow 0.5s linear; + display: table !important; + width: 100%; +} + +.memitem.glow { + box-shadow: 0 0 15px cyan; +} + +.memname { + font-weight: 400; + margin-left: 6px; +} + +.memname td { + vertical-align: bottom; +} + +.memproto, dl.reflist dt { + border-top: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 0px 6px 0px; + color: #253555; + font-weight: bold; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + background-color: #DFE5F1; + /* opera specific markup */ + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + border-top-right-radius: 4px; + /* firefox specific markup */ + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + -moz-border-radius-topright: 4px; + /* webkit specific markup */ + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + -webkit-border-top-right-radius: 4px; + +} + +.overload { + font-family: "courier new",courier,monospace; + font-size: 65%; +} + +.memdoc, dl.reflist dd { + border-bottom: 1px solid #A8B8D9; + border-left: 1px solid #A8B8D9; + border-right: 1px solid #A8B8D9; + padding: 6px 10px 2px 10px; + background-color: #FBFCFD; + border-top-width: 0; + background-image:url('nav_g.png'); + background-repeat:repeat-x; + background-color: #FFFFFF; + /* opera specific markup */ + border-bottom-left-radius: 4px; + border-bottom-right-radius: 4px; + box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); + /* firefox specific markup */ + -moz-border-radius-bottomleft: 4px; + -moz-border-radius-bottomright: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 5px 5px 5px; + /* webkit specific markup */ + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +dl.reflist dt { + padding: 5px; +} + +dl.reflist dd { + margin: 0px 0px 10px 0px; + padding: 5px; +} + +.paramkey { + text-align: right; +} + +.paramtype { + white-space: nowrap; +} + +.paramname { + color: #602020; + white-space: nowrap; +} +.paramname em { + font-style: normal; +} +.paramname code { + line-height: 14px; +} + +.params, .retval, .exception, .tparams { + margin-left: 0px; + padding-left: 0px; +} + +.params .paramname, .retval .paramname, .tparams .paramname, .exception .paramname { + font-weight: bold; + vertical-align: top; +} + +.params .paramtype, .tparams .paramtype { + font-style: italic; + vertical-align: top; +} + +.params .paramdir, .tparams .paramdir { + font-family: "courier new",courier,monospace; + vertical-align: top; +} + +table.mlabels { + border-spacing: 0px; +} + +td.mlabels-left { + width: 100%; + padding: 0px; +} + +td.mlabels-right { + vertical-align: bottom; + padding: 0px; + white-space: nowrap; +} + +span.mlabels { + margin-left: 8px; +} + +span.mlabel { + background-color: #728DC1; + border-top:1px solid #5373B4; + border-left:1px solid #5373B4; + border-right:1px solid #C4CFE5; + border-bottom:1px solid #C4CFE5; + text-shadow: none; + color: white; + margin-right: 4px; + padding: 2px 3px; + border-radius: 3px; + font-size: 7pt; + white-space: nowrap; + vertical-align: middle; +} + + + +/* @end */ + +/* these are for tree view inside a (index) page */ + +div.directory { + margin: 10px 0px; + border-top: 1px solid #9CAFD4; + border-bottom: 1px solid #9CAFD4; + width: 100%; +} + +.directory table { + border-collapse:collapse; +} + +.directory td { + margin: 0px; + padding: 0px; + vertical-align: top; +} + +.directory td.entry { + white-space: nowrap; + padding-right: 6px; + padding-top: 3px; +} + +.directory td.entry a { + outline:none; +} + +.directory td.entry a img { + border: none; +} + +.directory td.desc { + width: 100%; + padding-left: 6px; + padding-right: 6px; + padding-top: 3px; + border-left: 1px solid rgba(0,0,0,0.05); +} + +.directory tr.even { + padding-left: 6px; + background-color: #F7F8FB; +} + +.directory img { + vertical-align: -30%; +} + +.directory .levels { + white-space: nowrap; + width: 100%; + text-align: right; + font-size: 9pt; +} + +.directory .levels span { + cursor: pointer; + padding-left: 2px; + padding-right: 2px; + color: #3D578C; +} + +.arrow { + color: #9CAFD4; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; + cursor: pointer; + font-size: 80%; + display: inline-block; + width: 16px; + height: 22px; +} + +.icon { + font-family: Arial, Helvetica; + font-weight: bold; + font-size: 12px; + height: 14px; + width: 16px; + display: inline-block; + background-color: #728DC1; + color: white; + text-align: center; + border-radius: 4px; + margin-left: 2px; + margin-right: 2px; +} + +.icona { + width: 24px; + height: 22px; + display: inline-block; +} + +.iconfopen { + width: 24px; + height: 18px; + margin-bottom: 4px; + background-image:url('folderopen.png'); + background-position: 0px -4px; + background-repeat: repeat-y; + vertical-align:top; + display: inline-block; +} + +.iconfclosed { + width: 24px; + height: 18px; + margin-bottom: 4px; + background-image:url('folderclosed.png'); + background-position: 0px -4px; + background-repeat: repeat-y; + vertical-align:top; + display: inline-block; +} + +.icondoc { + width: 24px; + height: 18px; + margin-bottom: 4px; + background-image:url('doc.png'); + background-position: 0px -4px; + background-repeat: repeat-y; + vertical-align:top; + display: inline-block; +} + +table.directory { + font: 400 14px Roboto,sans-serif; +} + +/* @end */ + +div.dynheader { + margin-top: 8px; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +address { + font-style: normal; + color: #2A3D61; +} + +table.doxtable caption { + caption-side: top; +} + +table.doxtable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.doxtable td, table.doxtable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.doxtable th { + background-color: #374F7F; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +table.fieldtable { + /*width: 100%;*/ + margin-bottom: 10px; + border: 1px solid #A8B8D9; + border-spacing: 0px; + -moz-border-radius: 4px; + -webkit-border-radius: 4px; + border-radius: 4px; + -moz-box-shadow: rgba(0, 0, 0, 0.15) 2px 2px 2px; + -webkit-box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); + box-shadow: 2px 2px 2px rgba(0, 0, 0, 0.15); +} + +.fieldtable td, .fieldtable th { + padding: 3px 7px 2px; +} + +.fieldtable td.fieldtype, .fieldtable td.fieldname { + white-space: nowrap; + border-right: 1px solid #A8B8D9; + border-bottom: 1px solid #A8B8D9; + vertical-align: top; +} + +.fieldtable td.fieldname { + padding-top: 3px; +} + +.fieldtable td.fielddoc { + border-bottom: 1px solid #A8B8D9; + /*width: 100%;*/ +} + +.fieldtable td.fielddoc p:first-child { + margin-top: 0px; +} + +.fieldtable td.fielddoc p:last-child { + margin-bottom: 2px; +} + +.fieldtable tr:last-child td { + border-bottom: none; +} + +.fieldtable th { + background-image:url('nav_f.png'); + background-repeat:repeat-x; + background-color: #E2E8F2; + font-size: 90%; + color: #253555; + padding-bottom: 4px; + padding-top: 5px; + text-align:left; + font-weight: 400; + -moz-border-radius-topleft: 4px; + -moz-border-radius-topright: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + border-top-left-radius: 4px; + border-top-right-radius: 4px; + border-bottom: 1px solid #A8B8D9; +} + + +.tabsearch { + top: 0px; + left: 10px; + height: 36px; + background-image: url('tab_b.png'); + z-index: 101; + overflow: hidden; + font-size: 13px; +} + +.navpath ul +{ + font-size: 11px; + background-image:url('tab_b.png'); + background-repeat:repeat-x; + background-position: 0 -5px; + height:30px; + line-height:30px; + color:#8AA0CC; + border:solid 1px #C2CDE4; + overflow:hidden; + margin:0px; + padding:0px; +} + +.navpath li +{ + list-style-type:none; + float:left; + padding-left:10px; + padding-right:15px; + background-image:url('bc_s.png'); + background-repeat:no-repeat; + background-position:right; + color:#364D7C; +} + +.navpath li.navelem a +{ + height:32px; + display:block; + text-decoration: none; + outline: none; + color: #283A5D; + font-family: 'Lucida Grande',Geneva,Helvetica,Arial,sans-serif; + text-shadow: 0px 1px 1px rgba(255, 255, 255, 0.9); + text-decoration: none; +} + +.navpath li.navelem a:hover +{ + color:#6884BD; +} + +.navpath li.footer +{ + list-style-type:none; + float:right; + padding-left:10px; + padding-right:15px; + background-image:none; + background-repeat:no-repeat; + background-position:right; + color:#364D7C; + font-size: 8pt; +} + + +div.summary +{ + float: right; + font-size: 8pt; + padding-right: 5px; + width: 50%; + text-align: right; +} + +div.summary a +{ + white-space: nowrap; +} + +table.classindex +{ + margin: 10px; + white-space: nowrap; + margin-left: 3%; + margin-right: 3%; + width: 94%; + border: 0; + border-spacing: 0; + padding: 0; +} + +div.ingroups +{ + font-size: 8pt; + width: 50%; + text-align: left; +} + +div.ingroups a +{ + white-space: nowrap; +} + +div.header +{ + background-image:url('nav_h.png'); + background-repeat:repeat-x; + background-color: #F9FAFC; + margin: 0px; + border-bottom: 1px solid #C4CFE5; +} + +div.headertitle +{ + padding: 5px 5px 5px 10px; +} + +.PageDocRTL-title div.headertitle { + text-align: right; + direction: rtl; +} + +dl { + padding: 0 0 0 0; +} + +/* dl.note, dl.warning, dl.attention, dl.pre, dl.post, dl.invariant, dl.deprecated, dl.todo, dl.test, dl.bug, dl.examples */ +dl.section { + margin-left: 0px; + padding-left: 0px; +} + +dl.section.DocNodeRTL { + margin-right: 0px; + padding-right: 0px; +} + +dl.note { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #D0C000; +} + +dl.note.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #D0C000; +} + +dl.warning, dl.attention { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #FF0000; +} + +dl.warning.DocNodeRTL, dl.attention.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #FF0000; +} + +dl.pre, dl.post, dl.invariant { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #00D000; +} + +dl.pre.DocNodeRTL, dl.post.DocNodeRTL, dl.invariant.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #00D000; +} + +dl.deprecated { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #505050; +} + +dl.deprecated.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #505050; +} + +dl.todo { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #00C0E0; +} + +dl.todo.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #00C0E0; +} + +dl.test { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #3030E0; +} + +dl.test.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #3030E0; +} + +dl.bug { + margin-left: -7px; + padding-left: 3px; + border-left: 4px solid; + border-color: #C08050; +} + +dl.bug.DocNodeRTL { + margin-left: 0; + padding-left: 0; + border-left: 0; + margin-right: -7px; + padding-right: 3px; + border-right: 4px solid; + border-color: #C08050; +} + +dl.section dd { + margin-bottom: 6px; +} + + +#projectlogo +{ + text-align: center; + vertical-align: bottom; + border-collapse: separate; +} + +#projectlogo img +{ + border: 0px none; +} + +#projectalign +{ + vertical-align: middle; +} + +#projectname +{ + font: 300% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 2px 0px; +} + +#projectbrief +{ + font: 120% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#projectnumber +{ + font: 50% Tahoma, Arial,sans-serif; + margin: 0px; + padding: 0px; +} + +#titlearea +{ + padding: 0px; + margin: 0px; + width: 100%; + border-bottom: 1px solid #5373B4; +} + +.image +{ + text-align: center; +} + +.dotgraph +{ + text-align: center; +} + +.mscgraph +{ + text-align: center; +} + +.plantumlgraph +{ + text-align: center; +} + +.diagraph +{ + text-align: center; +} + +.caption +{ + font-weight: bold; +} + +div.zoom +{ + border: 1px solid #90A5CE; +} + +dl.citelist { + margin-bottom:50px; +} + +dl.citelist dt { + color:#334975; + float:left; + font-weight:bold; + margin-right:10px; + padding:5px; + text-align:right; + width:52px; +} + +dl.citelist dd { + margin:2px 0 2px 72px; + padding:5px 0; +} + +div.toc { + padding: 14px 25px; + background-color: #F4F6FA; + border: 1px solid #D8DFEE; + border-radius: 7px 7px 7px 7px; + float: right; + height: auto; + margin: 0 8px 10px 10px; + width: 200px; +} + +.PageDocRTL-title div.toc { + float: left !important; + text-align: right; +} + +div.toc li { + background: url("bdwn.png") no-repeat scroll 0 5px transparent; + font: 10px/1.2 Verdana,DejaVu Sans,Geneva,sans-serif; + margin-top: 5px; + padding-left: 10px; + padding-top: 2px; +} + +.PageDocRTL-title div.toc li { + background-position-x: right !important; + padding-left: 0 !important; + padding-right: 10px; +} + +div.toc h3 { + font: bold 12px/1.2 Arial,FreeSans,sans-serif; + color: #4665A2; + border-bottom: 0 none; + margin: 0; +} + +div.toc ul { + list-style: none outside none; + border: medium none; + padding: 0px; +} + +div.toc li.level1 { + margin-left: 0px; +} + +div.toc li.level2 { + margin-left: 15px; +} + +div.toc li.level3 { + margin-left: 30px; +} + +div.toc li.level4 { + margin-left: 45px; +} + +span.emoji { + /* font family used at the site: https://unicode.org/emoji/charts/full-emoji-list.html + * font-family: "Noto Color Emoji", "Apple Color Emoji", "Segoe UI Emoji", Times, Symbola, Aegyptus, Code2000, Code2001, Code2002, Musica, serif, LastResort; + */ +} + +.PageDocRTL-title div.toc li.level1 { + margin-left: 0 !important; + margin-right: 0; +} + +.PageDocRTL-title div.toc li.level2 { + margin-left: 0 !important; + margin-right: 15px; +} + +.PageDocRTL-title div.toc li.level3 { + margin-left: 0 !important; + margin-right: 30px; +} + +.PageDocRTL-title div.toc li.level4 { + margin-left: 0 !important; + margin-right: 45px; +} + +.inherit_header { + font-weight: bold; + color: gray; + cursor: pointer; + -webkit-touch-callout: none; + -webkit-user-select: none; + -khtml-user-select: none; + -moz-user-select: none; + -ms-user-select: none; + user-select: none; +} + +.inherit_header td { + padding: 6px 0px 2px 5px; +} + +.inherit { + display: none; +} + +tr.heading h2 { + margin-top: 12px; + margin-bottom: 4px; +} + +/* tooltip related style info */ + +.ttc { + position: absolute; + display: none; +} + +#powerTip { + cursor: default; + white-space: nowrap; + background-color: white; + border: 1px solid gray; + border-radius: 4px 4px 4px 4px; + box-shadow: 1px 1px 7px gray; + display: none; + font-size: smaller; + max-width: 80%; + opacity: 0.9; + padding: 1ex 1em 1em; + position: absolute; + z-index: 2147483647; +} + +#powerTip div.ttdoc { + color: grey; + font-style: italic; +} + +#powerTip div.ttname a { + font-weight: bold; +} + +#powerTip div.ttname { + font-weight: bold; +} + +#powerTip div.ttdeci { + color: #006318; +} + +#powerTip div { + margin: 0px; + padding: 0px; + font: 12px/16px Roboto,sans-serif; +} + +#powerTip:before, #powerTip:after { + content: ""; + position: absolute; + margin: 0px; +} + +#powerTip.n:after, #powerTip.n:before, +#powerTip.s:after, #powerTip.s:before, +#powerTip.w:after, #powerTip.w:before, +#powerTip.e:after, #powerTip.e:before, +#powerTip.ne:after, #powerTip.ne:before, +#powerTip.se:after, #powerTip.se:before, +#powerTip.nw:after, #powerTip.nw:before, +#powerTip.sw:after, #powerTip.sw:before { + border: solid transparent; + content: " "; + height: 0; + width: 0; + position: absolute; +} + +#powerTip.n:after, #powerTip.s:after, +#powerTip.w:after, #powerTip.e:after, +#powerTip.nw:after, #powerTip.ne:after, +#powerTip.sw:after, #powerTip.se:after { + border-color: rgba(255, 255, 255, 0); +} + +#powerTip.n:before, #powerTip.s:before, +#powerTip.w:before, #powerTip.e:before, +#powerTip.nw:before, #powerTip.ne:before, +#powerTip.sw:before, #powerTip.se:before { + border-color: rgba(128, 128, 128, 0); +} + +#powerTip.n:after, #powerTip.n:before, +#powerTip.ne:after, #powerTip.ne:before, +#powerTip.nw:after, #powerTip.nw:before { + top: 100%; +} + +#powerTip.n:after, #powerTip.ne:after, #powerTip.nw:after { + border-top-color: #FFFFFF; + border-width: 10px; + margin: 0px -10px; +} +#powerTip.n:before { + border-top-color: #808080; + border-width: 11px; + margin: 0px -11px; +} +#powerTip.n:after, #powerTip.n:before { + left: 50%; +} + +#powerTip.nw:after, #powerTip.nw:before { + right: 14px; +} + +#powerTip.ne:after, #powerTip.ne:before { + left: 14px; +} + +#powerTip.s:after, #powerTip.s:before, +#powerTip.se:after, #powerTip.se:before, +#powerTip.sw:after, #powerTip.sw:before { + bottom: 100%; +} + +#powerTip.s:after, #powerTip.se:after, #powerTip.sw:after { + border-bottom-color: #FFFFFF; + border-width: 10px; + margin: 0px -10px; +} + +#powerTip.s:before, #powerTip.se:before, #powerTip.sw:before { + border-bottom-color: #808080; + border-width: 11px; + margin: 0px -11px; +} + +#powerTip.s:after, #powerTip.s:before { + left: 50%; +} + +#powerTip.sw:after, #powerTip.sw:before { + right: 14px; +} + +#powerTip.se:after, #powerTip.se:before { + left: 14px; +} + +#powerTip.e:after, #powerTip.e:before { + left: 100%; +} +#powerTip.e:after { + border-left-color: #FFFFFF; + border-width: 10px; + top: 50%; + margin-top: -10px; +} +#powerTip.e:before { + border-left-color: #808080; + border-width: 11px; + top: 50%; + margin-top: -11px; +} + +#powerTip.w:after, #powerTip.w:before { + right: 100%; +} +#powerTip.w:after { + border-right-color: #FFFFFF; + border-width: 10px; + top: 50%; + margin-top: -10px; +} +#powerTip.w:before { + border-right-color: #808080; + border-width: 11px; + top: 50%; + margin-top: -11px; +} + +@media print +{ + #top { display: none; } + #side-nav { display: none; } + #nav-path { display: none; } + body { overflow:visible; } + h1, h2, h3, h4, h5, h6 { page-break-after: avoid; } + .summary { display: none; } + .memitem { page-break-inside: avoid; } + #doc-content + { + margin-left:0 !important; + height:auto !important; + width:auto !important; + overflow:inherit; + display:inline; + } +} + +/* @group Markdown */ + +table.markdownTable { + border-collapse:collapse; + margin-top: 4px; + margin-bottom: 4px; +} + +table.markdownTable td, table.markdownTable th { + border: 1px solid #2D4068; + padding: 3px 7px 2px; +} + +table.markdownTable tr { +} + +th.markdownTableHeadLeft, th.markdownTableHeadRight, th.markdownTableHeadCenter, th.markdownTableHeadNone { + background-color: #374F7F; + color: #FFFFFF; + font-size: 110%; + padding-bottom: 4px; + padding-top: 5px; +} + +th.markdownTableHeadLeft, td.markdownTableBodyLeft { + text-align: left +} + +th.markdownTableHeadRight, td.markdownTableBodyRight { + text-align: right +} + +th.markdownTableHeadCenter, td.markdownTableBodyCenter { + text-align: center +} + +.DocNodeRTL { + text-align: right; + direction: rtl; +} + +.DocNodeLTR { + text-align: left; + direction: ltr; +} + +table.DocNodeRTL { + width: auto; + margin-right: 0; + margin-left: auto; +} + +table.DocNodeLTR { + width: auto; + margin-right: auto; + margin-left: 0; +} + +tt, code, kbd, samp +{ + display: inline-block; + direction:ltr; +} +/* @end */ + +u { + text-decoration: underline; +} + diff --git a/doxygen.svg b/doxygen.svg new file mode 100644 index 00000000..d42dad52 --- /dev/null +++ b/doxygen.svg @@ -0,0 +1,26 @@ + + + + + + + + + + + + + + + + + + + + + + + + + + diff --git a/dynsections.js b/dynsections.js new file mode 100644 index 00000000..3174bd7b --- /dev/null +++ b/dynsections.js @@ -0,0 +1,121 @@ +/* + @licstart The following is the entire license notice for the JavaScript code in this file. + + The MIT License (MIT) + + Copyright (C) 1997-2020 by Dimitri van Heesch + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software + and associated documentation files (the "Software"), to deal in the Software without restriction, + including without limitation the rights to use, copy, modify, merge, publish, distribute, + sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or + substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING + BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + @licend The above is the entire license notice for the JavaScript code in this file + */ +function toggleVisibility(linkObj) +{ + var base = $(linkObj).attr('id'); + var summary = $('#'+base+'-summary'); + var content = $('#'+base+'-content'); + var trigger = $('#'+base+'-trigger'); + var src=$(trigger).attr('src'); + if (content.is(':visible')===true) { + content.hide(); + summary.show(); + $(linkObj).addClass('closed').removeClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-8)+'closed.png'); + } else { + content.show(); + summary.hide(); + $(linkObj).removeClass('closed').addClass('opened'); + $(trigger).attr('src',src.substring(0,src.length-10)+'open.png'); + } + return false; +} + +function updateStripes() +{ + $('table.directory tr'). + removeClass('even').filter(':visible:even').addClass('even'); +} + +function toggleLevel(level) +{ + $('table.directory tr').each(function() { + var l = this.id.split('_').length-1; + var i = $('#img'+this.id.substring(3)); + var a = $('#arr'+this.id.substring(3)); + if (l + + + + + + +libgrape-lite: File List + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
+
File List
+
+
+
Here is a list of all documented files with brief descriptions:
+
[detail level 123]
+ + + +
  grape
  utils
 atomic_ops.h
+
+
+ + + + diff --git a/folderclosed.png b/folderclosed.png new file mode 100644 index 0000000000000000000000000000000000000000..bb8ab35edce8e97554e360005ee9fc5bffb36e66 GIT binary patch literal 616 zcmV-u0+;=XP)a9#ETzayK)T~Jw&MMH>OIr#&;dC}is*2Mqdf&akCc=O@`qC+4i z5Iu3w#1M@KqXCz8TIZd1wli&kkl2HVcAiZ8PUn5z_kG@-y;?yK06=cA0U%H0PH+kU zl6dp}OR(|r8-RG+YLu`zbI}5TlOU6ToR41{9=uz^?dGTNL;wIMf|V3`d1Wj3y!#6` zBLZ?xpKR~^2x}?~zA(_NUu3IaDB$tKma*XUdOZN~c=dLt_h_k!dbxm_*ibDM zlFX`g{k$X}yIe%$N)cn1LNu=q9_CS)*>A zsX_mM4L@`(cSNQKMFc$RtYbx{79#j-J7hk*>*+ZZhM4Hw?I?rsXCi#mRWJ=-0LGV5a-WR0Qgt<|Nqf)C-@80`5gIz45^_20000IqP)X=#(TiCT&PiIIVc55T}TU}EUh*{q$|`3@{d>{Tc9Bo>e= zfmF3!f>fbI9#GoEHh0f`i5)wkLpva0ztf%HpZneK?w-7AK@b4Itw{y|Zd3k!fH?q2 zlhckHd_V2M_X7+)U&_Xcfvtw60l;--DgZmLSw-Y?S>)zIqMyJ1#FwLU*%bl38ok+! zh78H87n`ZTS;uhzAR$M`zZ`bVhq=+%u9^$5jDplgxd44}9;IRqUH1YHH|@6oFe%z( zo4)_>E$F&^P-f(#)>(TrnbE>Pefs9~@iN=|)Rz|V`sGfHNrJ)0gJb8xx+SBmRf@1l zvuzt=vGfI)<-F9!o&3l?>9~0QbUDT(wFdnQPv%xdD)m*g%!20>Bc9iYmGAp<9YAa( z0QgYgTWqf1qN++Gqp z8@AYPTB3E|6s=WLG?xw0tm|U!o=&zd+H0oRYE;Dbx+Na9s^STqX|Gnq%H8s(nGDGJ j8vwW|`Ts`)fSK|Kx=IK@RG@g200000NkvXXu0mjfauFEA literal 0 HcmV?d00001 diff --git a/functions.html b/functions.html new file mode 100644 index 00000000..01648177 --- /dev/null +++ b/functions.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: Class Members + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- c -

+
+ + + + diff --git a/functions_d.html b/functions_d.html new file mode 100644 index 00000000..f389be90 --- /dev/null +++ b/functions_d.html @@ -0,0 +1,84 @@ + + + + + + + +libgrape-lite: Class Members + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- d -

+
+ + + + diff --git a/functions_f.html b/functions_f.html new file mode 100644 index 00000000..62c3c814 --- /dev/null +++ b/functions_f.html @@ -0,0 +1,127 @@ + + + + + + + +libgrape-lite: Class Members + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- f -

+
+ + + + diff --git a/functions_func.html b/functions_func.html new file mode 100644 index 00000000..a5bb54d3 --- /dev/null +++ b/functions_func.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- c -

+
+ + + + diff --git a/functions_func_d.html b/functions_func_d.html new file mode 100644 index 00000000..1cc79956 --- /dev/null +++ b/functions_func_d.html @@ -0,0 +1,84 @@ + + + + + + + +libgrape-lite: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- d -

+
+ + + + diff --git a/functions_func_f.html b/functions_func_f.html new file mode 100644 index 00000000..5cc9fbd3 --- /dev/null +++ b/functions_func_f.html @@ -0,0 +1,127 @@ + + + + + + + +libgrape-lite: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- f -

+
+ + + + diff --git a/functions_func_g.html b/functions_func_g.html new file mode 100644 index 00000000..cfba30a5 --- /dev/null +++ b/functions_func_g.html @@ -0,0 +1,194 @@ + + + + + + + +libgrape-lite: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- g -

+
+ + + + diff --git a/functions_func_h.html b/functions_func_h.html new file mode 100644 index 00000000..96b44d56 --- /dev/null +++ b/functions_func_h.html @@ -0,0 +1,83 @@ + + + + + + + +libgrape-lite: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ + + + + + diff --git a/functions_func_i.html b/functions_func_i.html new file mode 100644 index 00000000..6b6543ea --- /dev/null +++ b/functions_func_i.html @@ -0,0 +1,133 @@ + + + + + + + +libgrape-lite: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- i -

+
+ + + + diff --git a/functions_func_l.html b/functions_func_l.html new file mode 100644 index 00000000..fabafc15 --- /dev/null +++ b/functions_func_l.html @@ -0,0 +1,83 @@ + + + + + + + +libgrape-lite: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ + + + + + diff --git a/functions_func_o.html b/functions_func_o.html new file mode 100644 index 00000000..ad363422 --- /dev/null +++ b/functions_func_o.html @@ -0,0 +1,89 @@ + + + + + + + +libgrape-lite: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ + + + + + diff --git a/functions_func_p.html b/functions_func_p.html new file mode 100644 index 00000000..7cac860b --- /dev/null +++ b/functions_func_p.html @@ -0,0 +1,96 @@ + + + + + + + +libgrape-lite: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ + + + + + diff --git a/functions_func_r.html b/functions_func_r.html new file mode 100644 index 00000000..c9d84fdb --- /dev/null +++ b/functions_func_r.html @@ -0,0 +1,78 @@ + + + + + + + +libgrape-lite: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- r -

+
+ + + + diff --git a/functions_func_s.html b/functions_func_s.html new file mode 100644 index 00000000..99483bd1 --- /dev/null +++ b/functions_func_s.html @@ -0,0 +1,154 @@ + + + + + + + +libgrape-lite: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- s -

+
+ + + + diff --git a/functions_func_t.html b/functions_func_t.html new file mode 100644 index 00000000..84fd6db3 --- /dev/null +++ b/functions_func_t.html @@ -0,0 +1,85 @@ + + + + + + + +libgrape-lite: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ + + + + + diff --git a/functions_func_u.html b/functions_func_u.html new file mode 100644 index 00000000..a9e953c9 --- /dev/null +++ b/functions_func_u.html @@ -0,0 +1,81 @@ + + + + + + + +libgrape-lite: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+  + +

- u -

+
+ + + + diff --git a/functions_func_v.html b/functions_func_v.html new file mode 100644 index 00000000..c79d79ae --- /dev/null +++ b/functions_func_v.html @@ -0,0 +1,82 @@ + + + + + + + +libgrape-lite: Class Members - Functions + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ + + + + + diff --git a/functions_g.html b/functions_g.html new file mode 100644 index 00000000..4facdf75 --- /dev/null +++ b/functions_g.html @@ -0,0 +1,194 @@ + + + + + + + +libgrape-lite: Class Members + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- g -

+
+ + + + diff --git a/functions_h.html b/functions_h.html new file mode 100644 index 00000000..02ef1ea6 --- /dev/null +++ b/functions_h.html @@ -0,0 +1,83 @@ + + + + + + + +libgrape-lite: Class Members + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ + + + + + diff --git a/functions_i.html b/functions_i.html new file mode 100644 index 00000000..6578c390 --- /dev/null +++ b/functions_i.html @@ -0,0 +1,133 @@ + + + + + + + +libgrape-lite: Class Members + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- i -

+
+ + + + diff --git a/functions_l.html b/functions_l.html new file mode 100644 index 00000000..a30f2826 --- /dev/null +++ b/functions_l.html @@ -0,0 +1,83 @@ + + + + + + + +libgrape-lite: Class Members + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- l -

+
+ + + + diff --git a/functions_o.html b/functions_o.html new file mode 100644 index 00000000..c08b6a9e --- /dev/null +++ b/functions_o.html @@ -0,0 +1,89 @@ + + + + + + + +libgrape-lite: Class Members + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ + + + + + diff --git a/functions_p.html b/functions_p.html new file mode 100644 index 00000000..d246c34b --- /dev/null +++ b/functions_p.html @@ -0,0 +1,96 @@ + + + + + + + +libgrape-lite: Class Members + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ + + + + + diff --git a/functions_r.html b/functions_r.html new file mode 100644 index 00000000..4aa6bb1c --- /dev/null +++ b/functions_r.html @@ -0,0 +1,78 @@ + + + + + + + +libgrape-lite: Class Members + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- r -

+
+ + + + diff --git a/functions_s.html b/functions_s.html new file mode 100644 index 00000000..e8cc5e6c --- /dev/null +++ b/functions_s.html @@ -0,0 +1,154 @@ + + + + + + + +libgrape-lite: Class Members + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- s -

+
+ + + + diff --git a/functions_t.html b/functions_t.html new file mode 100644 index 00000000..fd493613 --- /dev/null +++ b/functions_t.html @@ -0,0 +1,85 @@ + + + + + + + +libgrape-lite: Class Members + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ + + + + + diff --git a/functions_u.html b/functions_u.html new file mode 100644 index 00000000..9bf1b433 --- /dev/null +++ b/functions_u.html @@ -0,0 +1,81 @@ + + + + + + + +libgrape-lite: Class Members + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- u -

+
+ + + + diff --git a/functions_v.html b/functions_v.html new file mode 100644 index 00000000..e0c07f8e --- /dev/null +++ b/functions_v.html @@ -0,0 +1,82 @@ + + + + + + + +libgrape-lite: Class Members + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
Here is a list of all documented class members with links to the class documentation for each member:
+ +

- v -

+
+ + + + diff --git a/hierarchy.html b/hierarchy.html new file mode 100644 index 00000000..54d426ab --- /dev/null +++ b/hierarchy.html @@ -0,0 +1,368 @@ + + + + + + + +libgrape-lite: Class Hierarchy + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
+
Class Hierarchy
+
+
+
This inheritance list is sorted roughly, but not completely, alphabetically:
+
[detail level 12345]
+ + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
 C_Alloc
 Cgrape::Array< _Tp, _Alloc >::_ConstructTransaction
 Cgrape::add_const_ref< T >
 Cgrape::add_const_ref< const T & >
 Cgrape::add_const_ref< T & >
 Cgrape::add_ref< T >
 Cgrape::add_ref< T & >
 Cgrape::AdjList< VID_T, EDATA_T >A iteratable adjencent list of a vertex. The list contains all neighbors in format of Nbr, which contains the other Node and the data on the Edge
 Cgrape::mutable_csr_impl::AdjList< NBR_T >
 Cgrape::AutoParallelMessageManager< FRAG_T >::ap_event
 Cgrape::batch_shuffle_message_manager_impl::ArchiveShuffle< MESSAGE_T >
 Cgrape::Array< _Tp, _Alloc >Array a std::vector-like container type without reserving memory
 Cgrape::Array< EmptyType, _Alloc >Template specialization of Array for EmptyType, without consuming extra memory for EmptyType but provides same interfaces with Array of usual data types
 Cgrape::Array< nbr_t *, grape::DefaultAllocator< nbr_t * > >
 Cgrape::Array< nbr_t, grape::DefaultAllocator< nbr_t > >
 Cgrape::Array< T, Allocator< T > >
 Cgrape::Array< T, grape::Allocator< T > >
 Cgrape::Array< T, grape::DefaultAllocator< T > >
 Cgrape::Array< VDATA_T, grape::DefaultAllocator< VDATA_T > >
 Cgrape::Array< VID_T, grape::DefaultAllocator< VID_T > >
 Cgrape::cuda::ArrayView< T >
 Cgrape::cuda::ArrayView< char >
 Cgrape::cuda::ArrayView< fid_t * >
 Cgrape::cuda::ArrayView< fid_t >
 Cgrape::cuda::ArrayView< grape::cuda::ArrayView< grape::Nbr * > >
 Cgrape::cuda::ArrayView< grape::cuda::ArrayView< Vertex< VID_T > > >
 Cgrape::cuda::ArrayView< grape::cuda::dev::InArchive >
 Cgrape::cuda::ArrayView< grape::Edge >
 Cgrape::cuda::ArrayView< grape::Nbr * >
 Cgrape::cuda::ArrayView< grape::Nbr >
 Cgrape::cuda::ArrayView< uint32_t >
 Cgrape::cuda::ArrayView< uint64_t >
 Cgrape::cuda::ArrayView< VDATA_T >
 Cgrape::cuda::ArrayView< VertexRange< VID_T > >
 Cgrape::cuda::ArrayView< VID_T >
 Cgrape::AutoAppBase< FRAG_T, CONTEXT_T >AutoAppBase is a base class for auto-parallel apps. It contains an AutoParallelMessageManager to process messages implicitly during the computation
 Cgrape::BasicFragmentLoader< FRAG_T, IOADAPTOR_T >
 Cgrape::BasicFragmentLoader< fragment_t, io_adaptor_t >
 Cgrape::BasicFragmentMutator< FRAG_T >
 Cgrape::BatchShuffleAppBase< FRAG_T, CONTEXT_T >
 Cgrape::cuda::BatchShuffleAppBase< FRAG_T, CONTEXT_T >GPUAppBase is a base class for GPU apps. Users can process messages in a more flexible way in this kind of app. It contains an GPUMessageManager to process messages, which enables send/receive messages during computation. This strategy improves performance by overlapping the communication time and the evaluation time
 Cgrape::cuda::BatchShuffleMessageManager
 Cgrape::cuda::Bitset< SIZE_T >
 Cgrape::cuda::dev::Bitset< SIZE_T >
 Cgrape::cuda::dev::Bitset< uint32_t >
 Cgrape::cuda::dev::Bitset< uint64_t >
 Cgrape::cuda::Bitset< VID_T >
 Cgrape::mutable_csr_impl::Blob< VID_T, T >
 Cgrape::mutable_csr_impl::Blob< vid_t, grape::Nbr >
 Cgrape::BlockingQueue< T >A concurrent queue based on condition_variables and can be accessed by multi-producers and multi-consumers simultaneously
 Cgrape::BlockingQueue< fid_t >
 Cgrape::BlockingQueue< std::pair< fid_t, grape::InArchive > >
 Cgrape::BlockingQueue< std::pair< fid_t, grape::MicroBuffer > >
 Cgrape::sync_comm::CommImpl< T, Enable >
 Cgrape::sync_comm::CommImpl< IdIndexer< OID_T, VID_T > >
 Cgrape::sync_comm::CommImpl< InArchive, void >
 Cgrape::sync_comm::CommImpl< OutArchive, void >
 Cgrape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if< std::is_pod< T >::value >::type >
 Cgrape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if<!std::is_pod< T >::value >::type >
 Cgrape::sync_comm::CommImpl< StringViewVector, void >
 Cgrape::sync_comm::CommImpl< T, typename std::enable_if< std::is_pod< T >::value >::type >
 Cgrape::CommSpecCommSpec records the mappings of fragments, workers, and the threads(tasks) in each worker
 Cgrape::CommunicatorCommunicator provides methods to implement distributed aggregation, such as Min/Max/Sum
 Cgrape::cuda::Communicator
 Cgrape::AdjList< VID_T, EDATA_T >::const_iterator
 Cgrape::Array< EmptyType, _Alloc >::const_iterator
 Cgrape::ConstAdjList< VID_T, EDATA_T >::const_iterator
 Cgrape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iterator
 Cgrape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iterator
 Cgrape::ConstAdjList< VID_T, EDATA_T >A immutable iteratable adjencent list of a vertex. The list contains all neighbors in format of Nbr, which contains the other Node and the data on the Edge
 Cgrape::ContextBaseContextBase is the base class for all user-defined contexts. A context manages data through the whole computation. The data won't be cleared during supersteps
 Cgrape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >
 Cgrape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >
 CCSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T, HashPartitioner< OID_T >> > >
 Cgrape::cuda::CTAWorkScheduler< VID_T, EDATA_T, TMetaData >
 Cgrape::DefaultAllocator< _Tp >Allocator used for grape containers, i.e., <Array>
 Cgrape::DeltaVarintDecoder< T >
 Cgrape::DeltaVarintEncoder< T >
 Cgrape::DeMutableCSR< VID_T, NBR_T >
 Cgrape::DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >
 Cgrape::DeMutableCSRBuilder< VID_T, NBR_T >
 Cgrape::DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >
 Cgrape::cuda::DenseVertexSet< VID_T >A vertex set with dense vertices
 Cgrape::cuda::dev::DenseVertexSet< VID_T >
 Cgrape::DenseVertexSet< VERTEX_SET_T >A vertex set with dense vertices
 Cgrape::DenseVertexSet< DualVertexRange< VID_T > >
 Cgrape::DenseVertexSet< VertexRange< VID_T > >
 Cgrape::DenseVertexSet< VertexVector< VID_T > >
 Cgrape::DestListDestination list for message exchange. A message may need to be sent to all the fragments in the DestList
 Cgrape::cuda::DeviceBuffer< T >
 Cgrape::cuda::dev::DeviceFragment< OID_T, VID_T, VDATA_T, EDATA_T, _load_strategy >
 Cgrape::DualVertexRange< VID_T >
 Cgrape::Edge< VID_T, EDATA_T >Edge representation
 Cgrape::Edge< VID_T, EmptyType >Partial specialization for Edge with EmptyType on edge_data
 Cgrape::Edge< VID_T, grape::EmptyType >
 Cgrape::cuda::empty_np
 Cgrape::EmptyTypeEmptyType is the placeholder of VDATA_T and EDATA_T for graphs without data on vertices and edges
 Cgrape::cuda::Event
 Cgrape::EVFragmentLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >EVFragmentLoader is a loader to load fragments from separated efile and vfile
 Cgrape::EVFragmentMutator< FRAG_T, IOADAPTOR_T >
 Cgrape::EVFragmentRebalanceLoader< FRAG_T, IOADAPTOR_T, LINE_PARSER_T >EVFragmentLoader is a loader to load fragments from separated efile and vfile
 Cgrape::FilterAdjList< VID_T, EDATA_T, PRED_T >
 Cgrape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >
 Cgrape::frag_shuffle_header
 Cgrape::FragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, TRAITS_T >FragmentBase is the base class for fragments
 Cgrape::get_buffer_helper< index, First, Rest >
 Cgrape::get_buffer_helper< 0, First, Rest... >
 Cgrape::GlobalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >
 Cgrape::cuda::GPUAppBase< FRAG_T, CONTEXT_T >GPUAppBase is a base class for GPU apps. Users can process messages in a more flexible way in this kind of app. It contains an GPUMessageManager to process messages, which enables send/receive messages during computation. This strategy improves performance by overlapping the communication time and the evaluation time
 Cgrape::cuda::GPUBatchShuffleWorker< APP_T >
 Cgrape::cuda::GPUMessageManager
 Cgrape::cuda::GPUWorker< APP_T >
 Cstd::hash< grape::Vertex< T > >
 Cgrape::HashPartitioner< OID_T >HashPartitoner is a partitioner with the strategy of hashing on original vertex_ids
 Cgrape::HashPartitioner< std::string >
 Cgrape::IdenticalHasher< T >
 Cgrape::IdenticalHasher< uint32_t >
 Cgrape::IdenticalHasher< uint64_t >
 Cgrape::IdHasher< T >
 Cgrape::IdHasher< uint32_t >
 Cgrape::IdHasher< uint64_t >
 Cgrape::IdIndexer< KEY_T, INDEX_T >
 Cgrape::IdIndexer< internal_oid_t, VID_T >
 Cgrape::IdParser< VID_T >
 Cgrape::cuda::IEvent
 Cgrape::ImmutableCSR< VID_T, NBR_T >
 Cgrape::ImmutableCSR< VID_T, fid_t >
 Cgrape::ImmutableCSRBuild< VID_T, NBR_T >
 Cgrape::ImmutableCSRStreamBuilder< VID_T, NBR_T >
 Cgrape::ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >
 Cgrape::cuda::dev::InArchive
 Cgrape::cuda::InArchive
 Cgrape::InArchiveInArchive is an archived object for serializing objects
 Cgrape::cuda::InArchiveGroup
 Cgrape::integer_sequence< T, Ints >
 Cgrape::integer_sequence< T, Is... >
 Cgrape::InternalOID< T >
 Cgrape::InternalOID< std::string >
 Cgrape::IOAdaptorBaseIOAdaptorBase is the base class of I/O adaptors
 Cgrape::batch_shuffle_message_manager_impl::IsRange< FRAG_T >
 Cgrape::ISyncBufferISyncBuffer is a base class of SyncBuffer, which is used for auto parallelization
 Cgrape::AdjList< VID_T, EDATA_T >::iterator
 Cgrape::Array< EmptyType, _Alloc >::iterator
 Cgrape::DualVertexRange< VID_T >::iterator
 Cgrape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iterator
 Cgrape::VertexRange< T >::iterator
 Cgrape::IteratorPair< T >IteratorPair is a wrapper for begin and end iterators
 Cgrape::id_indexer_impl::KeyBuffer< T >
 Cgrape::id_indexer_impl::KeyBuffer< KEY_T >
 Cgrape::id_indexer_impl::KeyBuffer< nonstd::string_view >
 Cgrape::LineParserBase< OID_T, VDATA_T, EDATA_T >LineParserBase is the base class for line parsers
 Cgrape::LoadGraphSpecLoadGraphSpec determines the specification to load a graph
 Cgrape::LocalVertexMapBuilder< OID_T, VID_T, PARTITIONER_T >
 Cgrape::make_integer_sequence< T, N, Is >
 Cgrape::cuda::Marker
 Cgrape::MessageBufferPool
 Cgrape::MessageInBufferMessageInBuffer holds a grape::OutArchive, which contains a bunch of messages. Used By JavaParallelMessageManager to process messages in a parallel manner
 Cgrape::cuda::dev::MessageManager
 Cgrape::MessageManagerBaseMessageManagerBase is the base class for message managers
 Cgrape::cuda::dev::MFLCounter< T >
 Cgrape::MicroBuffer
 Cgrape::MutableCSR< VID_T, NBR_T >
 Cgrape::MutableCSR< VID_T, grape::Nbr< VID_T, EDATA_T > >
 Cgrape::MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >
 Cgrape::MutableCSRBuilder< VID_T, NBR_T >
 Cgrape::MutableCSRBuilder< VID_T, grape::Nbr< VID_T, EDATA_T > >
 Cgrape::MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >
 Cgrape::MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >
 Cgrape::Mutation< ID_T, VDATA_T, EDATA_T >
 Cgrape::Mutation< vid_t, vdata_t, edata_t >
 Cgrape::Nbr< VID_T, EDATA_T >A neighbor of a vertex in the graph
 Cgrape::Nbr< VID_T, EmptyType >A neighbor of a vertex in the graph. (partial specialization with Empty edge data.)
 Cgrape::Nbr< VID_T, grape::EmptyType >
 Cgrape::NonblockingQueue< T >A concurrent queue guarded by a spinlock and can be accessed by multi-producers and multi-consumers simultaneously
 Cgrape::cuda::np_local< VID_T, EDATA_T, TMetaData >
 Cgrape::cuda::np_shared< ts_type, TTB, TWP, TFG >
 CNumericTraits
 Cgrape::cuda::dev::OutArchive
 Cgrape::cuda::OutArchive
 Cgrape::OutArchiveOutArchive is an archived object for deserializing objects
 Cgrape::cuda::OutArchiveGroup
 Cgrape::ParallelAppBase< FRAG_T, CONTEXT_T, MESSAGE_MANAGER_T >ParallelAppBase is a base class for parallel apps. Users can process messages in a more flexible way in this kind of app. It contains an ParallelMessageManager to process messages, which enables send/receive messages during computation. This strategy improves performance by overlapping the communication time and the evaluation time
 Cgrape::cuda::ParallelEngine
 Cgrape::ParallelEngine
 Cgrape::ParallelEngineSpec
 Cgrape::batch_shuffle_message_manager_impl::PodShuffle< FRAG_T, MESSAGE_T >
 Cgrape::batch_shuffle_message_manager_impl::PostProcessBase
 Cgrape::PrepareConf
 Cgrape::cuda::dev::Queue< T, SIZE_T >
 Cgrape::cuda::Queue< T, SIZE_T >
 Cgrape::cuda::dev::Queue< T, uint32_t >
 Cgrape::cuda::dev::Queue< T, uint64_t >
 Cgrape::cuda::RangeMarker
 Cgrape::RefBitset
 Cgrape::SegmentedPartitioner< OID_T >SegmentedPartitioner is a partitioner with a strategy of chunking original vertex_ids
 Cgrape::SegmentedPartitioner< std::string >
 Cgrape::SerializedSize< T >
 Cgrape::SerializedSize< DeltaVarintEncoder< T > >
 Cgrape::SerializedSize< EmptyType >
 Cgrape::SerializedSize< nonstd::string_view >
 Cgrape::SerializedSize< std::string >
 Cgrape::SerializedSize< VarintEncoder >
 Cgrape::cuda::SharedArray< T >
 Cgrape::cuda::SharedArray< uint32_t >
 Cgrape::cuda::SharedValue< T >
 Cgrape::cuda::SharedValue< SIZE_T >
 Cgrape::cuda::SharedValue< uint32_t >
 Cgrape::cuda::dev::ShmHashTable< T >
 Cgrape::ShuffleBuffer< T >
 Cgrape::ShuffleBuffer< First >
 Cgrape::ShuffleBuffer< nonstd::string_view >
 Cgrape::ShuffleBufferTuple< First, Rest >
 Cgrape::ShuffleBufferTuple< First >
 Cgrape::ShuffleBufferTuple< TYPES... >
 Cgrape::ShuffleBufferTuple_element< index, T >
 Cgrape::ShuffleBufferTuple_element< 0, ShuffleBufferTuple< First, Rest... > >
 Cgrape::ShuffleBufferTuple_element< index - 1, ShuffleBufferTuple< Tail... > >
 Cgrape::ShuffleIn< TYPES >
 Cgrape::batch_shuffle_message_manager_impl::ShuffleInplace< FRAG_T, MESSAGE_T >
 Cgrape::ShuffleOut< TYPES >
 Cgrape::SpinLockA simple implementation of spinlock based on std::atomic
 Cgrape::cuda::Stream
 Cgrape::StringViewVector
 Cgrape::cuda::tb_np< VID_T, EDATA_T, TMetaData >
 Cgrape::TerminateInfo
 Cgrape::ThreadLocalMessageBuffer< MM_T >
 Cgrape::ThreadLocalMessageBufferOpt< MM_T >
 CThreadPool
 Cgrape::VarintDecoder
 Cgrape::VarintEncoder
 Cgrape::VarintUtil< T >
 Cgrape::VarintUtil< uint32_t >
 Cgrape::VarintUtil< uint64_t >
 Cgrape::internal::Vertex< VID_T, VDATA_T >Vertex representation
 Cgrape::Vertex< T >A Vertex object only contains id of a vertex. It will be used when iterating vertices of a fragment and accessing data and neighbor of a vertex
 Cgrape::Vertex< VID_T >
 Cgrape::internal::Vertex< VID_T, EmptyType >Partial specialization for Vertex with EmptyType on vertex_data
 Cgrape::internal::Vertex< VID_T, grape::EmptyType >
 Cgrape::cuda::dev::VertexArray< T, VID_T >
 Cgrape::VertexArray< VERTEX_SET_T, T >
 Cgrape::VertexArray< DualVertexRange< VID_T >, T >
 Cgrape::VertexArray< grape::VertexRange< VID_T >, T >
 Cgrape::VertexArray< inner_vertices_t, grape::Nbr * >
 Cgrape::VertexArray< VERTEX_SET_T, bool >
 Cgrape::VertexMapBase< OID_T, VID_T, PARTITIONER_T >VertexMapBase manages some mapping about vertices
 Cgrape::VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >
 Cgrape::cuda::VertexMetadata< VID_T, METADATA_T >
 Cgrape::cuda::VertexMetadata< VID_T, grape::EmptyType >
 Cgrape::VertexRange< T >
 Cgrape::VertexRange< VID_T >
 Cgrape::cuda::warp_np< VID_T, EDATA_T, WARPS_PER_TB, TMetaData >
 Cgrape::Worker< APP_T, MESSAGE_MANAGER_T >A Worker manages the computation cycle
 Cgrape::sync_comm::WorkerIterator
 Cgrape::cuda::WorkSourceArray< T >
 Cgrape::cuda::WorkSourceRange< T >
+
+
+ + + + diff --git a/index.html b/index.html new file mode 100644 index 00000000..b5558b5f --- /dev/null +++ b/index.html @@ -0,0 +1,186 @@ + + + + + + + +libgrape-lite: Main Page + + + + + + + + + +
+
+ + + + + + +
+
libgrape-lite +
+
A C++ library for parallel graph processing
+
+
+ + + + + + + +
+ +
+
+ + +
+ +
+ +
+
+
libgrape-lite Documentation
+
+
+

libgrape-lite
+ libgrape-lite

+

+

A C++ library for parallel graph processing

+

C/C++ CI codecov GraphScope

+

libgrape-lite is a C++ library from Alibaba for parallel graph processing. It differs from prior systems in its ability to parallelize sequential graph algorithms as a whole by following the PIE programming model from GRAPE. Sequential algorithms can be easily "plugged into" libgrape-lite with only minor changes and get parallelized to handle large graphs efficiently. In addition to the ease of programming, libgrape-lite is designed to be highly efficient and flexible, to cope the scale, variety and complexity from real-life graph applications.

+

Building libgrape-lite

+

Dependencies

+

libgrape-lite is developed and tested on CentOS 7. It should also work on other unix-like distributions. Building libgrape-lite requires the following softwares installed as dependencies.

+
    +
  • CMake (>=2.8)
  • +
  • A modern C++ compiler compliant with C++-11 standard. (g++ >= 4.8.1 or clang++ >= 3.3)
  • +
  • MPICH (>= 2.1.4) or OpenMPI (>= 3.0.0)
  • +
  • glog (>= 0.3.4)
  • +
+

Here are the dependencies for optional features:

+
    +
  • jemalloc (>= 5.0.0) for better memory allocation;
  • +
  • Doxygen (>= 1.8) for generating documentation;
  • +
  • Linux HUGE_PAGES support, for better performance.
  • +
  • CUDA (>= 10.0) for GPU-based graph processing.
  • +
  • NCCL (>= 2.7) for multi-GPU communication.
  • +
+

Extra dependencies are required by examples:

+ +

Building libgrape-lite and examples

+

Once the required dependencies have been installed, go to the root directory of libgrape-lite and do a out-of-source build using CMake.

+
mkdir build && cd build
+
cmake ..
+
make -j
+

The building targets include a shared/static library, and two sets of examples: analytical_apps and a gnn_sampler.

+

Alternatively, you can build a particular target with command:

+
make libgrape-lite # or
+
make analytical_apps # or
+
make gnn_sampler
+

Building libgrape-lite with GPU support

+

libgrape-lite supports deploying graph algorithms to GPUs. When CUDA is detected on the machine and NCCL >= 2.7, GPU support will be enabled automatically.

+

Running libgrape-lite applications

+

Graph format

+

The input of libgrape-lite is formatted following the LDBC Graph Analytics benchmark, with two files for each graph, a .v file for vertices with 1 or 2 columns, which are a vertex_id and optionally followed by the data assigned to the vertex; and a .e file for edges with 2 or 3 columns, representing source, destination and optionally the data on the edge, correspondingly. See sample files p2p-31.v and p2p-31.e under the dataset directory.

+

Example applications

+

libgrape-lite provides six algorithms from the LDBC benchmark as examples. The deterministic algorithms are, single-source shortest path(SSSP), connected component(WCC), PageRank, local clustering coefficient(LCC), community detection of label propagation(CDLP), and breadth first search(BFS).
+

+

To run a specific analytical application, users may use command like this:

+
# run single-source shortest path with 4 workers in local.
+
mpirun -n 4 ./run_app --vfile ../dataset/p2p-31.v --efile ../dataset/p2p-31.e --application sssp --sssp_source 6 --out_prefix ./output_sssp --directed
+
+
# or run connected component with 4 workers on a cluster.
+
# HOSTFILE provides a list of hosts where MPI processes are launched.
+
mpirun -n 4 -hostfile HOSTFILE ./run_app --application=wcc --vfile ../dataset/p2p-31.v --efile ../dataset/p2p-31.e --out_prefix ./output_wcc
+
+
# or run breadth-first search with 8 workers in a multi-GPU server.
+
mpirun -n 8 ./run_cuda_app --application=bfs --lb=cm --bfs_source 6 --vfile ../dataset/p2p-31.v --efile ../dataset/p2p-31.e --out_prefix ./output_wcc
+
+
# see more flags info.
+
./run_app --help
+

LDBC benchmarking

+

The analytical applications support the LDBC Analytical Benchmark suite with the provided ldbc_driver. Please refer to ldbc_driver for more details. The benchmark results for libgrape-lite and other state-of-the-art systems could be found here.

+

GNN sampler

+

In addition to offline graph analytics, libgrape-lite could also be utilized to handle more complex graph tasks. A sampler for GNN training/inference on dynamic graphs (taking graph changes and queries, and producing results via Kafka) is included as an example. Please refer to examples/gnn_sampler for more details.

+

GPU-based graph analytics

+

libgrape-lite also supports graph analytics on multi-GPU servers. Unlike CPUs, GPUs have more-but-weaker cores, making load balancing the key to high-performance sparse graph processing on GPUs. libgrape-lite provides multiple load balancing strategies on GPUs (wm, cm, cta, and strict). libgrape-lite adopts NCCL to handle communication between multiple GPUs. With GPU acceleration, libgrape-lite can obtain similar performance for a 4-node CPU cluster with a single GPU. The detailed benchmark results of libgrape-lite on GPUs could also be found here.

+

Documentation

+

Documentation is generated using Doxygen. Users can build doxygen documentation in the build directory using:

+
cd build
+
make doc
+
# open docs/index.html
+

The latest version of online documentation can be found at https://alibaba.github.io/libgrape-lite

+

License

+

libgrape-lite is distributed under Apache License 2.0. Please note that third-party libraries may not have the same license as libgrape-lite.

+

Acknowledgements

+
    +
  • flat_hash_map, an efficient hashmap implementation;
  • +
  • granula, a tool for gathering performance information for LDBC Benchmark;
  • +
  • xoroshiro, a pseudo-random number generator;
  • +
  • threadpool, a concise C++11 Thread Pool implementation.
  • +
+

Publications

+
    +
  • Wenfei Fan, Jingbo Xu, Wenyuan Yu, Jingren Zhou, Xiaojian Luo, Ping Lu, Qiang Yin, Yang Cao, and Ruiqi Xu. Parallelizing Sequential Graph Computations. ACM Transactions on Database Systems (TODS) 43(4): 18:1-18:39.
  • +
  • Wenfei Fan, Jingbo Xu, Yinghui Wu, Wenyuan Yu, Jiaxin Jiang. GRAPE: Parallelizing Sequential Graph Computations. The 43rd International Conference on Very Large Data Bases (VLDB), demo, 2017 (the Best Demo Award).
  • +
  • Wenfei Fan, Jingbo Xu, Yinghui Wu, Wenyuan Yu, Jiaxin Jiang, Zeyu Zheng, Bohan Zhang, Yang Cao, and Chao Tian. Parallelizing Sequential Graph Computations, ACM SIG Conference on Management of Data (SIGMOD), 2017 (the Best Paper Award).
  • +
+

Please cite the following paper in your publications if GRAPE or this repo helps your research.

+
@inproceedings{10.1145/3035918.3035942,
+
author = {Fan, Wenfei and Xu, Jingbo and Wu, Yinghui and Yu, Wenyuan and Jiang, Jiaxin and Zheng, Zeyu and Zhang, Bohan and Cao, Yang and Tian, Chao},
+
title = {Parallelizing Sequential Graph Computations},
+
year = {2017},
+
isbn = {9781450341974},
+
publisher = {Association for Computing Machinery},
+
url = {https://doi.org/10.1145/3035918.3035942},
+
doi = {10.1145/3035918.3035942},
+
booktitle = {Proceedings of the 2017 ACM International Conference on Management of Data},
+
pages = {495–510},
+
numpages = {16},
+
location = {Chicago, Illinois, USA},
+
series = {SIGMOD '17}
+
}
+

Getting involved

+
    +
  • Read contribution guide.
  • +
  • Join in the Slack channel
  • +
  • Please report bugs by submitting a GitHub issue.
  • +
  • Submit contributions using pull requests.
  • +
+

Thank you in advance for your contributions!

+
+
+ + + + diff --git a/jquery.js b/jquery.js new file mode 100644 index 00000000..103c32d7 --- /dev/null +++ b/jquery.js @@ -0,0 +1,35 @@ +/*! jQuery v3.4.1 | (c) JS Foundation and other contributors | jquery.org/license */ +!function(e,t){"use strict";"object"==typeof module&&"object"==typeof module.exports?module.exports=e.document?t(e,!0):function(e){if(!e.document)throw new Error("jQuery requires a window with a document");return t(e)}:t(e)}("undefined"!=typeof window?window:this,function(C,e){"use strict";var t=[],E=C.document,r=Object.getPrototypeOf,s=t.slice,g=t.concat,u=t.push,i=t.indexOf,n={},o=n.toString,v=n.hasOwnProperty,a=v.toString,l=a.call(Object),y={},m=function(e){return"function"==typeof e&&"number"!=typeof e.nodeType},x=function(e){return null!=e&&e===e.window},c={type:!0,src:!0,nonce:!0,noModule:!0};function b(e,t,n){var r,i,o=(n=n||E).createElement("script");if(o.text=e,t)for(r in c)(i=t[r]||t.getAttribute&&t.getAttribute(r))&&o.setAttribute(r,i);n.head.appendChild(o).parentNode.removeChild(o)}function w(e){return null==e?e+"":"object"==typeof e||"function"==typeof e?n[o.call(e)]||"object":typeof e}var f="3.4.1",k=function(e,t){return new k.fn.init(e,t)},p=/^[\s\uFEFF\xA0]+|[\s\uFEFF\xA0]+$/g;function d(e){var t=!!e&&"length"in e&&e.length,n=w(e);return!m(e)&&!x(e)&&("array"===n||0===t||"number"==typeof t&&0+~]|"+M+")"+M+"*"),U=new RegExp(M+"|>"),X=new RegExp($),V=new RegExp("^"+I+"$"),G={ID:new RegExp("^#("+I+")"),CLASS:new RegExp("^\\.("+I+")"),TAG:new RegExp("^("+I+"|[*])"),ATTR:new RegExp("^"+W),PSEUDO:new RegExp("^"+$),CHILD:new RegExp("^:(only|first|last|nth|nth-last)-(child|of-type)(?:\\("+M+"*(even|odd|(([+-]|)(\\d*)n|)"+M+"*(?:([+-]|)"+M+"*(\\d+)|))"+M+"*\\)|)","i"),bool:new RegExp("^(?:"+R+")$","i"),needsContext:new RegExp("^"+M+"*[>+~]|:(even|odd|eq|gt|lt|nth|first|last)(?:\\("+M+"*((?:-\\d)?\\d*)"+M+"*\\)|)(?=[^-]|$)","i")},Y=/HTML$/i,Q=/^(?:input|select|textarea|button)$/i,J=/^h\d$/i,K=/^[^{]+\{\s*\[native \w/,Z=/^(?:#([\w-]+)|(\w+)|\.([\w-]+))$/,ee=/[+~]/,te=new RegExp("\\\\([\\da-f]{1,6}"+M+"?|("+M+")|.)","ig"),ne=function(e,t,n){var r="0x"+t-65536;return r!=r||n?t:r<0?String.fromCharCode(r+65536):String.fromCharCode(r>>10|55296,1023&r|56320)},re=/([\0-\x1f\x7f]|^-?\d)|^-$|[^\0-\x1f\x7f-\uFFFF\w-]/g,ie=function(e,t){return t?"\0"===e?"\ufffd":e.slice(0,-1)+"\\"+e.charCodeAt(e.length-1).toString(16)+" ":"\\"+e},oe=function(){T()},ae=be(function(e){return!0===e.disabled&&"fieldset"===e.nodeName.toLowerCase()},{dir:"parentNode",next:"legend"});try{H.apply(t=O.call(m.childNodes),m.childNodes),t[m.childNodes.length].nodeType}catch(e){H={apply:t.length?function(e,t){L.apply(e,O.call(t))}:function(e,t){var n=e.length,r=0;while(e[n++]=t[r++]);e.length=n-1}}}function se(t,e,n,r){var i,o,a,s,u,l,c,f=e&&e.ownerDocument,p=e?e.nodeType:9;if(n=n||[],"string"!=typeof t||!t||1!==p&&9!==p&&11!==p)return n;if(!r&&((e?e.ownerDocument||e:m)!==C&&T(e),e=e||C,E)){if(11!==p&&(u=Z.exec(t)))if(i=u[1]){if(9===p){if(!(a=e.getElementById(i)))return n;if(a.id===i)return n.push(a),n}else if(f&&(a=f.getElementById(i))&&y(e,a)&&a.id===i)return n.push(a),n}else{if(u[2])return H.apply(n,e.getElementsByTagName(t)),n;if((i=u[3])&&d.getElementsByClassName&&e.getElementsByClassName)return H.apply(n,e.getElementsByClassName(i)),n}if(d.qsa&&!A[t+" "]&&(!v||!v.test(t))&&(1!==p||"object"!==e.nodeName.toLowerCase())){if(c=t,f=e,1===p&&U.test(t)){(s=e.getAttribute("id"))?s=s.replace(re,ie):e.setAttribute("id",s=k),o=(l=h(t)).length;while(o--)l[o]="#"+s+" "+xe(l[o]);c=l.join(","),f=ee.test(t)&&ye(e.parentNode)||e}try{return H.apply(n,f.querySelectorAll(c)),n}catch(e){A(t,!0)}finally{s===k&&e.removeAttribute("id")}}}return g(t.replace(B,"$1"),e,n,r)}function ue(){var r=[];return function e(t,n){return r.push(t+" ")>b.cacheLength&&delete e[r.shift()],e[t+" "]=n}}function le(e){return e[k]=!0,e}function ce(e){var t=C.createElement("fieldset");try{return!!e(t)}catch(e){return!1}finally{t.parentNode&&t.parentNode.removeChild(t),t=null}}function fe(e,t){var n=e.split("|"),r=n.length;while(r--)b.attrHandle[n[r]]=t}function pe(e,t){var n=t&&e,r=n&&1===e.nodeType&&1===t.nodeType&&e.sourceIndex-t.sourceIndex;if(r)return r;if(n)while(n=n.nextSibling)if(n===t)return-1;return e?1:-1}function de(t){return function(e){return"input"===e.nodeName.toLowerCase()&&e.type===t}}function he(n){return function(e){var t=e.nodeName.toLowerCase();return("input"===t||"button"===t)&&e.type===n}}function ge(t){return function(e){return"form"in e?e.parentNode&&!1===e.disabled?"label"in e?"label"in e.parentNode?e.parentNode.disabled===t:e.disabled===t:e.isDisabled===t||e.isDisabled!==!t&&ae(e)===t:e.disabled===t:"label"in e&&e.disabled===t}}function ve(a){return le(function(o){return o=+o,le(function(e,t){var n,r=a([],e.length,o),i=r.length;while(i--)e[n=r[i]]&&(e[n]=!(t[n]=e[n]))})})}function ye(e){return e&&"undefined"!=typeof e.getElementsByTagName&&e}for(e in d=se.support={},i=se.isXML=function(e){var t=e.namespaceURI,n=(e.ownerDocument||e).documentElement;return!Y.test(t||n&&n.nodeName||"HTML")},T=se.setDocument=function(e){var t,n,r=e?e.ownerDocument||e:m;return r!==C&&9===r.nodeType&&r.documentElement&&(a=(C=r).documentElement,E=!i(C),m!==C&&(n=C.defaultView)&&n.top!==n&&(n.addEventListener?n.addEventListener("unload",oe,!1):n.attachEvent&&n.attachEvent("onunload",oe)),d.attributes=ce(function(e){return e.className="i",!e.getAttribute("className")}),d.getElementsByTagName=ce(function(e){return e.appendChild(C.createComment("")),!e.getElementsByTagName("*").length}),d.getElementsByClassName=K.test(C.getElementsByClassName),d.getById=ce(function(e){return a.appendChild(e).id=k,!C.getElementsByName||!C.getElementsByName(k).length}),d.getById?(b.filter.ID=function(e){var t=e.replace(te,ne);return function(e){return e.getAttribute("id")===t}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n=t.getElementById(e);return n?[n]:[]}}):(b.filter.ID=function(e){var n=e.replace(te,ne);return function(e){var t="undefined"!=typeof e.getAttributeNode&&e.getAttributeNode("id");return t&&t.value===n}},b.find.ID=function(e,t){if("undefined"!=typeof t.getElementById&&E){var n,r,i,o=t.getElementById(e);if(o){if((n=o.getAttributeNode("id"))&&n.value===e)return[o];i=t.getElementsByName(e),r=0;while(o=i[r++])if((n=o.getAttributeNode("id"))&&n.value===e)return[o]}return[]}}),b.find.TAG=d.getElementsByTagName?function(e,t){return"undefined"!=typeof t.getElementsByTagName?t.getElementsByTagName(e):d.qsa?t.querySelectorAll(e):void 0}:function(e,t){var n,r=[],i=0,o=t.getElementsByTagName(e);if("*"===e){while(n=o[i++])1===n.nodeType&&r.push(n);return r}return o},b.find.CLASS=d.getElementsByClassName&&function(e,t){if("undefined"!=typeof t.getElementsByClassName&&E)return t.getElementsByClassName(e)},s=[],v=[],(d.qsa=K.test(C.querySelectorAll))&&(ce(function(e){a.appendChild(e).innerHTML="",e.querySelectorAll("[msallowcapture^='']").length&&v.push("[*^$]="+M+"*(?:''|\"\")"),e.querySelectorAll("[selected]").length||v.push("\\["+M+"*(?:value|"+R+")"),e.querySelectorAll("[id~="+k+"-]").length||v.push("~="),e.querySelectorAll(":checked").length||v.push(":checked"),e.querySelectorAll("a#"+k+"+*").length||v.push(".#.+[+~]")}),ce(function(e){e.innerHTML="";var t=C.createElement("input");t.setAttribute("type","hidden"),e.appendChild(t).setAttribute("name","D"),e.querySelectorAll("[name=d]").length&&v.push("name"+M+"*[*^$|!~]?="),2!==e.querySelectorAll(":enabled").length&&v.push(":enabled",":disabled"),a.appendChild(e).disabled=!0,2!==e.querySelectorAll(":disabled").length&&v.push(":enabled",":disabled"),e.querySelectorAll("*,:x"),v.push(",.*:")})),(d.matchesSelector=K.test(c=a.matches||a.webkitMatchesSelector||a.mozMatchesSelector||a.oMatchesSelector||a.msMatchesSelector))&&ce(function(e){d.disconnectedMatch=c.call(e,"*"),c.call(e,"[s!='']:x"),s.push("!=",$)}),v=v.length&&new RegExp(v.join("|")),s=s.length&&new RegExp(s.join("|")),t=K.test(a.compareDocumentPosition),y=t||K.test(a.contains)?function(e,t){var n=9===e.nodeType?e.documentElement:e,r=t&&t.parentNode;return e===r||!(!r||1!==r.nodeType||!(n.contains?n.contains(r):e.compareDocumentPosition&&16&e.compareDocumentPosition(r)))}:function(e,t){if(t)while(t=t.parentNode)if(t===e)return!0;return!1},D=t?function(e,t){if(e===t)return l=!0,0;var n=!e.compareDocumentPosition-!t.compareDocumentPosition;return n||(1&(n=(e.ownerDocument||e)===(t.ownerDocument||t)?e.compareDocumentPosition(t):1)||!d.sortDetached&&t.compareDocumentPosition(e)===n?e===C||e.ownerDocument===m&&y(m,e)?-1:t===C||t.ownerDocument===m&&y(m,t)?1:u?P(u,e)-P(u,t):0:4&n?-1:1)}:function(e,t){if(e===t)return l=!0,0;var n,r=0,i=e.parentNode,o=t.parentNode,a=[e],s=[t];if(!i||!o)return e===C?-1:t===C?1:i?-1:o?1:u?P(u,e)-P(u,t):0;if(i===o)return pe(e,t);n=e;while(n=n.parentNode)a.unshift(n);n=t;while(n=n.parentNode)s.unshift(n);while(a[r]===s[r])r++;return r?pe(a[r],s[r]):a[r]===m?-1:s[r]===m?1:0}),C},se.matches=function(e,t){return se(e,null,null,t)},se.matchesSelector=function(e,t){if((e.ownerDocument||e)!==C&&T(e),d.matchesSelector&&E&&!A[t+" "]&&(!s||!s.test(t))&&(!v||!v.test(t)))try{var n=c.call(e,t);if(n||d.disconnectedMatch||e.document&&11!==e.document.nodeType)return n}catch(e){A(t,!0)}return 0":{dir:"parentNode",first:!0}," ":{dir:"parentNode"},"+":{dir:"previousSibling",first:!0},"~":{dir:"previousSibling"}},preFilter:{ATTR:function(e){return e[1]=e[1].replace(te,ne),e[3]=(e[3]||e[4]||e[5]||"").replace(te,ne),"~="===e[2]&&(e[3]=" "+e[3]+" "),e.slice(0,4)},CHILD:function(e){return e[1]=e[1].toLowerCase(),"nth"===e[1].slice(0,3)?(e[3]||se.error(e[0]),e[4]=+(e[4]?e[5]+(e[6]||1):2*("even"===e[3]||"odd"===e[3])),e[5]=+(e[7]+e[8]||"odd"===e[3])):e[3]&&se.error(e[0]),e},PSEUDO:function(e){var t,n=!e[6]&&e[2];return G.CHILD.test(e[0])?null:(e[3]?e[2]=e[4]||e[5]||"":n&&X.test(n)&&(t=h(n,!0))&&(t=n.indexOf(")",n.length-t)-n.length)&&(e[0]=e[0].slice(0,t),e[2]=n.slice(0,t)),e.slice(0,3))}},filter:{TAG:function(e){var t=e.replace(te,ne).toLowerCase();return"*"===e?function(){return!0}:function(e){return e.nodeName&&e.nodeName.toLowerCase()===t}},CLASS:function(e){var t=p[e+" "];return t||(t=new RegExp("(^|"+M+")"+e+"("+M+"|$)"))&&p(e,function(e){return t.test("string"==typeof e.className&&e.className||"undefined"!=typeof e.getAttribute&&e.getAttribute("class")||"")})},ATTR:function(n,r,i){return function(e){var t=se.attr(e,n);return null==t?"!="===r:!r||(t+="","="===r?t===i:"!="===r?t!==i:"^="===r?i&&0===t.indexOf(i):"*="===r?i&&-1:\x20\t\r\n\f]*)[\x20\t\r\n\f]*\/?>(?:<\/\1>|)$/i;function j(e,n,r){return m(n)?k.grep(e,function(e,t){return!!n.call(e,t,e)!==r}):n.nodeType?k.grep(e,function(e){return e===n!==r}):"string"!=typeof n?k.grep(e,function(e){return-1)[^>]*|#([\w-]+))$/;(k.fn.init=function(e,t,n){var r,i;if(!e)return this;if(n=n||q,"string"==typeof e){if(!(r="<"===e[0]&&">"===e[e.length-1]&&3<=e.length?[null,e,null]:L.exec(e))||!r[1]&&t)return!t||t.jquery?(t||n).find(e):this.constructor(t).find(e);if(r[1]){if(t=t instanceof k?t[0]:t,k.merge(this,k.parseHTML(r[1],t&&t.nodeType?t.ownerDocument||t:E,!0)),D.test(r[1])&&k.isPlainObject(t))for(r in t)m(this[r])?this[r](t[r]):this.attr(r,t[r]);return this}return(i=E.getElementById(r[2]))&&(this[0]=i,this.length=1),this}return e.nodeType?(this[0]=e,this.length=1,this):m(e)?void 0!==n.ready?n.ready(e):e(k):k.makeArray(e,this)}).prototype=k.fn,q=k(E);var H=/^(?:parents|prev(?:Until|All))/,O={children:!0,contents:!0,next:!0,prev:!0};function P(e,t){while((e=e[t])&&1!==e.nodeType);return e}k.fn.extend({has:function(e){var t=k(e,this),n=t.length;return this.filter(function(){for(var e=0;e\x20\t\r\n\f]*)/i,he=/^$|^module$|\/(?:java|ecma)script/i,ge={option:[1,""],thead:[1,"","
"],col:[2,"","
"],tr:[2,"","
"],td:[3,"","
"],_default:[0,"",""]};function ve(e,t){var n;return n="undefined"!=typeof e.getElementsByTagName?e.getElementsByTagName(t||"*"):"undefined"!=typeof e.querySelectorAll?e.querySelectorAll(t||"*"):[],void 0===t||t&&A(e,t)?k.merge([e],n):n}function ye(e,t){for(var n=0,r=e.length;nx",y.noCloneChecked=!!me.cloneNode(!0).lastChild.defaultValue;var Te=/^key/,Ce=/^(?:mouse|pointer|contextmenu|drag|drop)|click/,Ee=/^([^.]*)(?:\.(.+)|)/;function ke(){return!0}function Se(){return!1}function Ne(e,t){return e===function(){try{return E.activeElement}catch(e){}}()==("focus"===t)}function Ae(e,t,n,r,i,o){var a,s;if("object"==typeof t){for(s in"string"!=typeof n&&(r=r||n,n=void 0),t)Ae(e,s,n,r,t[s],o);return e}if(null==r&&null==i?(i=n,r=n=void 0):null==i&&("string"==typeof n?(i=r,r=void 0):(i=r,r=n,n=void 0)),!1===i)i=Se;else if(!i)return e;return 1===o&&(a=i,(i=function(e){return k().off(e),a.apply(this,arguments)}).guid=a.guid||(a.guid=k.guid++)),e.each(function(){k.event.add(this,t,i,r,n)})}function De(e,i,o){o?(Q.set(e,i,!1),k.event.add(e,i,{namespace:!1,handler:function(e){var t,n,r=Q.get(this,i);if(1&e.isTrigger&&this[i]){if(r.length)(k.event.special[i]||{}).delegateType&&e.stopPropagation();else if(r=s.call(arguments),Q.set(this,i,r),t=o(this,i),this[i](),r!==(n=Q.get(this,i))||t?Q.set(this,i,!1):n={},r!==n)return e.stopImmediatePropagation(),e.preventDefault(),n.value}else r.length&&(Q.set(this,i,{value:k.event.trigger(k.extend(r[0],k.Event.prototype),r.slice(1),this)}),e.stopImmediatePropagation())}})):void 0===Q.get(e,i)&&k.event.add(e,i,ke)}k.event={global:{},add:function(t,e,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.get(t);if(v){n.handler&&(n=(o=n).handler,i=o.selector),i&&k.find.matchesSelector(ie,i),n.guid||(n.guid=k.guid++),(u=v.events)||(u=v.events={}),(a=v.handle)||(a=v.handle=function(e){return"undefined"!=typeof k&&k.event.triggered!==e.type?k.event.dispatch.apply(t,arguments):void 0}),l=(e=(e||"").match(R)||[""]).length;while(l--)d=g=(s=Ee.exec(e[l])||[])[1],h=(s[2]||"").split(".").sort(),d&&(f=k.event.special[d]||{},d=(i?f.delegateType:f.bindType)||d,f=k.event.special[d]||{},c=k.extend({type:d,origType:g,data:r,handler:n,guid:n.guid,selector:i,needsContext:i&&k.expr.match.needsContext.test(i),namespace:h.join(".")},o),(p=u[d])||((p=u[d]=[]).delegateCount=0,f.setup&&!1!==f.setup.call(t,r,h,a)||t.addEventListener&&t.addEventListener(d,a)),f.add&&(f.add.call(t,c),c.handler.guid||(c.handler.guid=n.guid)),i?p.splice(p.delegateCount++,0,c):p.push(c),k.event.global[d]=!0)}},remove:function(e,t,n,r,i){var o,a,s,u,l,c,f,p,d,h,g,v=Q.hasData(e)&&Q.get(e);if(v&&(u=v.events)){l=(t=(t||"").match(R)||[""]).length;while(l--)if(d=g=(s=Ee.exec(t[l])||[])[1],h=(s[2]||"").split(".").sort(),d){f=k.event.special[d]||{},p=u[d=(r?f.delegateType:f.bindType)||d]||[],s=s[2]&&new RegExp("(^|\\.)"+h.join("\\.(?:.*\\.|)")+"(\\.|$)"),a=o=p.length;while(o--)c=p[o],!i&&g!==c.origType||n&&n.guid!==c.guid||s&&!s.test(c.namespace)||r&&r!==c.selector&&("**"!==r||!c.selector)||(p.splice(o,1),c.selector&&p.delegateCount--,f.remove&&f.remove.call(e,c));a&&!p.length&&(f.teardown&&!1!==f.teardown.call(e,h,v.handle)||k.removeEvent(e,d,v.handle),delete u[d])}else for(d in u)k.event.remove(e,d+t[l],n,r,!0);k.isEmptyObject(u)&&Q.remove(e,"handle events")}},dispatch:function(e){var t,n,r,i,o,a,s=k.event.fix(e),u=new Array(arguments.length),l=(Q.get(this,"events")||{})[s.type]||[],c=k.event.special[s.type]||{};for(u[0]=s,t=1;t\x20\t\r\n\f]*)[^>]*)\/>/gi,qe=/\s*$/g;function Oe(e,t){return A(e,"table")&&A(11!==t.nodeType?t:t.firstChild,"tr")&&k(e).children("tbody")[0]||e}function Pe(e){return e.type=(null!==e.getAttribute("type"))+"/"+e.type,e}function Re(e){return"true/"===(e.type||"").slice(0,5)?e.type=e.type.slice(5):e.removeAttribute("type"),e}function Me(e,t){var n,r,i,o,a,s,u,l;if(1===t.nodeType){if(Q.hasData(e)&&(o=Q.access(e),a=Q.set(t,o),l=o.events))for(i in delete a.handle,a.events={},l)for(n=0,r=l[i].length;n")},clone:function(e,t,n){var r,i,o,a,s,u,l,c=e.cloneNode(!0),f=oe(e);if(!(y.noCloneChecked||1!==e.nodeType&&11!==e.nodeType||k.isXMLDoc(e)))for(a=ve(c),r=0,i=(o=ve(e)).length;r").attr(n.scriptAttrs||{}).prop({charset:n.scriptCharset,src:n.url}).on("load error",i=function(e){r.remove(),i=null,e&&t("error"===e.type?404:200,e.type)}),E.head.appendChild(r[0])},abort:function(){i&&i()}}});var Vt,Gt=[],Yt=/(=)\?(?=&|$)|\?\?/;k.ajaxSetup({jsonp:"callback",jsonpCallback:function(){var e=Gt.pop()||k.expando+"_"+kt++;return this[e]=!0,e}}),k.ajaxPrefilter("json jsonp",function(e,t,n){var r,i,o,a=!1!==e.jsonp&&(Yt.test(e.url)?"url":"string"==typeof e.data&&0===(e.contentType||"").indexOf("application/x-www-form-urlencoded")&&Yt.test(e.data)&&"data");if(a||"jsonp"===e.dataTypes[0])return r=e.jsonpCallback=m(e.jsonpCallback)?e.jsonpCallback():e.jsonpCallback,a?e[a]=e[a].replace(Yt,"$1"+r):!1!==e.jsonp&&(e.url+=(St.test(e.url)?"&":"?")+e.jsonp+"="+r),e.converters["script json"]=function(){return o||k.error(r+" was not called"),o[0]},e.dataTypes[0]="json",i=C[r],C[r]=function(){o=arguments},n.always(function(){void 0===i?k(C).removeProp(r):C[r]=i,e[r]&&(e.jsonpCallback=t.jsonpCallback,Gt.push(r)),o&&m(i)&&i(o[0]),o=i=void 0}),"script"}),y.createHTMLDocument=((Vt=E.implementation.createHTMLDocument("").body).innerHTML="
",2===Vt.childNodes.length),k.parseHTML=function(e,t,n){return"string"!=typeof e?[]:("boolean"==typeof t&&(n=t,t=!1),t||(y.createHTMLDocument?((r=(t=E.implementation.createHTMLDocument("")).createElement("base")).href=E.location.href,t.head.appendChild(r)):t=E),o=!n&&[],(i=D.exec(e))?[t.createElement(i[1])]:(i=we([e],t,o),o&&o.length&&k(o).remove(),k.merge([],i.childNodes)));var r,i,o},k.fn.load=function(e,t,n){var r,i,o,a=this,s=e.indexOf(" ");return-1").append(k.parseHTML(e)).find(r):e)}).always(n&&function(e,t){a.each(function(){n.apply(this,o||[e.responseText,t,e])})}),this},k.each(["ajaxStart","ajaxStop","ajaxComplete","ajaxError","ajaxSuccess","ajaxSend"],function(e,t){k.fn[t]=function(e){return this.on(t,e)}}),k.expr.pseudos.animated=function(t){return k.grep(k.timers,function(e){return t===e.elem}).length},k.offset={setOffset:function(e,t,n){var r,i,o,a,s,u,l=k.css(e,"position"),c=k(e),f={};"static"===l&&(e.style.position="relative"),s=c.offset(),o=k.css(e,"top"),u=k.css(e,"left"),("absolute"===l||"fixed"===l)&&-1<(o+u).indexOf("auto")?(a=(r=c.position()).top,i=r.left):(a=parseFloat(o)||0,i=parseFloat(u)||0),m(t)&&(t=t.call(e,n,k.extend({},s))),null!=t.top&&(f.top=t.top-s.top+a),null!=t.left&&(f.left=t.left-s.left+i),"using"in t?t.using.call(e,f):c.css(f)}},k.fn.extend({offset:function(t){if(arguments.length)return void 0===t?this:this.each(function(e){k.offset.setOffset(this,t,e)});var e,n,r=this[0];return r?r.getClientRects().length?(e=r.getBoundingClientRect(),n=r.ownerDocument.defaultView,{top:e.top+n.pageYOffset,left:e.left+n.pageXOffset}):{top:0,left:0}:void 0},position:function(){if(this[0]){var e,t,n,r=this[0],i={top:0,left:0};if("fixed"===k.css(r,"position"))t=r.getBoundingClientRect();else{t=this.offset(),n=r.ownerDocument,e=r.offsetParent||n.documentElement;while(e&&(e===n.body||e===n.documentElement)&&"static"===k.css(e,"position"))e=e.parentNode;e&&e!==r&&1===e.nodeType&&((i=k(e).offset()).top+=k.css(e,"borderTopWidth",!0),i.left+=k.css(e,"borderLeftWidth",!0))}return{top:t.top-i.top-k.css(r,"marginTop",!0),left:t.left-i.left-k.css(r,"marginLeft",!0)}}},offsetParent:function(){return this.map(function(){var e=this.offsetParent;while(e&&"static"===k.css(e,"position"))e=e.offsetParent;return e||ie})}}),k.each({scrollLeft:"pageXOffset",scrollTop:"pageYOffset"},function(t,i){var o="pageYOffset"===i;k.fn[t]=function(e){return _(this,function(e,t,n){var r;if(x(e)?r=e:9===e.nodeType&&(r=e.defaultView),void 0===n)return r?r[i]:e[t];r?r.scrollTo(o?r.pageXOffset:n,o?n:r.pageYOffset):e[t]=n},t,e,arguments.length)}}),k.each(["top","left"],function(e,n){k.cssHooks[n]=ze(y.pixelPosition,function(e,t){if(t)return t=_e(e,n),$e.test(t)?k(e).position()[n]+"px":t})}),k.each({Height:"height",Width:"width"},function(a,s){k.each({padding:"inner"+a,content:s,"":"outer"+a},function(r,o){k.fn[o]=function(e,t){var n=arguments.length&&(r||"boolean"!=typeof e),i=r||(!0===e||!0===t?"margin":"border");return _(this,function(e,t,n){var r;return x(e)?0===o.indexOf("outer")?e["inner"+a]:e.document.documentElement["client"+a]:9===e.nodeType?(r=e.documentElement,Math.max(e.body["scroll"+a],r["scroll"+a],e.body["offset"+a],r["offset"+a],r["client"+a])):void 0===n?k.css(e,t,i):k.style(e,t,n,i)},s,n?e:void 0,n)}})}),k.each("blur focus focusin focusout resize scroll click dblclick mousedown mouseup mousemove mouseover mouseout mouseenter mouseleave change select submit keydown keypress keyup contextmenu".split(" "),function(e,n){k.fn[n]=function(e,t){return 0a;a++)for(i in o[a])n=o[a][i],o[a].hasOwnProperty(i)&&void 0!==n&&(e[i]=t.isPlainObject(n)?t.isPlainObject(e[i])?t.widget.extend({},e[i],n):t.widget.extend({},n):n);return e},t.widget.bridge=function(e,i){var n=i.prototype.widgetFullName||e;t.fn[e]=function(o){var a="string"==typeof o,r=s.call(arguments,1),h=this;return a?this.length||"instance"!==o?this.each(function(){var i,s=t.data(this,n);return"instance"===o?(h=s,!1):s?t.isFunction(s[o])&&"_"!==o.charAt(0)?(i=s[o].apply(s,r),i!==s&&void 0!==i?(h=i&&i.jquery?h.pushStack(i.get()):i,!1):void 0):t.error("no such method '"+o+"' for "+e+" widget instance"):t.error("cannot call methods on "+e+" prior to initialization; "+"attempted to call method '"+o+"'")}):h=void 0:(r.length&&(o=t.widget.extend.apply(null,[o].concat(r))),this.each(function(){var e=t.data(this,n);e?(e.option(o||{}),e._init&&e._init()):t.data(this,n,new i(o,this))})),h}},t.Widget=function(){},t.Widget._childConstructors=[],t.Widget.prototype={widgetName:"widget",widgetEventPrefix:"",defaultElement:"
",options:{classes:{},disabled:!1,create:null},_createWidget:function(e,s){s=t(s||this.defaultElement||this)[0],this.element=t(s),this.uuid=i++,this.eventNamespace="."+this.widgetName+this.uuid,this.bindings=t(),this.hoverable=t(),this.focusable=t(),this.classesElementLookup={},s!==this&&(t.data(s,this.widgetFullName,this),this._on(!0,this.element,{remove:function(t){t.target===s&&this.destroy()}}),this.document=t(s.style?s.ownerDocument:s.document||s),this.window=t(this.document[0].defaultView||this.document[0].parentWindow)),this.options=t.widget.extend({},this.options,this._getCreateOptions(),e),this._create(),this.options.disabled&&this._setOptionDisabled(this.options.disabled),this._trigger("create",null,this._getCreateEventData()),this._init()},_getCreateOptions:function(){return{}},_getCreateEventData:t.noop,_create:t.noop,_init:t.noop,destroy:function(){var e=this;this._destroy(),t.each(this.classesElementLookup,function(t,i){e._removeClass(i,t)}),this.element.off(this.eventNamespace).removeData(this.widgetFullName),this.widget().off(this.eventNamespace).removeAttr("aria-disabled"),this.bindings.off(this.eventNamespace)},_destroy:t.noop,widget:function(){return this.element},option:function(e,i){var s,n,o,a=e;if(0===arguments.length)return t.widget.extend({},this.options);if("string"==typeof e)if(a={},s=e.split("."),e=s.shift(),s.length){for(n=a[e]=t.widget.extend({},this.options[e]),o=0;s.length-1>o;o++)n[s[o]]=n[s[o]]||{},n=n[s[o]];if(e=s.pop(),1===arguments.length)return void 0===n[e]?null:n[e];n[e]=i}else{if(1===arguments.length)return void 0===this.options[e]?null:this.options[e];a[e]=i}return this._setOptions(a),this},_setOptions:function(t){var e;for(e in t)this._setOption(e,t[e]);return this},_setOption:function(t,e){return"classes"===t&&this._setOptionClasses(e),this.options[t]=e,"disabled"===t&&this._setOptionDisabled(e),this},_setOptionClasses:function(e){var i,s,n;for(i in e)n=this.classesElementLookup[i],e[i]!==this.options.classes[i]&&n&&n.length&&(s=t(n.get()),this._removeClass(n,i),s.addClass(this._classes({element:s,keys:i,classes:e,add:!0})))},_setOptionDisabled:function(t){this._toggleClass(this.widget(),this.widgetFullName+"-disabled",null,!!t),t&&(this._removeClass(this.hoverable,null,"ui-state-hover"),this._removeClass(this.focusable,null,"ui-state-focus"))},enable:function(){return this._setOptions({disabled:!1})},disable:function(){return this._setOptions({disabled:!0})},_classes:function(e){function i(i,o){var a,r;for(r=0;i.length>r;r++)a=n.classesElementLookup[i[r]]||t(),a=e.add?t(t.unique(a.get().concat(e.element.get()))):t(a.not(e.element).get()),n.classesElementLookup[i[r]]=a,s.push(i[r]),o&&e.classes[i[r]]&&s.push(e.classes[i[r]])}var s=[],n=this;return e=t.extend({element:this.element,classes:this.options.classes||{}},e),this._on(e.element,{remove:"_untrackClassesElement"}),e.keys&&i(e.keys.match(/\S+/g)||[],!0),e.extra&&i(e.extra.match(/\S+/g)||[]),s.join(" ")},_untrackClassesElement:function(e){var i=this;t.each(i.classesElementLookup,function(s,n){-1!==t.inArray(e.target,n)&&(i.classesElementLookup[s]=t(n.not(e.target).get()))})},_removeClass:function(t,e,i){return this._toggleClass(t,e,i,!1)},_addClass:function(t,e,i){return this._toggleClass(t,e,i,!0)},_toggleClass:function(t,e,i,s){s="boolean"==typeof s?s:i;var n="string"==typeof t||null===t,o={extra:n?e:i,keys:n?t:e,element:n?this.element:t,add:s};return o.element.toggleClass(this._classes(o),s),this},_on:function(e,i,s){var n,o=this;"boolean"!=typeof e&&(s=i,i=e,e=!1),s?(i=n=t(i),this.bindings=this.bindings.add(i)):(s=i,i=this.element,n=this.widget()),t.each(s,function(s,a){function r(){return e||o.options.disabled!==!0&&!t(this).hasClass("ui-state-disabled")?("string"==typeof a?o[a]:a).apply(o,arguments):void 0}"string"!=typeof a&&(r.guid=a.guid=a.guid||r.guid||t.guid++);var h=s.match(/^([\w:-]*)\s*(.*)$/),l=h[1]+o.eventNamespace,c=h[2];c?n.on(l,c,r):i.on(l,r)})},_off:function(e,i){i=(i||"").split(" ").join(this.eventNamespace+" ")+this.eventNamespace,e.off(i).off(i),this.bindings=t(this.bindings.not(e).get()),this.focusable=t(this.focusable.not(e).get()),this.hoverable=t(this.hoverable.not(e).get())},_delay:function(t,e){function i(){return("string"==typeof t?s[t]:t).apply(s,arguments)}var s=this;return setTimeout(i,e||0)},_hoverable:function(e){this.hoverable=this.hoverable.add(e),this._on(e,{mouseenter:function(e){this._addClass(t(e.currentTarget),null,"ui-state-hover")},mouseleave:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-hover")}})},_focusable:function(e){this.focusable=this.focusable.add(e),this._on(e,{focusin:function(e){this._addClass(t(e.currentTarget),null,"ui-state-focus")},focusout:function(e){this._removeClass(t(e.currentTarget),null,"ui-state-focus")}})},_trigger:function(e,i,s){var n,o,a=this.options[e];if(s=s||{},i=t.Event(i),i.type=(e===this.widgetEventPrefix?e:this.widgetEventPrefix+e).toLowerCase(),i.target=this.element[0],o=i.originalEvent)for(n in o)n in i||(i[n]=o[n]);return this.element.trigger(i,s),!(t.isFunction(a)&&a.apply(this.element[0],[i].concat(s))===!1||i.isDefaultPrevented())}},t.each({show:"fadeIn",hide:"fadeOut"},function(e,i){t.Widget.prototype["_"+e]=function(s,n,o){"string"==typeof n&&(n={effect:n});var a,r=n?n===!0||"number"==typeof n?i:n.effect||i:e;n=n||{},"number"==typeof n&&(n={duration:n}),a=!t.isEmptyObject(n),n.complete=o,n.delay&&s.delay(n.delay),a&&t.effects&&t.effects.effect[r]?s[e](n):r!==e&&s[r]?s[r](n.duration,n.easing,o):s.queue(function(i){t(this)[e](),o&&o.call(s[0]),i()})}}),t.widget,function(){function e(t,e,i){return[parseFloat(t[0])*(u.test(t[0])?e/100:1),parseFloat(t[1])*(u.test(t[1])?i/100:1)]}function i(e,i){return parseInt(t.css(e,i),10)||0}function s(e){var i=e[0];return 9===i.nodeType?{width:e.width(),height:e.height(),offset:{top:0,left:0}}:t.isWindow(i)?{width:e.width(),height:e.height(),offset:{top:e.scrollTop(),left:e.scrollLeft()}}:i.preventDefault?{width:0,height:0,offset:{top:i.pageY,left:i.pageX}}:{width:e.outerWidth(),height:e.outerHeight(),offset:e.offset()}}var n,o=Math.max,a=Math.abs,r=/left|center|right/,h=/top|center|bottom/,l=/[\+\-]\d+(\.[\d]+)?%?/,c=/^\w+/,u=/%$/,d=t.fn.position;t.position={scrollbarWidth:function(){if(void 0!==n)return n;var e,i,s=t("
"),o=s.children()[0];return t("body").append(s),e=o.offsetWidth,s.css("overflow","scroll"),i=o.offsetWidth,e===i&&(i=s[0].clientWidth),s.remove(),n=e-i},getScrollInfo:function(e){var i=e.isWindow||e.isDocument?"":e.element.css("overflow-x"),s=e.isWindow||e.isDocument?"":e.element.css("overflow-y"),n="scroll"===i||"auto"===i&&e.widthi?"left":e>0?"right":"center",vertical:0>r?"top":s>0?"bottom":"middle"};l>p&&p>a(e+i)&&(u.horizontal="center"),c>f&&f>a(s+r)&&(u.vertical="middle"),u.important=o(a(e),a(i))>o(a(s),a(r))?"horizontal":"vertical",n.using.call(this,t,u)}),h.offset(t.extend(D,{using:r}))})},t.ui.position={fit:{left:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollLeft:s.offset.left,a=s.width,r=t.left-e.collisionPosition.marginLeft,h=n-r,l=r+e.collisionWidth-a-n;e.collisionWidth>a?h>0&&0>=l?(i=t.left+h+e.collisionWidth-a-n,t.left+=h-i):t.left=l>0&&0>=h?n:h>l?n+a-e.collisionWidth:n:h>0?t.left+=h:l>0?t.left-=l:t.left=o(t.left-r,t.left)},top:function(t,e){var i,s=e.within,n=s.isWindow?s.scrollTop:s.offset.top,a=e.within.height,r=t.top-e.collisionPosition.marginTop,h=n-r,l=r+e.collisionHeight-a-n;e.collisionHeight>a?h>0&&0>=l?(i=t.top+h+e.collisionHeight-a-n,t.top+=h-i):t.top=l>0&&0>=h?n:h>l?n+a-e.collisionHeight:n:h>0?t.top+=h:l>0?t.top-=l:t.top=o(t.top-r,t.top)}},flip:{left:function(t,e){var i,s,n=e.within,o=n.offset.left+n.scrollLeft,r=n.width,h=n.isWindow?n.scrollLeft:n.offset.left,l=t.left-e.collisionPosition.marginLeft,c=l-h,u=l+e.collisionWidth-r-h,d="left"===e.my[0]?-e.elemWidth:"right"===e.my[0]?e.elemWidth:0,p="left"===e.at[0]?e.targetWidth:"right"===e.at[0]?-e.targetWidth:0,f=-2*e.offset[0];0>c?(i=t.left+d+p+f+e.collisionWidth-r-o,(0>i||a(c)>i)&&(t.left+=d+p+f)):u>0&&(s=t.left-e.collisionPosition.marginLeft+d+p+f-h,(s>0||u>a(s))&&(t.left+=d+p+f))},top:function(t,e){var i,s,n=e.within,o=n.offset.top+n.scrollTop,r=n.height,h=n.isWindow?n.scrollTop:n.offset.top,l=t.top-e.collisionPosition.marginTop,c=l-h,u=l+e.collisionHeight-r-h,d="top"===e.my[1],p=d?-e.elemHeight:"bottom"===e.my[1]?e.elemHeight:0,f="top"===e.at[1]?e.targetHeight:"bottom"===e.at[1]?-e.targetHeight:0,m=-2*e.offset[1];0>c?(s=t.top+p+f+m+e.collisionHeight-r-o,(0>s||a(c)>s)&&(t.top+=p+f+m)):u>0&&(i=t.top-e.collisionPosition.marginTop+p+f+m-h,(i>0||u>a(i))&&(t.top+=p+f+m))}},flipfit:{left:function(){t.ui.position.flip.left.apply(this,arguments),t.ui.position.fit.left.apply(this,arguments)},top:function(){t.ui.position.flip.top.apply(this,arguments),t.ui.position.fit.top.apply(this,arguments)}}}}(),t.ui.position,t.extend(t.expr[":"],{data:t.expr.createPseudo?t.expr.createPseudo(function(e){return function(i){return!!t.data(i,e)}}):function(e,i,s){return!!t.data(e,s[3])}}),t.fn.extend({disableSelection:function(){var t="onselectstart"in document.createElement("div")?"selectstart":"mousedown";return function(){return this.on(t+".ui-disableSelection",function(t){t.preventDefault()})}}(),enableSelection:function(){return this.off(".ui-disableSelection")}}),t.ui.focusable=function(i,s){var n,o,a,r,h,l=i.nodeName.toLowerCase();return"area"===l?(n=i.parentNode,o=n.name,i.href&&o&&"map"===n.nodeName.toLowerCase()?(a=t("img[usemap='#"+o+"']"),a.length>0&&a.is(":visible")):!1):(/^(input|select|textarea|button|object)$/.test(l)?(r=!i.disabled,r&&(h=t(i).closest("fieldset")[0],h&&(r=!h.disabled))):r="a"===l?i.href||s:s,r&&t(i).is(":visible")&&e(t(i)))},t.extend(t.expr[":"],{focusable:function(e){return t.ui.focusable(e,null!=t.attr(e,"tabindex"))}}),t.ui.focusable,t.fn.form=function(){return"string"==typeof this[0].form?this.closest("form"):t(this[0].form)},t.ui.formResetMixin={_formResetHandler:function(){var e=t(this);setTimeout(function(){var i=e.data("ui-form-reset-instances");t.each(i,function(){this.refresh()})})},_bindFormResetHandler:function(){if(this.form=this.element.form(),this.form.length){var t=this.form.data("ui-form-reset-instances")||[];t.length||this.form.on("reset.ui-form-reset",this._formResetHandler),t.push(this),this.form.data("ui-form-reset-instances",t)}},_unbindFormResetHandler:function(){if(this.form.length){var e=this.form.data("ui-form-reset-instances");e.splice(t.inArray(this,e),1),e.length?this.form.data("ui-form-reset-instances",e):this.form.removeData("ui-form-reset-instances").off("reset.ui-form-reset")}}},"1.7"===t.fn.jquery.substring(0,3)&&(t.each(["Width","Height"],function(e,i){function s(e,i,s,o){return t.each(n,function(){i-=parseFloat(t.css(e,"padding"+this))||0,s&&(i-=parseFloat(t.css(e,"border"+this+"Width"))||0),o&&(i-=parseFloat(t.css(e,"margin"+this))||0)}),i}var n="Width"===i?["Left","Right"]:["Top","Bottom"],o=i.toLowerCase(),a={innerWidth:t.fn.innerWidth,innerHeight:t.fn.innerHeight,outerWidth:t.fn.outerWidth,outerHeight:t.fn.outerHeight};t.fn["inner"+i]=function(e){return void 0===e?a["inner"+i].call(this):this.each(function(){t(this).css(o,s(this,e)+"px")})},t.fn["outer"+i]=function(e,n){return"number"!=typeof e?a["outer"+i].call(this,e):this.each(function(){t(this).css(o,s(this,e,!0,n)+"px")})}}),t.fn.addBack=function(t){return this.add(null==t?this.prevObject:this.prevObject.filter(t))}),t.ui.keyCode={BACKSPACE:8,COMMA:188,DELETE:46,DOWN:40,END:35,ENTER:13,ESCAPE:27,HOME:36,LEFT:37,PAGE_DOWN:34,PAGE_UP:33,PERIOD:190,RIGHT:39,SPACE:32,TAB:9,UP:38},t.ui.escapeSelector=function(){var t=/([!"#$%&'()*+,./:;<=>?@[\]^`{|}~])/g;return function(e){return e.replace(t,"\\$1")}}(),t.fn.labels=function(){var e,i,s,n,o;return this[0].labels&&this[0].labels.length?this.pushStack(this[0].labels):(n=this.eq(0).parents("label"),s=this.attr("id"),s&&(e=this.eq(0).parents().last(),o=e.add(e.length?e.siblings():this.siblings()),i="label[for='"+t.ui.escapeSelector(s)+"']",n=n.add(o.find(i).addBack(i))),this.pushStack(n))},t.fn.scrollParent=function(e){var i=this.css("position"),s="absolute"===i,n=e?/(auto|scroll|hidden)/:/(auto|scroll)/,o=this.parents().filter(function(){var e=t(this);return s&&"static"===e.css("position")?!1:n.test(e.css("overflow")+e.css("overflow-y")+e.css("overflow-x"))}).eq(0);return"fixed"!==i&&o.length?o:t(this[0].ownerDocument||document)},t.extend(t.expr[":"],{tabbable:function(e){var i=t.attr(e,"tabindex"),s=null!=i;return(!s||i>=0)&&t.ui.focusable(e,s)}}),t.fn.extend({uniqueId:function(){var t=0;return function(){return this.each(function(){this.id||(this.id="ui-id-"+ ++t)})}}(),removeUniqueId:function(){return this.each(function(){/^ui-id-\d+$/.test(this.id)&&t(this).removeAttr("id")})}}),t.ui.ie=!!/msie [\w.]+/.exec(navigator.userAgent.toLowerCase());var n=!1;t(document).on("mouseup",function(){n=!1}),t.widget("ui.mouse",{version:"1.12.1",options:{cancel:"input, textarea, button, select, option",distance:1,delay:0},_mouseInit:function(){var e=this;this.element.on("mousedown."+this.widgetName,function(t){return e._mouseDown(t)}).on("click."+this.widgetName,function(i){return!0===t.data(i.target,e.widgetName+".preventClickEvent")?(t.removeData(i.target,e.widgetName+".preventClickEvent"),i.stopImmediatePropagation(),!1):void 0}),this.started=!1},_mouseDestroy:function(){this.element.off("."+this.widgetName),this._mouseMoveDelegate&&this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate)},_mouseDown:function(e){if(!n){this._mouseMoved=!1,this._mouseStarted&&this._mouseUp(e),this._mouseDownEvent=e;var i=this,s=1===e.which,o="string"==typeof this.options.cancel&&e.target.nodeName?t(e.target).closest(this.options.cancel).length:!1;return s&&!o&&this._mouseCapture(e)?(this.mouseDelayMet=!this.options.delay,this.mouseDelayMet||(this._mouseDelayTimer=setTimeout(function(){i.mouseDelayMet=!0},this.options.delay)),this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(e)!==!1,!this._mouseStarted)?(e.preventDefault(),!0):(!0===t.data(e.target,this.widgetName+".preventClickEvent")&&t.removeData(e.target,this.widgetName+".preventClickEvent"),this._mouseMoveDelegate=function(t){return i._mouseMove(t)},this._mouseUpDelegate=function(t){return i._mouseUp(t)},this.document.on("mousemove."+this.widgetName,this._mouseMoveDelegate).on("mouseup."+this.widgetName,this._mouseUpDelegate),e.preventDefault(),n=!0,!0)):!0}},_mouseMove:function(e){if(this._mouseMoved){if(t.ui.ie&&(!document.documentMode||9>document.documentMode)&&!e.button)return this._mouseUp(e);if(!e.which)if(e.originalEvent.altKey||e.originalEvent.ctrlKey||e.originalEvent.metaKey||e.originalEvent.shiftKey)this.ignoreMissingWhich=!0;else if(!this.ignoreMissingWhich)return this._mouseUp(e)}return(e.which||e.button)&&(this._mouseMoved=!0),this._mouseStarted?(this._mouseDrag(e),e.preventDefault()):(this._mouseDistanceMet(e)&&this._mouseDelayMet(e)&&(this._mouseStarted=this._mouseStart(this._mouseDownEvent,e)!==!1,this._mouseStarted?this._mouseDrag(e):this._mouseUp(e)),!this._mouseStarted)},_mouseUp:function(e){this.document.off("mousemove."+this.widgetName,this._mouseMoveDelegate).off("mouseup."+this.widgetName,this._mouseUpDelegate),this._mouseStarted&&(this._mouseStarted=!1,e.target===this._mouseDownEvent.target&&t.data(e.target,this.widgetName+".preventClickEvent",!0),this._mouseStop(e)),this._mouseDelayTimer&&(clearTimeout(this._mouseDelayTimer),delete this._mouseDelayTimer),this.ignoreMissingWhich=!1,n=!1,e.preventDefault()},_mouseDistanceMet:function(t){return Math.max(Math.abs(this._mouseDownEvent.pageX-t.pageX),Math.abs(this._mouseDownEvent.pageY-t.pageY))>=this.options.distance},_mouseDelayMet:function(){return this.mouseDelayMet},_mouseStart:function(){},_mouseDrag:function(){},_mouseStop:function(){},_mouseCapture:function(){return!0}}),t.ui.plugin={add:function(e,i,s){var n,o=t.ui[e].prototype;for(n in s)o.plugins[n]=o.plugins[n]||[],o.plugins[n].push([i,s[n]])},call:function(t,e,i,s){var n,o=t.plugins[e];if(o&&(s||t.element[0].parentNode&&11!==t.element[0].parentNode.nodeType))for(n=0;o.length>n;n++)t.options[o[n][0]]&&o[n][1].apply(t.element,i)}},t.widget("ui.resizable",t.ui.mouse,{version:"1.12.1",widgetEventPrefix:"resize",options:{alsoResize:!1,animate:!1,animateDuration:"slow",animateEasing:"swing",aspectRatio:!1,autoHide:!1,classes:{"ui-resizable-se":"ui-icon ui-icon-gripsmall-diagonal-se"},containment:!1,ghost:!1,grid:!1,handles:"e,s,se",helper:!1,maxHeight:null,maxWidth:null,minHeight:10,minWidth:10,zIndex:90,resize:null,start:null,stop:null},_num:function(t){return parseFloat(t)||0},_isNumber:function(t){return!isNaN(parseFloat(t))},_hasScroll:function(e,i){if("hidden"===t(e).css("overflow"))return!1;var s=i&&"left"===i?"scrollLeft":"scrollTop",n=!1;return e[s]>0?!0:(e[s]=1,n=e[s]>0,e[s]=0,n)},_create:function(){var e,i=this.options,s=this;this._addClass("ui-resizable"),t.extend(this,{_aspectRatio:!!i.aspectRatio,aspectRatio:i.aspectRatio,originalElement:this.element,_proportionallyResizeElements:[],_helper:i.helper||i.ghost||i.animate?i.helper||"ui-resizable-helper":null}),this.element[0].nodeName.match(/^(canvas|textarea|input|select|button|img)$/i)&&(this.element.wrap(t("
").css({position:this.element.css("position"),width:this.element.outerWidth(),height:this.element.outerHeight(),top:this.element.css("top"),left:this.element.css("left")})),this.element=this.element.parent().data("ui-resizable",this.element.resizable("instance")),this.elementIsWrapper=!0,e={marginTop:this.originalElement.css("marginTop"),marginRight:this.originalElement.css("marginRight"),marginBottom:this.originalElement.css("marginBottom"),marginLeft:this.originalElement.css("marginLeft")},this.element.css(e),this.originalElement.css("margin",0),this.originalResizeStyle=this.originalElement.css("resize"),this.originalElement.css("resize","none"),this._proportionallyResizeElements.push(this.originalElement.css({position:"static",zoom:1,display:"block"})),this.originalElement.css(e),this._proportionallyResize()),this._setupHandles(),i.autoHide&&t(this.element).on("mouseenter",function(){i.disabled||(s._removeClass("ui-resizable-autohide"),s._handles.show())}).on("mouseleave",function(){i.disabled||s.resizing||(s._addClass("ui-resizable-autohide"),s._handles.hide())}),this._mouseInit()},_destroy:function(){this._mouseDestroy();var e,i=function(e){t(e).removeData("resizable").removeData("ui-resizable").off(".resizable").find(".ui-resizable-handle").remove()};return this.elementIsWrapper&&(i(this.element),e=this.element,this.originalElement.css({position:e.css("position"),width:e.outerWidth(),height:e.outerHeight(),top:e.css("top"),left:e.css("left")}).insertAfter(e),e.remove()),this.originalElement.css("resize",this.originalResizeStyle),i(this.originalElement),this},_setOption:function(t,e){switch(this._super(t,e),t){case"handles":this._removeHandles(),this._setupHandles();break;default:}},_setupHandles:function(){var e,i,s,n,o,a=this.options,r=this;if(this.handles=a.handles||(t(".ui-resizable-handle",this.element).length?{n:".ui-resizable-n",e:".ui-resizable-e",s:".ui-resizable-s",w:".ui-resizable-w",se:".ui-resizable-se",sw:".ui-resizable-sw",ne:".ui-resizable-ne",nw:".ui-resizable-nw"}:"e,s,se"),this._handles=t(),this.handles.constructor===String)for("all"===this.handles&&(this.handles="n,e,s,w,se,sw,ne,nw"),s=this.handles.split(","),this.handles={},i=0;s.length>i;i++)e=t.trim(s[i]),n="ui-resizable-"+e,o=t("
"),this._addClass(o,"ui-resizable-handle "+n),o.css({zIndex:a.zIndex}),this.handles[e]=".ui-resizable-"+e,this.element.append(o);this._renderAxis=function(e){var i,s,n,o;e=e||this.element;for(i in this.handles)this.handles[i].constructor===String?this.handles[i]=this.element.children(this.handles[i]).first().show():(this.handles[i].jquery||this.handles[i].nodeType)&&(this.handles[i]=t(this.handles[i]),this._on(this.handles[i],{mousedown:r._mouseDown})),this.elementIsWrapper&&this.originalElement[0].nodeName.match(/^(textarea|input|select|button)$/i)&&(s=t(this.handles[i],this.element),o=/sw|ne|nw|se|n|s/.test(i)?s.outerHeight():s.outerWidth(),n=["padding",/ne|nw|n/.test(i)?"Top":/se|sw|s/.test(i)?"Bottom":/^e$/.test(i)?"Right":"Left"].join(""),e.css(n,o),this._proportionallyResize()),this._handles=this._handles.add(this.handles[i])},this._renderAxis(this.element),this._handles=this._handles.add(this.element.find(".ui-resizable-handle")),this._handles.disableSelection(),this._handles.on("mouseover",function(){r.resizing||(this.className&&(o=this.className.match(/ui-resizable-(se|sw|ne|nw|n|e|s|w)/i)),r.axis=o&&o[1]?o[1]:"se")}),a.autoHide&&(this._handles.hide(),this._addClass("ui-resizable-autohide"))},_removeHandles:function(){this._handles.remove()},_mouseCapture:function(e){var i,s,n=!1;for(i in this.handles)s=t(this.handles[i])[0],(s===e.target||t.contains(s,e.target))&&(n=!0);return!this.options.disabled&&n},_mouseStart:function(e){var i,s,n,o=this.options,a=this.element;return this.resizing=!0,this._renderProxy(),i=this._num(this.helper.css("left")),s=this._num(this.helper.css("top")),o.containment&&(i+=t(o.containment).scrollLeft()||0,s+=t(o.containment).scrollTop()||0),this.offset=this.helper.offset(),this.position={left:i,top:s},this.size=this._helper?{width:this.helper.width(),height:this.helper.height()}:{width:a.width(),height:a.height()},this.originalSize=this._helper?{width:a.outerWidth(),height:a.outerHeight()}:{width:a.width(),height:a.height()},this.sizeDiff={width:a.outerWidth()-a.width(),height:a.outerHeight()-a.height()},this.originalPosition={left:i,top:s},this.originalMousePosition={left:e.pageX,top:e.pageY},this.aspectRatio="number"==typeof o.aspectRatio?o.aspectRatio:this.originalSize.width/this.originalSize.height||1,n=t(".ui-resizable-"+this.axis).css("cursor"),t("body").css("cursor","auto"===n?this.axis+"-resize":n),this._addClass("ui-resizable-resizing"),this._propagate("start",e),!0},_mouseDrag:function(e){var i,s,n=this.originalMousePosition,o=this.axis,a=e.pageX-n.left||0,r=e.pageY-n.top||0,h=this._change[o];return this._updatePrevProperties(),h?(i=h.apply(this,[e,a,r]),this._updateVirtualBoundaries(e.shiftKey),(this._aspectRatio||e.shiftKey)&&(i=this._updateRatio(i,e)),i=this._respectSize(i,e),this._updateCache(i),this._propagate("resize",e),s=this._applyChanges(),!this._helper&&this._proportionallyResizeElements.length&&this._proportionallyResize(),t.isEmptyObject(s)||(this._updatePrevProperties(),this._trigger("resize",e,this.ui()),this._applyChanges()),!1):!1},_mouseStop:function(e){this.resizing=!1;var i,s,n,o,a,r,h,l=this.options,c=this;return this._helper&&(i=this._proportionallyResizeElements,s=i.length&&/textarea/i.test(i[0].nodeName),n=s&&this._hasScroll(i[0],"left")?0:c.sizeDiff.height,o=s?0:c.sizeDiff.width,a={width:c.helper.width()-o,height:c.helper.height()-n},r=parseFloat(c.element.css("left"))+(c.position.left-c.originalPosition.left)||null,h=parseFloat(c.element.css("top"))+(c.position.top-c.originalPosition.top)||null,l.animate||this.element.css(t.extend(a,{top:h,left:r})),c.helper.height(c.size.height),c.helper.width(c.size.width),this._helper&&!l.animate&&this._proportionallyResize()),t("body").css("cursor","auto"),this._removeClass("ui-resizable-resizing"),this._propagate("stop",e),this._helper&&this.helper.remove(),!1},_updatePrevProperties:function(){this.prevPosition={top:this.position.top,left:this.position.left},this.prevSize={width:this.size.width,height:this.size.height}},_applyChanges:function(){var t={};return this.position.top!==this.prevPosition.top&&(t.top=this.position.top+"px"),this.position.left!==this.prevPosition.left&&(t.left=this.position.left+"px"),this.size.width!==this.prevSize.width&&(t.width=this.size.width+"px"),this.size.height!==this.prevSize.height&&(t.height=this.size.height+"px"),this.helper.css(t),t},_updateVirtualBoundaries:function(t){var e,i,s,n,o,a=this.options;o={minWidth:this._isNumber(a.minWidth)?a.minWidth:0,maxWidth:this._isNumber(a.maxWidth)?a.maxWidth:1/0,minHeight:this._isNumber(a.minHeight)?a.minHeight:0,maxHeight:this._isNumber(a.maxHeight)?a.maxHeight:1/0},(this._aspectRatio||t)&&(e=o.minHeight*this.aspectRatio,s=o.minWidth/this.aspectRatio,i=o.maxHeight*this.aspectRatio,n=o.maxWidth/this.aspectRatio,e>o.minWidth&&(o.minWidth=e),s>o.minHeight&&(o.minHeight=s),o.maxWidth>i&&(o.maxWidth=i),o.maxHeight>n&&(o.maxHeight=n)),this._vBoundaries=o},_updateCache:function(t){this.offset=this.helper.offset(),this._isNumber(t.left)&&(this.position.left=t.left),this._isNumber(t.top)&&(this.position.top=t.top),this._isNumber(t.height)&&(this.size.height=t.height),this._isNumber(t.width)&&(this.size.width=t.width)},_updateRatio:function(t){var e=this.position,i=this.size,s=this.axis;return this._isNumber(t.height)?t.width=t.height*this.aspectRatio:this._isNumber(t.width)&&(t.height=t.width/this.aspectRatio),"sw"===s&&(t.left=e.left+(i.width-t.width),t.top=null),"nw"===s&&(t.top=e.top+(i.height-t.height),t.left=e.left+(i.width-t.width)),t},_respectSize:function(t){var e=this._vBoundaries,i=this.axis,s=this._isNumber(t.width)&&e.maxWidth&&e.maxWidtht.width,a=this._isNumber(t.height)&&e.minHeight&&e.minHeight>t.height,r=this.originalPosition.left+this.originalSize.width,h=this.originalPosition.top+this.originalSize.height,l=/sw|nw|w/.test(i),c=/nw|ne|n/.test(i);return o&&(t.width=e.minWidth),a&&(t.height=e.minHeight),s&&(t.width=e.maxWidth),n&&(t.height=e.maxHeight),o&&l&&(t.left=r-e.minWidth),s&&l&&(t.left=r-e.maxWidth),a&&c&&(t.top=h-e.minHeight),n&&c&&(t.top=h-e.maxHeight),t.width||t.height||t.left||!t.top?t.width||t.height||t.top||!t.left||(t.left=null):t.top=null,t},_getPaddingPlusBorderDimensions:function(t){for(var e=0,i=[],s=[t.css("borderTopWidth"),t.css("borderRightWidth"),t.css("borderBottomWidth"),t.css("borderLeftWidth")],n=[t.css("paddingTop"),t.css("paddingRight"),t.css("paddingBottom"),t.css("paddingLeft")];4>e;e++)i[e]=parseFloat(s[e])||0,i[e]+=parseFloat(n[e])||0;return{height:i[0]+i[2],width:i[1]+i[3]}},_proportionallyResize:function(){if(this._proportionallyResizeElements.length)for(var t,e=0,i=this.helper||this.element;this._proportionallyResizeElements.length>e;e++)t=this._proportionallyResizeElements[e],this.outerDimensions||(this.outerDimensions=this._getPaddingPlusBorderDimensions(t)),t.css({height:i.height()-this.outerDimensions.height||0,width:i.width()-this.outerDimensions.width||0})},_renderProxy:function(){var e=this.element,i=this.options;this.elementOffset=e.offset(),this._helper?(this.helper=this.helper||t("
"),this._addClass(this.helper,this._helper),this.helper.css({width:this.element.outerWidth(),height:this.element.outerHeight(),position:"absolute",left:this.elementOffset.left+"px",top:this.elementOffset.top+"px",zIndex:++i.zIndex}),this.helper.appendTo("body").disableSelection()):this.helper=this.element +},_change:{e:function(t,e){return{width:this.originalSize.width+e}},w:function(t,e){var i=this.originalSize,s=this.originalPosition;return{left:s.left+e,width:i.width-e}},n:function(t,e,i){var s=this.originalSize,n=this.originalPosition;return{top:n.top+i,height:s.height-i}},s:function(t,e,i){return{height:this.originalSize.height+i}},se:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},sw:function(e,i,s){return t.extend(this._change.s.apply(this,arguments),this._change.w.apply(this,[e,i,s]))},ne:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.e.apply(this,[e,i,s]))},nw:function(e,i,s){return t.extend(this._change.n.apply(this,arguments),this._change.w.apply(this,[e,i,s]))}},_propagate:function(e,i){t.ui.plugin.call(this,e,[i,this.ui()]),"resize"!==e&&this._trigger(e,i,this.ui())},plugins:{},ui:function(){return{originalElement:this.originalElement,element:this.element,helper:this.helper,position:this.position,size:this.size,originalSize:this.originalSize,originalPosition:this.originalPosition}}}),t.ui.plugin.add("resizable","animate",{stop:function(e){var i=t(this).resizable("instance"),s=i.options,n=i._proportionallyResizeElements,o=n.length&&/textarea/i.test(n[0].nodeName),a=o&&i._hasScroll(n[0],"left")?0:i.sizeDiff.height,r=o?0:i.sizeDiff.width,h={width:i.size.width-r,height:i.size.height-a},l=parseFloat(i.element.css("left"))+(i.position.left-i.originalPosition.left)||null,c=parseFloat(i.element.css("top"))+(i.position.top-i.originalPosition.top)||null;i.element.animate(t.extend(h,c&&l?{top:c,left:l}:{}),{duration:s.animateDuration,easing:s.animateEasing,step:function(){var s={width:parseFloat(i.element.css("width")),height:parseFloat(i.element.css("height")),top:parseFloat(i.element.css("top")),left:parseFloat(i.element.css("left"))};n&&n.length&&t(n[0]).css({width:s.width,height:s.height}),i._updateCache(s),i._propagate("resize",e)}})}}),t.ui.plugin.add("resizable","containment",{start:function(){var e,i,s,n,o,a,r,h=t(this).resizable("instance"),l=h.options,c=h.element,u=l.containment,d=u instanceof t?u.get(0):/parent/.test(u)?c.parent().get(0):u;d&&(h.containerElement=t(d),/document/.test(u)||u===document?(h.containerOffset={left:0,top:0},h.containerPosition={left:0,top:0},h.parentData={element:t(document),left:0,top:0,width:t(document).width(),height:t(document).height()||document.body.parentNode.scrollHeight}):(e=t(d),i=[],t(["Top","Right","Left","Bottom"]).each(function(t,s){i[t]=h._num(e.css("padding"+s))}),h.containerOffset=e.offset(),h.containerPosition=e.position(),h.containerSize={height:e.innerHeight()-i[3],width:e.innerWidth()-i[1]},s=h.containerOffset,n=h.containerSize.height,o=h.containerSize.width,a=h._hasScroll(d,"left")?d.scrollWidth:o,r=h._hasScroll(d)?d.scrollHeight:n,h.parentData={element:d,left:s.left,top:s.top,width:a,height:r}))},resize:function(e){var i,s,n,o,a=t(this).resizable("instance"),r=a.options,h=a.containerOffset,l=a.position,c=a._aspectRatio||e.shiftKey,u={top:0,left:0},d=a.containerElement,p=!0;d[0]!==document&&/static/.test(d.css("position"))&&(u=h),l.left<(a._helper?h.left:0)&&(a.size.width=a.size.width+(a._helper?a.position.left-h.left:a.position.left-u.left),c&&(a.size.height=a.size.width/a.aspectRatio,p=!1),a.position.left=r.helper?h.left:0),l.top<(a._helper?h.top:0)&&(a.size.height=a.size.height+(a._helper?a.position.top-h.top:a.position.top),c&&(a.size.width=a.size.height*a.aspectRatio,p=!1),a.position.top=a._helper?h.top:0),n=a.containerElement.get(0)===a.element.parent().get(0),o=/relative|absolute/.test(a.containerElement.css("position")),n&&o?(a.offset.left=a.parentData.left+a.position.left,a.offset.top=a.parentData.top+a.position.top):(a.offset.left=a.element.offset().left,a.offset.top=a.element.offset().top),i=Math.abs(a.sizeDiff.width+(a._helper?a.offset.left-u.left:a.offset.left-h.left)),s=Math.abs(a.sizeDiff.height+(a._helper?a.offset.top-u.top:a.offset.top-h.top)),i+a.size.width>=a.parentData.width&&(a.size.width=a.parentData.width-i,c&&(a.size.height=a.size.width/a.aspectRatio,p=!1)),s+a.size.height>=a.parentData.height&&(a.size.height=a.parentData.height-s,c&&(a.size.width=a.size.height*a.aspectRatio,p=!1)),p||(a.position.left=a.prevPosition.left,a.position.top=a.prevPosition.top,a.size.width=a.prevSize.width,a.size.height=a.prevSize.height)},stop:function(){var e=t(this).resizable("instance"),i=e.options,s=e.containerOffset,n=e.containerPosition,o=e.containerElement,a=t(e.helper),r=a.offset(),h=a.outerWidth()-e.sizeDiff.width,l=a.outerHeight()-e.sizeDiff.height;e._helper&&!i.animate&&/relative/.test(o.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:h,height:l}),e._helper&&!i.animate&&/static/.test(o.css("position"))&&t(this).css({left:r.left-n.left-s.left,width:h,height:l})}}),t.ui.plugin.add("resizable","alsoResize",{start:function(){var e=t(this).resizable("instance"),i=e.options;t(i.alsoResize).each(function(){var e=t(this);e.data("ui-resizable-alsoresize",{width:parseFloat(e.width()),height:parseFloat(e.height()),left:parseFloat(e.css("left")),top:parseFloat(e.css("top"))})})},resize:function(e,i){var s=t(this).resizable("instance"),n=s.options,o=s.originalSize,a=s.originalPosition,r={height:s.size.height-o.height||0,width:s.size.width-o.width||0,top:s.position.top-a.top||0,left:s.position.left-a.left||0};t(n.alsoResize).each(function(){var e=t(this),s=t(this).data("ui-resizable-alsoresize"),n={},o=e.parents(i.originalElement[0]).length?["width","height"]:["width","height","top","left"];t.each(o,function(t,e){var i=(s[e]||0)+(r[e]||0);i&&i>=0&&(n[e]=i||null)}),e.css(n)})},stop:function(){t(this).removeData("ui-resizable-alsoresize")}}),t.ui.plugin.add("resizable","ghost",{start:function(){var e=t(this).resizable("instance"),i=e.size;e.ghost=e.originalElement.clone(),e.ghost.css({opacity:.25,display:"block",position:"relative",height:i.height,width:i.width,margin:0,left:0,top:0}),e._addClass(e.ghost,"ui-resizable-ghost"),t.uiBackCompat!==!1&&"string"==typeof e.options.ghost&&e.ghost.addClass(this.options.ghost),e.ghost.appendTo(e.helper)},resize:function(){var e=t(this).resizable("instance");e.ghost&&e.ghost.css({position:"relative",height:e.size.height,width:e.size.width})},stop:function(){var e=t(this).resizable("instance");e.ghost&&e.helper&&e.helper.get(0).removeChild(e.ghost.get(0))}}),t.ui.plugin.add("resizable","grid",{resize:function(){var e,i=t(this).resizable("instance"),s=i.options,n=i.size,o=i.originalSize,a=i.originalPosition,r=i.axis,h="number"==typeof s.grid?[s.grid,s.grid]:s.grid,l=h[0]||1,c=h[1]||1,u=Math.round((n.width-o.width)/l)*l,d=Math.round((n.height-o.height)/c)*c,p=o.width+u,f=o.height+d,m=s.maxWidth&&p>s.maxWidth,g=s.maxHeight&&f>s.maxHeight,_=s.minWidth&&s.minWidth>p,v=s.minHeight&&s.minHeight>f;s.grid=h,_&&(p+=l),v&&(f+=c),m&&(p-=l),g&&(f-=c),/^(se|s|e)$/.test(r)?(i.size.width=p,i.size.height=f):/^(ne)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.top=a.top-d):/^(sw)$/.test(r)?(i.size.width=p,i.size.height=f,i.position.left=a.left-u):((0>=f-c||0>=p-l)&&(e=i._getPaddingPlusBorderDimensions(this)),f-c>0?(i.size.height=f,i.position.top=a.top-d):(f=c-e.height,i.size.height=f,i.position.top=a.top+o.height-f),p-l>0?(i.size.width=p,i.position.left=a.left-u):(p=l-e.width,i.size.width=p,i.position.left=a.left+o.width-p))}}),t.ui.resizable});/** + * Copyright (c) 2007 Ariel Flesler - aflesler ○ gmail • com | https://github.com/flesler + * Licensed under MIT + * @author Ariel Flesler + * @version 2.1.2 + */ +;(function(f){"use strict";"function"===typeof define&&define.amd?define(["jquery"],f):"undefined"!==typeof module&&module.exports?module.exports=f(require("jquery")):f(jQuery)})(function($){"use strict";function n(a){return!a.nodeName||-1!==$.inArray(a.nodeName.toLowerCase(),["iframe","#document","html","body"])}function h(a){return $.isFunction(a)||$.isPlainObject(a)?a:{top:a,left:a}}var p=$.scrollTo=function(a,d,b){return $(window).scrollTo(a,d,b)};p.defaults={axis:"xy",duration:0,limit:!0};$.fn.scrollTo=function(a,d,b){"object"=== typeof d&&(b=d,d=0);"function"===typeof b&&(b={onAfter:b});"max"===a&&(a=9E9);b=$.extend({},p.defaults,b);d=d||b.duration;var u=b.queue&&1=f[g]?0:Math.min(f[g],n));!a&&1-1){targetElements.on(evt+EVENT_NAMESPACE,function elementToggle(event){$.powerTip.toggle(this,event)})}else{targetElements.on(evt+EVENT_NAMESPACE,function elementOpen(event){$.powerTip.show(this,event)})}});$.each(options.closeEvents,function(idx,evt){if($.inArray(evt,options.openEvents)<0){targetElements.on(evt+EVENT_NAMESPACE,function elementClose(event){$.powerTip.hide(this,!isMouseEvent(event))})}});targetElements.on("keydown"+EVENT_NAMESPACE,function elementKeyDown(event){if(event.keyCode===27){$.powerTip.hide(this,true)}})}return targetElements};$.fn.powerTip.defaults={fadeInTime:200,fadeOutTime:100,followMouse:false,popupId:"powerTip",popupClass:null,intentSensitivity:7,intentPollInterval:100,closeDelay:100,placement:"n",smartPlacement:false,offset:10,mouseOnToPopup:false,manual:false,openEvents:["mouseenter","focus"],closeEvents:["mouseleave","blur"]};$.fn.powerTip.smartPlacementLists={n:["n","ne","nw","s"],e:["e","ne","se","w","nw","sw","n","s","e"],s:["s","se","sw","n"],w:["w","nw","sw","e","ne","se","n","s","w"],nw:["nw","w","sw","n","s","se","nw"],ne:["ne","e","se","n","s","sw","ne"],sw:["sw","w","nw","s","n","ne","sw"],se:["se","e","ne","s","n","nw","se"],"nw-alt":["nw-alt","n","ne-alt","sw-alt","s","se-alt","w","e"],"ne-alt":["ne-alt","n","nw-alt","se-alt","s","sw-alt","e","w"],"sw-alt":["sw-alt","s","se-alt","nw-alt","n","ne-alt","w","e"],"se-alt":["se-alt","s","sw-alt","ne-alt","n","nw-alt","e","w"]};$.powerTip={show:function apiShowTip(element,event){if(isMouseEvent(event)){trackMouse(event);session.previousX=event.pageX;session.previousY=event.pageY;$(element).data(DATA_DISPLAYCONTROLLER).show()}else{$(element).first().data(DATA_DISPLAYCONTROLLER).show(true,true)}return element},reposition:function apiResetPosition(element){$(element).first().data(DATA_DISPLAYCONTROLLER).resetPosition();return element},hide:function apiCloseTip(element,immediate){var displayController;immediate=element?immediate:true;if(element){displayController=$(element).first().data(DATA_DISPLAYCONTROLLER)}else if(session.activeHover){displayController=session.activeHover.data(DATA_DISPLAYCONTROLLER)}if(displayController){displayController.hide(immediate)}return element},toggle:function apiToggle(element,event){if(session.activeHover&&session.activeHover.is(element)){$.powerTip.hide(element,!isMouseEvent(event))}else{$.powerTip.show(element,event)}return element}};$.powerTip.showTip=$.powerTip.show;$.powerTip.closeTip=$.powerTip.hide;function CSSCoordinates(){var me=this;me.top="auto";me.left="auto";me.right="auto";me.bottom="auto";me.set=function(property,value){if($.isNumeric(value)){me[property]=Math.round(value)}}}function DisplayController(element,options,tipController){var hoverTimer=null,myCloseDelay=null;function openTooltip(immediate,forceOpen){cancelTimer();if(!element.data(DATA_HASACTIVEHOVER)){if(!immediate){session.tipOpenImminent=true;hoverTimer=setTimeout(function intentDelay(){hoverTimer=null;checkForIntent()},options.intentPollInterval)}else{if(forceOpen){element.data(DATA_FORCEDOPEN,true)}closeAnyDelayed();tipController.showTip(element)}}else{cancelClose()}}function closeTooltip(disableDelay){if(myCloseDelay){myCloseDelay=session.closeDelayTimeout=clearTimeout(myCloseDelay);session.delayInProgress=false}cancelTimer();session.tipOpenImminent=false;if(element.data(DATA_HASACTIVEHOVER)){element.data(DATA_FORCEDOPEN,false);if(!disableDelay){session.delayInProgress=true;session.closeDelayTimeout=setTimeout(function closeDelay(){session.closeDelayTimeout=null;tipController.hideTip(element);session.delayInProgress=false;myCloseDelay=null},options.closeDelay);myCloseDelay=session.closeDelayTimeout}else{tipController.hideTip(element)}}}function checkForIntent(){var xDifference=Math.abs(session.previousX-session.currentX),yDifference=Math.abs(session.previousY-session.currentY),totalDifference=xDifference+yDifference;if(totalDifference",{id:options.popupId});if($body.length===0){$body=$("body")}$body.append(tipElement);session.tooltips=session.tooltips?session.tooltips.add(tipElement):tipElement}if(options.followMouse){if(!tipElement.data(DATA_HASMOUSEMOVE)){$document.on("mousemove"+EVENT_NAMESPACE,positionTipOnCursor);$window.on("scroll"+EVENT_NAMESPACE,positionTipOnCursor);tipElement.data(DATA_HASMOUSEMOVE,true)}}function beginShowTip(element){element.data(DATA_HASACTIVEHOVER,true);tipElement.queue(function queueTipInit(next){showTip(element);next()})}function showTip(element){var tipContent;if(!element.data(DATA_HASACTIVEHOVER)){return}if(session.isTipOpen){if(!session.isClosing){hideTip(session.activeHover)}tipElement.delay(100).queue(function queueTipAgain(next){showTip(element);next()});return}element.trigger("powerTipPreRender");tipContent=getTooltipContent(element);if(tipContent){tipElement.empty().append(tipContent)}else{return}element.trigger("powerTipRender");session.activeHover=element;session.isTipOpen=true;tipElement.data(DATA_MOUSEONTOTIP,options.mouseOnToPopup);tipElement.addClass(options.popupClass);if(!options.followMouse||element.data(DATA_FORCEDOPEN)){positionTipOnElement(element);session.isFixedTipOpen=true}else{positionTipOnCursor()}if(!element.data(DATA_FORCEDOPEN)&&!options.followMouse){$document.on("click"+EVENT_NAMESPACE,function documentClick(event){var target=event.target;if(target!==element[0]){if(options.mouseOnToPopup){if(target!==tipElement[0]&&!$.contains(tipElement[0],target)){$.powerTip.hide()}}else{$.powerTip.hide()}}})}if(options.mouseOnToPopup&&!options.manual){tipElement.on("mouseenter"+EVENT_NAMESPACE,function tipMouseEnter(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).cancel()}});tipElement.on("mouseleave"+EVENT_NAMESPACE,function tipMouseLeave(){if(session.activeHover){session.activeHover.data(DATA_DISPLAYCONTROLLER).hide()}})}tipElement.fadeIn(options.fadeInTime,function fadeInCallback(){if(!session.desyncTimeout){session.desyncTimeout=setInterval(closeDesyncedTip,500)}element.trigger("powerTipOpen")})}function hideTip(element){session.isClosing=true;session.isTipOpen=false;session.desyncTimeout=clearInterval(session.desyncTimeout);element.data(DATA_HASACTIVEHOVER,false);element.data(DATA_FORCEDOPEN,false);$document.off("click"+EVENT_NAMESPACE);tipElement.off(EVENT_NAMESPACE);tipElement.fadeOut(options.fadeOutTime,function fadeOutCallback(){var coords=new CSSCoordinates;session.activeHover=null;session.isClosing=false;session.isFixedTipOpen=false;tipElement.removeClass();coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);tipElement.css(coords);element.trigger("powerTipClose")})}function positionTipOnCursor(){var tipWidth,tipHeight,coords,collisions,collisionCount;if(!session.isFixedTipOpen&&(session.isTipOpen||session.tipOpenImminent&&tipElement.data(DATA_HASMOUSEMOVE))){tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=new CSSCoordinates;coords.set("top",session.currentY+options.offset);coords.set("left",session.currentX+options.offset);collisions=getViewportCollisions(coords,tipWidth,tipHeight);if(collisions!==Collision.none){collisionCount=countFlags(collisions);if(collisionCount===1){if(collisions===Collision.right){coords.set("left",session.scrollLeft+session.windowWidth-tipWidth)}else if(collisions===Collision.bottom){coords.set("top",session.scrollTop+session.windowHeight-tipHeight)}}else{coords.set("left",session.currentX-tipWidth-options.offset);coords.set("top",session.currentY-tipHeight-options.offset)}}tipElement.css(coords)}}function positionTipOnElement(element){var priorityList,finalPlacement;if(options.smartPlacement||options.followMouse&&element.data(DATA_FORCEDOPEN)){priorityList=$.fn.powerTip.smartPlacementLists[options.placement];$.each(priorityList,function(idx,pos){var collisions=getViewportCollisions(placeTooltip(element,pos),tipElement.outerWidth(),tipElement.outerHeight());finalPlacement=pos;return collisions!==Collision.none})}else{placeTooltip(element,options.placement);finalPlacement=options.placement}tipElement.removeClass("w nw sw e ne se n s w se-alt sw-alt ne-alt nw-alt");tipElement.addClass(finalPlacement)}function placeTooltip(element,placement){var iterationCount=0,tipWidth,tipHeight,coords=new CSSCoordinates;coords.set("top",0);coords.set("left",0);tipElement.css(coords);do{tipWidth=tipElement.outerWidth();tipHeight=tipElement.outerHeight();coords=placementCalculator.compute(element,placement,tipWidth,tipHeight,options.offset);tipElement.css(coords)}while(++iterationCount<=5&&(tipWidth!==tipElement.outerWidth()||tipHeight!==tipElement.outerHeight()));return coords}function closeDesyncedTip(){var isDesynced=false,hasDesyncableCloseEvent=$.grep(["mouseleave","mouseout","blur","focusout"],function(eventType){return $.inArray(eventType,options.closeEvents)!==-1}).length>0;if(session.isTipOpen&&!session.isClosing&&!session.delayInProgress&&hasDesyncableCloseEvent){if(session.activeHover.data(DATA_HASACTIVEHOVER)===false||session.activeHover.is(":disabled")){isDesynced=true}else if(!isMouseOver(session.activeHover)&&!session.activeHover.is(":focus")&&!session.activeHover.data(DATA_FORCEDOPEN)){if(tipElement.data(DATA_MOUSEONTOTIP)){if(!isMouseOver(tipElement)){isDesynced=true}}else{isDesynced=true}}if(isDesynced){hideTip(session.activeHover)}}}this.showTip=beginShowTip;this.hideTip=hideTip;this.resetPosition=positionTipOnElement}function isSvgElement(element){return Boolean(window.SVGElement&&element[0]instanceof SVGElement)}function isMouseEvent(event){return Boolean(event&&$.inArray(event.type,MOUSE_EVENTS)>-1&&typeof event.pageX==="number")}function initTracking(){if(!session.mouseTrackingActive){session.mouseTrackingActive=true;getViewportDimensions();$(getViewportDimensions);$document.on("mousemove"+EVENT_NAMESPACE,trackMouse);$window.on("resize"+EVENT_NAMESPACE,trackResize);$window.on("scroll"+EVENT_NAMESPACE,trackScroll)}}function getViewportDimensions(){session.scrollLeft=$window.scrollLeft();session.scrollTop=$window.scrollTop();session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackResize(){session.windowWidth=$window.width();session.windowHeight=$window.height()}function trackScroll(){var x=$window.scrollLeft(),y=$window.scrollTop();if(x!==session.scrollLeft){session.currentX+=x-session.scrollLeft;session.scrollLeft=x}if(y!==session.scrollTop){session.currentY+=y-session.scrollTop;session.scrollTop=y}}function trackMouse(event){session.currentX=event.pageX;session.currentY=event.pageY}function isMouseOver(element){var elementPosition=element.offset(),elementBox=element[0].getBoundingClientRect(),elementWidth=elementBox.right-elementBox.left,elementHeight=elementBox.bottom-elementBox.top;return session.currentX>=elementPosition.left&&session.currentX<=elementPosition.left+elementWidth&&session.currentY>=elementPosition.top&&session.currentY<=elementPosition.top+elementHeight}function getTooltipContent(element){var tipText=element.data(DATA_POWERTIP),tipObject=element.data(DATA_POWERTIPJQ),tipTarget=element.data(DATA_POWERTIPTARGET),targetElement,content;if(tipText){if($.isFunction(tipText)){tipText=tipText.call(element[0])}content=tipText}else if(tipObject){if($.isFunction(tipObject)){tipObject=tipObject.call(element[0])}if(tipObject.length>0){content=tipObject.clone(true,true)}}else if(tipTarget){targetElement=$("#"+tipTarget);if(targetElement.length>0){content=targetElement.html()}}return content}function getViewportCollisions(coords,elementWidth,elementHeight){var viewportTop=session.scrollTop,viewportLeft=session.scrollLeft,viewportBottom=viewportTop+session.windowHeight,viewportRight=viewportLeft+session.windowWidth,collisions=Collision.none;if(coords.topviewportBottom||Math.abs(coords.bottom-session.windowHeight)>viewportBottom){collisions|=Collision.bottom}if(coords.leftviewportRight){collisions|=Collision.left}if(coords.left+elementWidth>viewportRight||coords.right1)){a.preventDefault();var c=a.originalEvent.changedTouches[0],d=document.createEvent("MouseEvents");d.initMouseEvent(b,!0,!0,window,1,c.screenX,c.screenY,c.clientX,c.clientY,!1,!1,!1,!1,0,null),a.target.dispatchEvent(d)}}if(a.support.touch="ontouchend"in document,a.support.touch){var e,b=a.ui.mouse.prototype,c=b._mouseInit,d=b._mouseDestroy;b._touchStart=function(a){var b=this;!e&&b._mouseCapture(a.originalEvent.changedTouches[0])&&(e=!0,b._touchMoved=!1,f(a,"mouseover"),f(a,"mousemove"),f(a,"mousedown"))},b._touchMove=function(a){e&&(this._touchMoved=!0,f(a,"mousemove"))},b._touchEnd=function(a){e&&(f(a,"mouseup"),f(a,"mouseout"),this._touchMoved||f(a,"click"),e=!1)},b._mouseInit=function(){var b=this;b.element.bind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),c.call(b)},b._mouseDestroy=function(){var b=this;b.element.unbind({touchstart:a.proxy(b,"_touchStart"),touchmove:a.proxy(b,"_touchMove"),touchend:a.proxy(b,"_touchEnd")}),d.call(b)}}}(jQuery);/*! SmartMenus jQuery Plugin - v1.1.0 - September 17, 2017 + * http://www.smartmenus.org/ + * Copyright Vasil Dinkov, Vadikom Web Ltd. http://vadikom.com; Licensed MIT */(function(t){"function"==typeof define&&define.amd?define(["jquery"],t):"object"==typeof module&&"object"==typeof module.exports?module.exports=t(require("jquery")):t(jQuery)})(function($){function initMouseDetection(t){var e=".smartmenus_mouse";if(mouseDetectionEnabled||t)mouseDetectionEnabled&&t&&($(document).off(e),mouseDetectionEnabled=!1);else{var i=!0,s=null,o={mousemove:function(t){var e={x:t.pageX,y:t.pageY,timeStamp:(new Date).getTime()};if(s){var o=Math.abs(s.x-e.x),a=Math.abs(s.y-e.y);if((o>0||a>0)&&2>=o&&2>=a&&300>=e.timeStamp-s.timeStamp&&(mouse=!0,i)){var n=$(t.target).closest("a");n.is("a")&&$.each(menuTrees,function(){return $.contains(this.$root[0],n[0])?(this.itemEnter({currentTarget:n[0]}),!1):void 0}),i=!1}}s=e}};o[touchEvents?"touchstart":"pointerover pointermove pointerout MSPointerOver MSPointerMove MSPointerOut"]=function(t){isTouchEvent(t.originalEvent)&&(mouse=!1)},$(document).on(getEventsNS(o,e)),mouseDetectionEnabled=!0}}function isTouchEvent(t){return!/^(4|mouse)$/.test(t.pointerType)}function getEventsNS(t,e){e||(e="");var i={};for(var s in t)i[s.split(" ").join(e+" ")+e]=t[s];return i}var menuTrees=[],mouse=!1,touchEvents="ontouchstart"in window,mouseDetectionEnabled=!1,requestAnimationFrame=window.requestAnimationFrame||function(t){return setTimeout(t,1e3/60)},cancelAnimationFrame=window.cancelAnimationFrame||function(t){clearTimeout(t)},canAnimate=!!$.fn.animate;return $.SmartMenus=function(t,e){this.$root=$(t),this.opts=e,this.rootId="",this.accessIdPrefix="",this.$subArrow=null,this.activatedItems=[],this.visibleSubMenus=[],this.showTimeout=0,this.hideTimeout=0,this.scrollTimeout=0,this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.idInc=0,this.$firstLink=null,this.$firstSub=null,this.disabled=!1,this.$disableOverlay=null,this.$touchScrollingSub=null,this.cssTransforms3d="perspective"in t.style||"webkitPerspective"in t.style,this.wasCollapsible=!1,this.init()},$.extend($.SmartMenus,{hideAll:function(){$.each(menuTrees,function(){this.menuHideAll()})},destroy:function(){for(;menuTrees.length;)menuTrees[0].destroy();initMouseDetection(!0)},prototype:{init:function(t){var e=this;if(!t){menuTrees.push(this),this.rootId=((new Date).getTime()+Math.random()+"").replace(/\D/g,""),this.accessIdPrefix="sm-"+this.rootId+"-",this.$root.hasClass("sm-rtl")&&(this.opts.rightToLeftSubMenus=!0);var i=".smartmenus";this.$root.data("smartmenus",this).attr("data-smartmenus-id",this.rootId).dataSM("level",1).on(getEventsNS({"mouseover focusin":$.proxy(this.rootOver,this),"mouseout focusout":$.proxy(this.rootOut,this),keydown:$.proxy(this.rootKeyDown,this)},i)).on(getEventsNS({mouseenter:$.proxy(this.itemEnter,this),mouseleave:$.proxy(this.itemLeave,this),mousedown:$.proxy(this.itemDown,this),focus:$.proxy(this.itemFocus,this),blur:$.proxy(this.itemBlur,this),click:$.proxy(this.itemClick,this)},i),"a"),i+=this.rootId,this.opts.hideOnClick&&$(document).on(getEventsNS({touchstart:$.proxy(this.docTouchStart,this),touchmove:$.proxy(this.docTouchMove,this),touchend:$.proxy(this.docTouchEnd,this),click:$.proxy(this.docClick,this)},i)),$(window).on(getEventsNS({"resize orientationchange":$.proxy(this.winResize,this)},i)),this.opts.subIndicators&&(this.$subArrow=$("").addClass("sub-arrow"),this.opts.subIndicatorsText&&this.$subArrow.html(this.opts.subIndicatorsText)),initMouseDetection()}if(this.$firstSub=this.$root.find("ul").each(function(){e.menuInit($(this))}).eq(0),this.$firstLink=this.$root.find("a").eq(0),this.opts.markCurrentItem){var s=/(index|default)\.[^#\?\/]*/i,o=/#.*/,a=window.location.href.replace(s,""),n=a.replace(o,"");this.$root.find("a").each(function(){var t=this.href.replace(s,""),i=$(this);(t==a||t==n)&&(i.addClass("current"),e.opts.markCurrentTree&&i.parentsUntil("[data-smartmenus-id]","ul").each(function(){$(this).dataSM("parent-a").addClass("current")}))})}this.wasCollapsible=this.isCollapsible()},destroy:function(t){if(!t){var e=".smartmenus";this.$root.removeData("smartmenus").removeAttr("data-smartmenus-id").removeDataSM("level").off(e),e+=this.rootId,$(document).off(e),$(window).off(e),this.opts.subIndicators&&(this.$subArrow=null)}this.menuHideAll();var i=this;this.$root.find("ul").each(function(){var t=$(this);t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.dataSM("shown-before")&&((i.opts.subMenusMinWidth||i.opts.subMenusMaxWidth)&&t.css({width:"",minWidth:"",maxWidth:""}).removeClass("sm-nowrap"),t.dataSM("scroll-arrows")&&t.dataSM("scroll-arrows").remove(),t.css({zIndex:"",top:"",left:"",marginLeft:"",marginTop:"",display:""})),0==(t.attr("id")||"").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeDataSM("in-mega").removeDataSM("shown-before").removeDataSM("scroll-arrows").removeDataSM("parent-a").removeDataSM("level").removeDataSM("beforefirstshowfired").removeAttr("role").removeAttr("aria-hidden").removeAttr("aria-labelledby").removeAttr("aria-expanded"),this.$root.find("a.has-submenu").each(function(){var t=$(this);0==t.attr("id").indexOf(i.accessIdPrefix)&&t.removeAttr("id")}).removeClass("has-submenu").removeDataSM("sub").removeAttr("aria-haspopup").removeAttr("aria-controls").removeAttr("aria-expanded").closest("li").removeDataSM("sub"),this.opts.subIndicators&&this.$root.find("span.sub-arrow").remove(),this.opts.markCurrentItem&&this.$root.find("a.current").removeClass("current"),t||(this.$root=null,this.$firstLink=null,this.$firstSub=null,this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),menuTrees.splice($.inArray(this,menuTrees),1))},disable:function(t){if(!this.disabled){if(this.menuHideAll(),!t&&!this.opts.isPopup&&this.$root.is(":visible")){var e=this.$root.offset();this.$disableOverlay=$('
').css({position:"absolute",top:e.top,left:e.left,width:this.$root.outerWidth(),height:this.$root.outerHeight(),zIndex:this.getStartZIndex(!0),opacity:0}).appendTo(document.body)}this.disabled=!0}},docClick:function(t){return this.$touchScrollingSub?(this.$touchScrollingSub=null,void 0):((this.visibleSubMenus.length&&!$.contains(this.$root[0],t.target)||$(t.target).closest("a").length)&&this.menuHideAll(),void 0)},docTouchEnd:function(){if(this.lastTouch){if(!(!this.visibleSubMenus.length||void 0!==this.lastTouch.x2&&this.lastTouch.x1!=this.lastTouch.x2||void 0!==this.lastTouch.y2&&this.lastTouch.y1!=this.lastTouch.y2||this.lastTouch.target&&$.contains(this.$root[0],this.lastTouch.target))){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var t=this;this.hideTimeout=setTimeout(function(){t.menuHideAll()},350)}this.lastTouch=null}},docTouchMove:function(t){if(this.lastTouch){var e=t.originalEvent.touches[0];this.lastTouch.x2=e.pageX,this.lastTouch.y2=e.pageY}},docTouchStart:function(t){var e=t.originalEvent.touches[0];this.lastTouch={x1:e.pageX,y1:e.pageY,target:e.target}},enable:function(){this.disabled&&(this.$disableOverlay&&(this.$disableOverlay.remove(),this.$disableOverlay=null),this.disabled=!1)},getClosestMenu:function(t){for(var e=$(t).closest("ul");e.dataSM("in-mega");)e=e.parent().closest("ul");return e[0]||null},getHeight:function(t){return this.getOffset(t,!0)},getOffset:function(t,e){var i;"none"==t.css("display")&&(i={position:t[0].style.position,visibility:t[0].style.visibility},t.css({position:"absolute",visibility:"hidden"}).show());var s=t[0].getBoundingClientRect&&t[0].getBoundingClientRect(),o=s&&(e?s.height||s.bottom-s.top:s.width||s.right-s.left);return o||0===o||(o=e?t[0].offsetHeight:t[0].offsetWidth),i&&t.hide().css(i),o},getStartZIndex:function(t){var e=parseInt(this[t?"$root":"$firstSub"].css("z-index"));return!t&&isNaN(e)&&(e=parseInt(this.$root.css("z-index"))),isNaN(e)?1:e},getTouchPoint:function(t){return t.touches&&t.touches[0]||t.changedTouches&&t.changedTouches[0]||t},getViewport:function(t){var e=t?"Height":"Width",i=document.documentElement["client"+e],s=window["inner"+e];return s&&(i=Math.min(i,s)),i},getViewportHeight:function(){return this.getViewport(!0)},getViewportWidth:function(){return this.getViewport()},getWidth:function(t){return this.getOffset(t)},handleEvents:function(){return!this.disabled&&this.isCSSOn()},handleItemEvents:function(t){return this.handleEvents()&&!this.isLinkInMegaMenu(t)},isCollapsible:function(){return"static"==this.$firstSub.css("position")},isCSSOn:function(){return"inline"!=this.$firstLink.css("display")},isFixed:function(){var t="fixed"==this.$root.css("position");return t||this.$root.parentsUntil("body").each(function(){return"fixed"==$(this).css("position")?(t=!0,!1):void 0}),t},isLinkInMegaMenu:function(t){return $(this.getClosestMenu(t[0])).hasClass("mega-menu")},isTouchMode:function(){return!mouse||this.opts.noMouseOver||this.isCollapsible()},itemActivate:function(t,e){var i=t.closest("ul"),s=i.dataSM("level");if(s>1&&(!this.activatedItems[s-2]||this.activatedItems[s-2][0]!=i.dataSM("parent-a")[0])){var o=this;$(i.parentsUntil("[data-smartmenus-id]","ul").get().reverse()).add(i).each(function(){o.itemActivate($(this).dataSM("parent-a"))})}if((!this.isCollapsible()||e)&&this.menuHideSubMenus(this.activatedItems[s-1]&&this.activatedItems[s-1][0]==t[0]?s:s-1),this.activatedItems[s-1]=t,this.$root.triggerHandler("activate.smapi",t[0])!==!1){var a=t.dataSM("sub");a&&(this.isTouchMode()||!this.opts.showOnClick||this.clickActivated)&&this.menuShow(a)}},itemBlur:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&this.$root.triggerHandler("blur.smapi",e[0])},itemClick:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(this.$touchScrollingSub&&this.$touchScrollingSub[0]==e.closest("ul")[0])return this.$touchScrollingSub=null,t.stopPropagation(),!1;if(this.$root.triggerHandler("click.smapi",e[0])===!1)return!1;var i=$(t.target).is(".sub-arrow"),s=e.dataSM("sub"),o=s?2==s.dataSM("level"):!1,a=this.isCollapsible(),n=/toggle$/.test(this.opts.collapsibleBehavior),r=/link$/.test(this.opts.collapsibleBehavior),h=/^accordion/.test(this.opts.collapsibleBehavior);if(s&&!s.is(":visible")){if((!r||!a||i)&&(this.opts.showOnClick&&o&&(this.clickActivated=!0),this.itemActivate(e,h),s.is(":visible")))return this.focusActivated=!0,!1}else if(a&&(n||i))return this.itemActivate(e,h),this.menuHide(s),n&&(this.focusActivated=!1),!1;return this.opts.showOnClick&&o||e.hasClass("disabled")||this.$root.triggerHandler("select.smapi",e[0])===!1?!1:void 0}},itemDown:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&e.dataSM("mousedown",!0)},itemEnter:function(t){var e=$(t.currentTarget);if(this.handleItemEvents(e)){if(!this.isTouchMode()){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);var i=this;this.showTimeout=setTimeout(function(){i.itemActivate(e)},this.opts.showOnClick&&1==e.closest("ul").dataSM("level")?1:this.opts.showTimeout)}this.$root.triggerHandler("mouseenter.smapi",e[0])}},itemFocus:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(!this.focusActivated||this.isTouchMode()&&e.dataSM("mousedown")||this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0]==e[0]||this.itemActivate(e,!0),this.$root.triggerHandler("focus.smapi",e[0]))},itemLeave:function(t){var e=$(t.currentTarget);this.handleItemEvents(e)&&(this.isTouchMode()||(e[0].blur(),this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0)),e.removeDataSM("mousedown"),this.$root.triggerHandler("mouseleave.smapi",e[0]))},menuHide:function(t){if(this.$root.triggerHandler("beforehide.smapi",t[0])!==!1&&(canAnimate&&t.stop(!0,!0),"none"!=t.css("display"))){var e=function(){t.css("z-index","")};this.isCollapsible()?canAnimate&&this.opts.collapsibleHideFunction?this.opts.collapsibleHideFunction.call(this,t,e):t.hide(this.opts.collapsibleHideDuration,e):canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,t,e):t.hide(this.opts.hideDuration,e),t.dataSM("scroll")&&(this.menuScrollStop(t),t.css({"touch-action":"","-ms-touch-action":"","-webkit-transform":"",transform:""}).off(".smartmenus_scroll").removeDataSM("scroll").dataSM("scroll-arrows").hide()),t.dataSM("parent-a").removeClass("highlighted").attr("aria-expanded","false"),t.attr({"aria-expanded":"false","aria-hidden":"true"});var i=t.dataSM("level");this.activatedItems.splice(i-1,1),this.visibleSubMenus.splice($.inArray(t,this.visibleSubMenus),1),this.$root.triggerHandler("hide.smapi",t[0])}},menuHideAll:function(){this.showTimeout&&(clearTimeout(this.showTimeout),this.showTimeout=0);for(var t=this.opts.isPopup?1:0,e=this.visibleSubMenus.length-1;e>=t;e--)this.menuHide(this.visibleSubMenus[e]);this.opts.isPopup&&(canAnimate&&this.$root.stop(!0,!0),this.$root.is(":visible")&&(canAnimate&&this.opts.hideFunction?this.opts.hideFunction.call(this,this.$root):this.$root.hide(this.opts.hideDuration))),this.activatedItems=[],this.visibleSubMenus=[],this.clickActivated=!1,this.focusActivated=!1,this.zIndexInc=0,this.$root.triggerHandler("hideAll.smapi")},menuHideSubMenus:function(t){for(var e=this.activatedItems.length-1;e>=t;e--){var i=this.activatedItems[e].dataSM("sub");i&&this.menuHide(i)}},menuInit:function(t){if(!t.dataSM("in-mega")){t.hasClass("mega-menu")&&t.find("ul").dataSM("in-mega",!0);for(var e=2,i=t[0];(i=i.parentNode.parentNode)!=this.$root[0];)e++;var s=t.prevAll("a").eq(-1);s.length||(s=t.prevAll().find("a").eq(-1)),s.addClass("has-submenu").dataSM("sub",t),t.dataSM("parent-a",s).dataSM("level",e).parent().dataSM("sub",t);var o=s.attr("id")||this.accessIdPrefix+ ++this.idInc,a=t.attr("id")||this.accessIdPrefix+ ++this.idInc;s.attr({id:o,"aria-haspopup":"true","aria-controls":a,"aria-expanded":"false"}),t.attr({id:a,role:"group","aria-hidden":"true","aria-labelledby":o,"aria-expanded":"false"}),this.opts.subIndicators&&s[this.opts.subIndicatorsPos](this.$subArrow.clone())}},menuPosition:function(t){var e,i,s=t.dataSM("parent-a"),o=s.closest("li"),a=o.parent(),n=t.dataSM("level"),r=this.getWidth(t),h=this.getHeight(t),u=s.offset(),l=u.left,c=u.top,d=this.getWidth(s),m=this.getHeight(s),p=$(window),f=p.scrollLeft(),v=p.scrollTop(),b=this.getViewportWidth(),S=this.getViewportHeight(),g=a.parent().is("[data-sm-horizontal-sub]")||2==n&&!a.hasClass("sm-vertical"),M=this.opts.rightToLeftSubMenus&&!o.is("[data-sm-reverse]")||!this.opts.rightToLeftSubMenus&&o.is("[data-sm-reverse]"),w=2==n?this.opts.mainMenuSubOffsetX:this.opts.subMenusSubOffsetX,T=2==n?this.opts.mainMenuSubOffsetY:this.opts.subMenusSubOffsetY;if(g?(e=M?d-r-w:w,i=this.opts.bottomToTopSubMenus?-h-T:m+T):(e=M?w-r:d-w,i=this.opts.bottomToTopSubMenus?m-T-h:T),this.opts.keepInViewport){var y=l+e,I=c+i;if(M&&f>y?e=g?f-y+e:d-w:!M&&y+r>f+b&&(e=g?f+b-r-y+e:w-r),g||(S>h&&I+h>v+S?i+=v+S-h-I:(h>=S||v>I)&&(i+=v-I)),g&&(I+h>v+S+.49||v>I)||!g&&h>S+.49){var x=this;t.dataSM("scroll-arrows")||t.dataSM("scroll-arrows",$([$('')[0],$('')[0]]).on({mouseenter:function(){t.dataSM("scroll").up=$(this).hasClass("scroll-up"),x.menuScroll(t)},mouseleave:function(e){x.menuScrollStop(t),x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(t){t.preventDefault()}}).insertAfter(t));var A=".smartmenus_scroll";if(t.dataSM("scroll",{y:this.cssTransforms3d?0:i-m,step:1,itemH:m,subH:h,arrowDownH:this.getHeight(t.dataSM("scroll-arrows").eq(1))}).on(getEventsNS({mouseover:function(e){x.menuScrollOver(t,e)},mouseout:function(e){x.menuScrollOut(t,e)},"mousewheel DOMMouseScroll":function(e){x.menuScrollMousewheel(t,e)}},A)).dataSM("scroll-arrows").css({top:"auto",left:"0",marginLeft:e+(parseInt(t.css("border-left-width"))||0),width:r-(parseInt(t.css("border-left-width"))||0)-(parseInt(t.css("border-right-width"))||0),zIndex:t.css("z-index")}).eq(g&&this.opts.bottomToTopSubMenus?0:1).show(),this.isFixed()){var C={};C[touchEvents?"touchstart touchmove touchend":"pointerdown pointermove pointerup MSPointerDown MSPointerMove MSPointerUp"]=function(e){x.menuScrollTouch(t,e)},t.css({"touch-action":"none","-ms-touch-action":"none"}).on(getEventsNS(C,A))}}}t.css({top:"auto",left:"0",marginLeft:e,marginTop:i-m})},menuScroll:function(t,e,i){var s,o=t.dataSM("scroll"),a=t.dataSM("scroll-arrows"),n=o.up?o.upEnd:o.downEnd;if(!e&&o.momentum){if(o.momentum*=.92,s=o.momentum,.5>s)return this.menuScrollStop(t),void 0}else s=i||(e||!this.opts.scrollAccelerate?this.opts.scrollStep:Math.floor(o.step));var r=t.dataSM("level");if(this.activatedItems[r-1]&&this.activatedItems[r-1].dataSM("sub")&&this.activatedItems[r-1].dataSM("sub").is(":visible")&&this.menuHideSubMenus(r-1),o.y=o.up&&o.y>=n||!o.up&&n>=o.y?o.y:Math.abs(n-o.y)>s?o.y+(o.up?s:-s):n,t.css(this.cssTransforms3d?{"-webkit-transform":"translate3d(0, "+o.y+"px, 0)",transform:"translate3d(0, "+o.y+"px, 0)"}:{marginTop:o.y}),mouse&&(o.up&&o.y>o.downEnd||!o.up&&o.y0;t.dataSM("scroll-arrows").eq(i?0:1).is(":visible")&&(t.dataSM("scroll").up=i,this.menuScroll(t,!0))}e.preventDefault()},menuScrollOut:function(t,e){mouse&&(/^scroll-(up|down)/.test((e.relatedTarget||"").className)||(t[0]==e.relatedTarget||$.contains(t[0],e.relatedTarget))&&this.getClosestMenu(e.relatedTarget)==t[0]||t.dataSM("scroll-arrows").css("visibility","hidden"))},menuScrollOver:function(t,e){if(mouse&&!/^scroll-(up|down)/.test(e.target.className)&&this.getClosestMenu(e.target)==t[0]){this.menuScrollRefreshData(t);var i=t.dataSM("scroll"),s=$(window).scrollTop()-t.dataSM("parent-a").offset().top-i.itemH;t.dataSM("scroll-arrows").eq(0).css("margin-top",s).end().eq(1).css("margin-top",s+this.getViewportHeight()-i.arrowDownH).end().css("visibility","visible")}},menuScrollRefreshData:function(t){var e=t.dataSM("scroll"),i=$(window).scrollTop()-t.dataSM("parent-a").offset().top-e.itemH;this.cssTransforms3d&&(i=-(parseFloat(t.css("margin-top"))-i)),$.extend(e,{upEnd:i,downEnd:i+this.getViewportHeight()-e.subH})},menuScrollStop:function(t){return this.scrollTimeout?(cancelAnimationFrame(this.scrollTimeout),this.scrollTimeout=0,t.dataSM("scroll").step=1,!0):void 0},menuScrollTouch:function(t,e){if(e=e.originalEvent,isTouchEvent(e)){var i=this.getTouchPoint(e);if(this.getClosestMenu(i.target)==t[0]){var s=t.dataSM("scroll");if(/(start|down)$/i.test(e.type))this.menuScrollStop(t)?(e.preventDefault(),this.$touchScrollingSub=t):this.$touchScrollingSub=null,this.menuScrollRefreshData(t),$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp});else if(/move$/i.test(e.type)){var o=void 0!==s.touchY?s.touchY:s.touchStartY;if(void 0!==o&&o!=i.pageY){this.$touchScrollingSub=t;var a=i.pageY>o;void 0!==s.up&&s.up!=a&&$.extend(s,{touchStartY:i.pageY,touchStartTime:e.timeStamp}),$.extend(s,{up:a,touchY:i.pageY}),this.menuScroll(t,!0,Math.abs(i.pageY-o))}e.preventDefault()}else void 0!==s.touchY&&((s.momentum=15*Math.pow(Math.abs(i.pageY-s.touchStartY)/(e.timeStamp-s.touchStartTime),2))&&(this.menuScrollStop(t),this.menuScroll(t),e.preventDefault()),delete s.touchY)}}},menuShow:function(t){if((t.dataSM("beforefirstshowfired")||(t.dataSM("beforefirstshowfired",!0),this.$root.triggerHandler("beforefirstshow.smapi",t[0])!==!1))&&this.$root.triggerHandler("beforeshow.smapi",t[0])!==!1&&(t.dataSM("shown-before",!0),canAnimate&&t.stop(!0,!0),!t.is(":visible"))){var e=t.dataSM("parent-a"),i=this.isCollapsible();if((this.opts.keepHighlighted||i)&&e.addClass("highlighted"),i)t.removeClass("sm-nowrap").css({zIndex:"",width:"auto",minWidth:"",maxWidth:"",top:"",left:"",marginLeft:"",marginTop:""});else{if(t.css("z-index",this.zIndexInc=(this.zIndexInc||this.getStartZIndex())+1),(this.opts.subMenusMinWidth||this.opts.subMenusMaxWidth)&&(t.css({width:"auto",minWidth:"",maxWidth:""}).addClass("sm-nowrap"),this.opts.subMenusMinWidth&&t.css("min-width",this.opts.subMenusMinWidth),this.opts.subMenusMaxWidth)){var s=this.getWidth(t);t.css("max-width",this.opts.subMenusMaxWidth),s>this.getWidth(t)&&t.removeClass("sm-nowrap").css("width",this.opts.subMenusMaxWidth)}this.menuPosition(t)}var o=function(){t.css("overflow","")};i?canAnimate&&this.opts.collapsibleShowFunction?this.opts.collapsibleShowFunction.call(this,t,o):t.show(this.opts.collapsibleShowDuration,o):canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,t,o):t.show(this.opts.showDuration,o),e.attr("aria-expanded","true"),t.attr({"aria-expanded":"true","aria-hidden":"false"}),this.visibleSubMenus.push(t),this.$root.triggerHandler("show.smapi",t[0])}},popupHide:function(t){this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0);var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},t?1:this.opts.hideTimeout)},popupShow:function(t,e){if(!this.opts.isPopup)return alert('SmartMenus jQuery Error:\n\nIf you want to show this menu via the "popupShow" method, set the isPopup:true option.'),void 0;if(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),this.$root.dataSM("shown-before",!0),canAnimate&&this.$root.stop(!0,!0),!this.$root.is(":visible")){this.$root.css({left:t,top:e});var i=this,s=function(){i.$root.css("overflow","")};canAnimate&&this.opts.showFunction?this.opts.showFunction.call(this,this.$root,s):this.$root.show(this.opts.showDuration,s),this.visibleSubMenus[0]=this.$root}},refresh:function(){this.destroy(!0),this.init(!0)},rootKeyDown:function(t){if(this.handleEvents())switch(t.keyCode){case 27:var e=this.activatedItems[0];if(e){this.menuHideAll(),e[0].focus();var i=e.dataSM("sub");i&&this.menuHide(i)}break;case 32:var s=$(t.target);if(s.is("a")&&this.handleItemEvents(s)){var i=s.dataSM("sub");i&&!i.is(":visible")&&(this.itemClick({currentTarget:t.target}),t.preventDefault())}}},rootOut:function(t){if(this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&(this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0),!this.opts.showOnClick||!this.opts.hideOnClick)){var e=this;this.hideTimeout=setTimeout(function(){e.menuHideAll()},this.opts.hideTimeout)}},rootOver:function(t){this.handleEvents()&&!this.isTouchMode()&&t.target!=this.$root[0]&&this.hideTimeout&&(clearTimeout(this.hideTimeout),this.hideTimeout=0)},winResize:function(t){if(this.handleEvents()){if(!("onorientationchange"in window)||"orientationchange"==t.type){var e=this.isCollapsible();this.wasCollapsible&&e||(this.activatedItems.length&&this.activatedItems[this.activatedItems.length-1][0].blur(),this.menuHideAll()),this.wasCollapsible=e}}else if(this.$disableOverlay){var i=this.$root.offset();this.$disableOverlay.css({top:i.top,left:i.left,width:this.$root.outerWidth(),height:this.$root.outerHeight()})}}}}),$.fn.dataSM=function(t,e){return e?this.data(t+"_smartmenus",e):this.data(t+"_smartmenus")},$.fn.removeDataSM=function(t){return this.removeData(t+"_smartmenus")},$.fn.smartmenus=function(options){if("string"==typeof options){var args=arguments,method=options;return Array.prototype.shift.call(args),this.each(function(){var t=$(this).data("smartmenus");t&&t[method]&&t[method].apply(t,args)})}return this.each(function(){var dataOpts=$(this).data("sm-options")||null;if(dataOpts)try{dataOpts=eval("("+dataOpts+")")}catch(e){dataOpts=null,alert('ERROR\n\nSmartMenus jQuery init:\nInvalid "data-sm-options" attribute value syntax.')}new $.SmartMenus(this,$.extend({},$.fn.smartmenus.defaults,options,dataOpts))})},$.fn.smartmenus.defaults={isPopup:!1,mainMenuSubOffsetX:0,mainMenuSubOffsetY:0,subMenusSubOffsetX:0,subMenusSubOffsetY:0,subMenusMinWidth:"10em",subMenusMaxWidth:"20em",subIndicators:!0,subIndicatorsPos:"append",subIndicatorsText:"",scrollStep:30,scrollAccelerate:!0,showTimeout:250,hideTimeout:500,showDuration:0,showFunction:null,hideDuration:0,hideFunction:function(t,e){t.fadeOut(200,e)},collapsibleShowDuration:0,collapsibleShowFunction:function(t,e){t.slideDown(200,e)},collapsibleHideDuration:0,collapsibleHideFunction:function(t,e){t.slideUp(200,e)},showOnClick:!1,hideOnClick:!0,noMouseOver:!1,keepInViewport:!0,keepHighlighted:!0,markCurrentItem:!1,markCurrentTree:!0,rightToLeftSubMenus:!1,bottomToTopSubMenus:!1,collapsibleBehavior:"default"},$}); \ No newline at end of file diff --git a/logo.png b/logo.png new file mode 100644 index 0000000000000000000000000000000000000000..e6b5897d9a7cfbfca6f4b5e92904ad740ee4f73e GIT binary patch literal 48692 zcma&NW0WO9vnaZE+vc=2ZM&y!+qP}nwr$%sr)_iEw&%@v&bjBl_wQw`ToD-+$f#Ns znOTt;AulTi5Ay>C006*ChzlzM06?1mR49ml6c3+Rmwy20q$nl`sGY$*`_~9IQI{~4 zkpWQs!=V7+KokJze^~xq0N@V*_hz(fkMhQ^fz( zf71U0LGywCS7ScN|KSGG#HA)W*cwfY9B>+SZB7orn0pIJo}d{~^;86aE*A zvlS1qx{N%bke#CmAuAmV9Ro2h3?U&Qx1+Hsm!h!f|A_x<@erFkJKJ;7)4RF3(YZ0x z**TigGjeir(lap8GcnQrJ#uKT+=gP`TtBElmDd{*QiM zM(+RO{QuDY#|}6Be~kaXI`iM2{ulM1tGqDW^#A+VcwwXm$u$4~et?9qfU-OAQU_8W zcVv0TRc5-!&8RYfA0*(D1sjCapHZgNtzHIEUmALk86hWrPUn;iBFi7P07n=qcuo+6 z4Jq>%TW#fP>*p?emlxOaW|Hi}L~n!KrfFHX&%<;UyWP&XBJUApd>OwMC85-QeYUi* z<-K&`F>OWH%?=%oO-I>6^HBz=Opc{QqxK8UABFFwQhp=DW6Gp5{#+1RrT)e_+tLY; zXt38{Ad8}_|4&@iVjbLgqYbcThK01oWZx;)skbtZ{>eAFWP1HFC4YOCI%(uT6j^3$ z;IcuOGCxSki}6z{sT(g5#Us&^;h8C>B26<&e^$6}CelL5msV(XmQ*rMuoPy>MP)#f z&{39FYp#S6jPi8XPQ1_18o?wsqY<*PMgi81O*_1p5!E|BZ0^Y}q+!|#m%;eqwcK~0 zB-B2nGCAcFlS#->`N+G7H-_S*p z*h!szl-zu#8p#e%MlMQ@Q|)j->$&xp4+B3(*kpllmxJc0Pc9Ngy1m7u_;Caz6D#Hb z1wFu$IzWnEB7uzT2$htX1X_ZL78O%At8oA-?OFoHg0tATeD#w?Lj^743^?$60}R2R z_NTtY&B5zG8B1CTpOHw2UUk-QIpkmPCv_nO#ZX#pk1BD7Pf+oF<4XFQ1^)2Lj_Lj+ zgXLv%v=V5T`1%u*>wv<)Nnhsx;7@2FrbCE+Xa#VziOzn!se|~Mm@A2KP4Vmr^-Ss# zB0Gs^A`g|+-;?TO@zp2{uMHKFu(V2kZp-ary)9B#pFY2;C2jz!LoQDhFWspv;@n}B8W zvAJ5ub5O zBpKh;!v}_+*RW4Y;Sb8E*(*y{olb6jR++TV?V31{r$^-=OzBT}&DRz{B`6uZP!)y0 zWa9d(%|k$~mY-xWKx+vO#=9vMhTVdbicd(T_@tNMmsN-oYpc&vhgAr-zDvzb3cZaL zMLe+zoGy!lmpGo1ah@ao6F&o)e$n<1|4LpH3L?WsWW_=%(0I<@BhtrQa1?n|@u=)R zJlFG7gPHN97kwFvYMQcXbb9UF;2V;_AKI~qICB~mLZCcyp(`h@WX15phb>`>&-Hax zQYtYO!VHDYP-}z1KtJe`x!u|Fh#LZGMuVVvR-sr5l&+t5_a!q1F!ck9je&+fb5keq z_&+Y6aGjOq1a=73JDPl~=d?a3f*LVMX;}4FhS@a}ecu}y^qa*C22!O0Z{I7C4$O$i5pDw8 zDN@PZ!G9EqKgLSAg6P<(lYAPRjUt!SCJc<`U@@N*Sq^pmmnnbC_@~s&T8#a6VzNM; zbPZhAR8pkFB$Ea{X45!i3jP67!v|=(!@&b?%{EwY(h&r2Xj7yX-g#4d3Vo?e>`z=E z%SvUGiYwYh2qb(&rwre~jMjYP-H(NjEO?EDfn7vDNWML<8HASelwm+2GnW;@a_?8l zlwZVg8;Zr+t~FV&3;sGD1o&UyEoVm`x0YwqXvd;Yx-J}p#9EQ%ObaF!v^FfiXb|O* zu)^i?8L+>)dVpAcKQ|LY*WPVnB%e(QFnObQoNH@B zXP)C|aChH?F9n-LRIhD98CyUX<9Y1a`$N}D6PEWc_`+vwJpJT^M^xms?<1F^e|)0A zD#w~+z!D}1E%VxEhv0kG{$Z^>tVsuy6)rA)XH44wS=3)vBdL#~6P|0YW-ma^HTu`5 zIixym*ULk#_*y&)0Tzn55A!TuuEgbf5maApZ=fr z3})ezReX{_S$*C%Xcxg1&g7E%5$GU{xnCu(OQm127;2*hC)aUd67>+$3vZFFFzywn?MWJ_?iUBMj`i7n! z`!$nfW)p=VNfM~Y{>SF}6af@dyS|H9YgSOLi8+*SY1X;6H!`vLE5d+RKutBUV=K<~ z*R17g9NC3EX}Lzj@D{p}SuR+@FkN8$?I!CXg2a}s9$umff~lZx;l*b1j@fHe--T`E z{LpR2?3lVOW(fyJygX??Se5ZUP6XhPPzB>h*pxhgn>3n;w3$Ku5xjH=WW^lU|CulO z4}B>yUx(#o^m1UNbv1lHD`dr{uZSZVwdZ$p@|$9R+b^!T88GT&n@u+XK7T(H3?k6F zx$d<=_ZX+5!rs{)SHk!JZX>_MRylKJH>gO=26a-v|`$hhb@fid|h8Y_~ zXaI%e76t6;P0bjlH(t)H>2Nh0xk*E9>|9|gEdl#ONR0)> zX<`)*PHvXiHSWYE+)TXXULkZ3s}wH+fd|T^%5!jFB0+Zai7gBN``S%7=C4o05f3(a z*gr~VFHlW-7xKgFk+wYTpRXExktjAMJ?2fy7=%DiKzSIr7cV{LYg_<+{DQ3)^%^w9 zL0GJG$mjwcafyxd&%HFiy-_CblDN64WUI{2#YPeWZ7Z?HzmXC^kvFW}L?P9Ws!~z& zLr%%Usu3W(;u{|I=ya#2l|myssg#%BY3Q5FPD{L~HBR!rUsrvf!Rg6(sW*bQy|r1u zUB9!sDR^FtYtgB6ykrTo+G3O}cot4N1;Ll^i_+)$lPQbCPW&5cotDS%-(z3^JJ>irmgehI4OMmM@-K)gL`^+?eWhHUaD*n}-}qk8x*&d)7$$ghCe zJv*uu60Zh7ldW{7YsvrS_Ip|WZD8@J3tgI(na7T;3zU!qjZ1DT#%_K{`|{uT~K#N z-07vvYH~m*W2ke|06#t&AA&k&aDL#igl5Fh)u>S$OuH-?L%~l4m8YoE043_XyFY-N zUPlAM|5b;~A0owimao`F(d^;brHrH4vS=aSr3a5bB)cUemYmj|I_*DUdK(xhk?)d9 z^jFgz+r>O(+S-w<<`RWo%~C}T0jL^uk{WWPUnilTD|HS`*mVbqX+jmFN!|BV$(I9{GxloIiIp*&r zdFPWyN4AWfrgOCDV;AJM+@>0w`qv!XkjFjnlUTu% z4)yt^0;IfOPB7g(?O{&}{oPDICdk(^_KH;w@jqRw0JLhInha;8(QXY){9tV3t@pJ6 zFX`sB+Tf}phNYCe5ZQA9aizRpZ)?;DP>M6cGWWc4*^PJ343`7-6%Raf^r?n+W}1Im z*yFI{tCiPsX<3clfmNe?jT3)dQq8R3ZN5%*g6L+_eb)vhAdC2XGGuUw`9@x91STE( zfH?UQux8@WQ~Geu_l-pa@A*>9jMH-YaX8Ovr}!#odFJ^;`V%`V1^M}?3n~VHXrJ%G zU4!&D+^wH{XQ#l5JK-+>rQrg6`2{lj`|+;WFI~!Kz-O)HG#VB=zgkHOfFCQb@A-(< z>?}qhDB*(0u)P!gq9)OKY@!vYUfu8@5Js1drV8V&l!IORY+R|#<+jGD899SZ^4qgE zq~V}qDlYd<71BQy7a{BqnUrh7$qen#Z(iE>CL}000NiQtbqLWFS-Fx{3C3M-(My%c zfgJz3n;c5{`EOnAIScIwvIe@Hpa?n~cZ`prW-Xh<8qbs2{g$14r%;(nbtQsjEkMCZ3+lLx zJI(W3GA(Jic*R>IM|hm}_Bb;^=SSS zj8(0>yjXMY4k2E#Jl69+Qj!M|ue<%$A7*L+QI#mwgofklG;(u>QVj!ByayO)ql8@{ zCLC8K(I&aAOuDS7@18VU1bx<*(f5~6!-Ioa9^vPA#`A@%u8||e+p-+{=}YS@%@zW& z#@wS%NaJY-IR&skXTpS85SR;UQgnys@?c!xR(r)J{)Nw_-yH|PmL-&FL8*ZQ*dQBS z*W!ynU-CgZ1S`JjSO#r$QcwYB)}zJx^L+x}yuacNtNBBV_~xA|!t1SosJ!22WO!4D zZG;i_k=-pZ1&pZn#~Y39D(^_q3R5DB zkr)DCq8LmBv52JoWa>N+Ak2ZGfB(4E(bfGhdVtDiy=EUiOR%j)M3!224ei_p$=2S z!{)R?s6Pbr6XPdBoWl#YxXKZBYM9GKIR8ySeH&911Ec+EYjK+-nQbXt{JZTcPg#Oq zySCVk%=QrRZ!~ayVJgo9HdV%Bi&s&j2X1OfJ10$fcl#2Q4nR*SMQg}eE zmFKF>8T#0qS?&whqT@#W5zla?@ZQbv7q1o&vtN%iGUbi)at%{qi;MJ12y0*6B7oe2 zobBN*h9F*SAbJ$32f`Kx9kOXWi&wMk;Rs!? z)_0(E_Ph>8p!Rnn5@+^|Qa|W&lR<{dQgJyCsUr#;5xJ9j8jjrA=dK9vv7Mm@@CpGX zgU}YaA>qSotvo@spN|a9fV$1GY@9qZ`y{;R0@W@+uLW>#Qyc5M$OB*>^0g%xp{IGX ztZ%Jxi^Jh)A}oFPQNc*mlpG}uU83MXe1SueELf!R z_n3%pak!z{!(q{0q5e`t!iA!U-Yd|RMa?3DKh~#W&2?F0OPZq~vS6GATVn&z0xh`Y z#qbNGNw?3_#O=g_6>BPp1DFq#19UNdi+h7^OcbpF^jqtrK$fADrRK_&bT-Xod%XJ)7e;ycyF~sFN`X)Xpblzw!n(<0}DVw%fTlmEPl0@!lTr&xSyyfFRS+&wy+)hf9-g_CSZ;}T~Vub z^_!7z4(pX^1FAok3;RVxU1(5A6o|-_^uRZZA*1H z+ffyF=voor@gU<1BNW?qX=k7?UKvQz)tAibT|UXZrX`PnRbS&do0PwJ&;^RA=B)5t z!FV^;jguBswLownY)q8t9so^sU`2go7so9Uh_Lm$61IXwsqVi=7)okagUKU6WZ2zW zjsK_vhOhy3M21|v#B5h&_734G5{CvE!yvj8QE{_#Ur=WT!9(mhEM_y^obfO+=!wM! zSQI~^{PX-lK9N@sK+3SLsUjOZ4l$mB8xLzcUv|1~94D>C`bB#7yyFV|di0BnGolPA zS#cE;v&?(SWwh9r#+uIA&>xv0 zvi(G8m3Rpcr(95UqW^hA{-kp9tPFY%np&7mnj1mnQB|^Gd|$%>RHvj$zD#K}jM3nA zT`AkF+@VTwz2t1WVyMx6Rjb7P>uhs3@zG6v@s1@f@@2D~V4h%;A7?&sD-jrg!gfE* z&_G@~geXT^ZPc09?N)497WbEST5HmTAoB5f)4$pxwf&f5ZlJU>G^0}|jc55kllX~#)YK2HXJmYIH62t1r|EVxN1cp&GdXOqt-P9G9@ zzPBaB2>);&9hH^`g{$T;ea@PS%kZFiybY6_AFe_&IE_uaL2f<|^3PJ8ME)aR!9A*V z0;lIb&`XT?>nd5@rA#VSf0Z!UWJ=XmPYdTxVSsL&xE>4KshIj@ocK2TN@i<_Q@7F5 z(z0Z^%I{Js%`u31{{kiiR@fEf$`86^Kb~#yBF|gOCf}JEFyhX-rbH@#D+22A3(&sR#Fq`Q-8PO(%u$35wE5GG4 zef=g#PVSHmCLyJdKYBGGuO2U@r(R9jab@|9Ep2)WvEY=F8#T zn!tcOFtb5~?8kz>m#eORm#odEx#l%ls2?#GiBZm-uZ*$64aQMx9_OG&&qoZsFbz1@ zPtS^1JX~yEiejW${gDi|;>gaS%x`a~fx5w@Qv_wmJ+^A;q!z1emyaC@eFC7na_Tp6 z>h{u~6iAvmVtRvR#^4(EKv}7^4)xeDap_kgNmmhvg3kv1x{xzI4LbSH-YmvX53|!j ziF9n?8%aPz2`whdmZGL$+aF%Y{`p?0_wpe|5)Z!6+!phG8hW!|S}-vDu{QT>`%ynr zBEyqeG!Z)Cd2z2C=2o3QklhkcdfK^!sGtu8lwo_Byw6>yjRoQ{SVAp6v2We`&8HW$ z>*2WfgF~^|%V2ZR1A03~CgGV)!t~|r)&DJKv*G*-oAT+;Ly1hxC|9>p&g&;0uvO*} zY5W4O4WY^}k1~I@eyp%L{{~eZij$eg`Q3MruEFfk4Y7ed3drex`hZWey3@Rrjy{eP z>4|rD1vTOgJNpdl*zPQHZhO*_ArrKSuEFRR{loc11U#Q4w5c9RHE{NUXRuD4*PvvJ z1+cZWi;&uZhL%^i+de`9_PI+oq_SZsVa-Tm9vCtJ*Xx#8T{X}Sqsf`hB$ug(pb@?elb0j<&tME-gd=jy55Z(SIMR6&qD0QkQqcg*T-d>r)!b}z1c#mGZLqKBDF*OF) zA}j5L>F_K!mm3`Uy)6V(GgE5nL`n!r$gJx^mpd^CXA9`b3vL+NT_jg1Bq)U@IHv>>9r(^AP4mZH0pyhyh>*sb z>yyWK;S*$0Eo5zy9lvnIf3lK!eZz&1Xy5XSE7um20cgRe({rdLm*rSJz)M~T8>AyV z+e^u4HYAX?*!f@B1ukQ+RA3}B>$LGB$qo=HfV(64$S@R^OCDGL3&cO&^|7>pWV@Wy zu|B6s-0EZ+h4T_8KINh!6Ad_QP~rF<#&`bI`9_&Rf3TA^ga4TRO2uf3D2*^EgeH(j zm67?@A1{OsgPwDoTGBqgOt>O4q9G~t3`OG4dtZ17FJsi#h!4b3-~&2D=3Mq5@$1v}FnRXh0j4-=S2FeZiLaq}LsxRR@LFi1uQH7)r=8 z-0L$5q_at@;qf5a6L2EWE@#WXieL?qk9;n+>-+)=2rn_64|9U4cue_V$dl>_SpQ4{ zt9mnkO zbmkEx4S19qRFWCQ^L$)!a=g_Bk|J8tw@PbO`-@6LA|fUQf=sM)ivDj zXN>{=W`K~fKl+))p|V*J`qhbX@`)@>(tD7Or9$yf=y=5{n|BsObzR;*=B2`!VY_iL zEdVWzp#EqZro^JBZjKJUw`GJ1PTdjhKGb$l0f- ziD;HuP57Gw#J3^5cbJAi zg6p9HWsFV6jh-65$W4Vf=eB&j{vV39>B)W`_rEOrHcNCW|HQ~n>-(x1+uF$0r`7Ln zfUDuzZ+MG9`!IAyH|9yu)K$Af|J1c-iMH4g&0e|FFXSyXL_qh?G!5>N6I-1A6iJ|%_Aag9BBDd`J=0Pp*wzu%?2(x(SeBc zX4JLt)@wF52Qctp<>8NO(C&E8bALr><-=bI7fhIv7L>NtV~rI!!&g5i z)iCkQz*tuBfQn}}fGX%`26;59662?x^Ke+zSbdRS?Pb&I1L%d>f+)rHS%_y8@sQQd zXp%nH{un%Td+MUfkZQHS&@fSL5mQ0Zyb z^P4Ti(ePdG(}xJ3`70!yAy;Sf_Yg>9`jY=9z4V$ev&}}}g{cp0{s7U&)g#s3l)O`F8hX+^=)yhWR1Qt`mG&gCtYg@vyKC8b?iT4+zt^an`YScTEOJABWX(VY^7 zI!;p_ZZjE;@C7$+Ht5QdCJV9$9fO%qk41VtTs{R+&e}K&1sBUwJsI5NDkCjmAV&@G z+$Wc+$OJ1wa+p|AhW4NXlw!ZOFg?&ZsYe)cn|5BuBGSfrX{CG8lC(2l zGAXoN?Ht7G_!qRm&d$B}<8pFjr1rA5KieXgGLH&s3QeyxpdkUOF*yyIDbYpci;ie_ zS2p*1E0Md?f=0zSdku;S9p-CQl+T*B)k`GXASB~tcOL*adZW>pMEIIN*#1Ao6;nkc zs(zy1^dk(4Q6;yZ9FPT=9#o(4P4A1S7Z;+D_YQekg(TG4Yf~vQ7PuwlNA{VlH#G4H z9gdE(Y<-R=`p29M=?y!Qh;(ZG_J`5&J6CTxTWEREafMn#8g?hE9hpVX%H=Y#Iq`1m zJo*%L1vXZiBmD znN8}?B(pCD*Ext@X*uJ}Wbw^!0lsTI9);Q(BxO_!UrajrMZU0)drYOhtU z6L;a6?QjKlP^(O-Ry5;*w-~MAFp_ec%5+Du`XwXvOV&sqS<-FCw8kB+{|Nu;wQvyR z)qVx4o$<V~C$ngoi=+fJ;cTk=aKy_*$~OE%(#+vKn1bY<25a;&*)n89NyRjSsGr zTkFkZ$ZyvkYjCeEciQVHybi~$FROd~<#-@d*T4CT>7ym?CJ@pSDF#9+mZi#24oXjR zskqo*;1ILPQ!FTt77yMofmg!z6)Qzjo~ytrY42Q*D_RfER?A?U9}thO7f)V z!dxtkNMV>KA9`ehnJt4#fYNNkB*<^&l zdZd9lcd&4CB>wlO{W3^&!e0`}rD2)^eKf%U07=;vrTY@p4sHdthR`Uwd0MxU+X2mV zKv>ud;S;TyNAUGz88z(p4H9$K%6$JScOyT z*K0nh*Xh|Hl@;+E$m;3@6ljI91NGdYIDJt@H>GlH`m7z2ZDmxE*&W(Zvlza77i4$f4xBK zPFS^7ax0$YN>_YG$jkrxc7_&5Lo?}VRD70tvo{{Kz(D4H(7DG7b~6(u?CZOX%Eu3J zYfy%k^xD#eY-R}+U_b?dTAxHs2h`|veD1W9xf!9 zYSWj|#xkp0*y%vbgBIqzdhO1Mpgv>1qaw&C3SmDB3ip@0@TT@=e+)UqRU^egcftqO zvyRz7rs7t>BqXA!24T8WlF~a2!sfCNY{_6KKgm>&aAMS|vPJ!1QNVB@;0N5Gla(LC z*DnwL5N;rG%9PHWFOHY$rq z@!R?Vv$n$zM5&TZe}mupi;ovExoRNInsM=#Uxm!WjAC0S8?+haa6A`>J^ZV_>d~%` zfUjy00{CfSUpzo?6xKV6?l%n)U@a4fkSH0#E~y50J>PqOpGH3kQcgMntn#E>Eg{n0 z`^|h1F&t6v@J@Cvrnv%n*txdOZG?Ts1B!Dr*a7DDQXA0|qC;Lrj{}=;XrCq-GNSS= zmr6OO8$&iVayd8w4eq91zzdqCr5zROjoW{2rI}gOknpYSzv&+TWx2r|7V@o!?K|R1 zP7`t=MP$eUL24*uMFjPW#vkc#1R((W1U_KGV~c|FSd;HWRKY&Tu83wXxj|b7T#TH> z{kmA7KbBJV`%KA}iuUFO5Ps_zpaD%prlks!gqD}ZI^VRn?NSY(CQ@nG+JAme-I3}- zAG1!7Xglz9vtAw_o?!rXZP6?kuJEc3w_`~E1tld!AByDKo8)rWsKl1xuWzEm=k*)p zeXceDwI}9qH#Y|nP&6QY+QR$hoJ)8-ljV2v#m|5@vEU|^@vX0T&cKcTNkvwmP-?qy zJZZErp}dfT^|n?8)%-gWb~1C!Tw(!rXIC@)I1p^93G9|ZK_Fp`P{2k_d)st7g* z60_TU5DzE0_j3L`?=*#=MI3f0yHODzM3ae_x^{*Qj$(zNgCv+BJaIdg(wtqSrH)MC z#eLtp-rrgHww38Ye2P4(IndNeGSajUOkMBNV0}>B*enj9<=9{uD|ECjoQlxtnnURw z8&j3`oK2iIQ;p5~QeYA}2kQ`3n%Pt%vsjoR|F?(641`@WHxUj8Kh$*U=vI^aFY{$d z?h49#9jOu*a*Z*;si>$y`*=;6a1nBpyNnsAQbPWsG#+ZC@hsh**k?l)A)C&ztGYYB z{^ro%D{8@>XMPj{$-!!(OJQ5(Nl|tNEJ5vNbD($yR)Et^Q1FP^0koUXC?_iB%dPa5 zoKKAc0=_MW3ENUXrR5wSR#p%{LLjK%5E{b9MdFEu(y91FOo?OQHd#9hii^LiBvaL4 z75_&J!<#!SsqY9wvs_3)%?EyoNrQnEez|s{^AaPXI-bbclJ{DY)1q9f9YuVILjftR zV6q6wZu;DG`SJ@p>U)6s@fabo&%mQnX9!Gv?x?JYKZLB(hAs+nwkm8E;lvtBKAVFMHA7#cp0A3MV`5FAXk^8_bNX7D=Sd$swRPnII zT{a#nil#4AE6x3>DF#ThaiLpTGyny8 zj}=?$i_qinzA9JPMH`8Va${~4mLfVTUyCQ!pEL!$>-9y8LYNb#@*~NknAbu3E26a( zh9ZR|$AR+dbu`ttSD+X>(x1K#3a0Xdd~tU4IWvJJqhTiLYx>}wPQC)+`2nW?6AZmKc zhE&$>yM|PS_~|8E&x-i~VO~;EaGWrO*XJF{SDz){x8eec!#a(H14dYqlL{Jv03j#-VT$4p7d%YUT!=Zsq>yl z?LP||?Kc!x&bdhuEnyM|Pp4L|f-XuiBgg(Agy&LLh1-hulUmTrCf(E(l3sZjPziJ0 z{nGW}s_E??Jf6+0c01e_{fALloq58qwhPAD735RVUjvHFH>86T)5<|}2Y5iM zQ;OATOkJoc6CmJz)Yo=+Gj-~*eJ0{KMvpz%{Z~dBNlbxxldylUS7d)T& zb<^!IT#x+XMok%dy~`9#A{Uqlpu{N$*s{qFlrf^Ixd&tWQ7l_pS(V_qt{LDDz}Ss@ z)Nj1M78hA2LsrKYI%Cd2@{<-9T-0`Xj$U_NY4*BadFIXDNC9FliK=;`U96iKB#Xje z+$o+vKqH`oqQq~qowApY;Io~*`lJ6^)0{>+xSu)niKSfSJ_ru)xi(xo6Sg+v6sKd2zbaR`1f z_TxC~uZ(7!>$X4wg*K{C*q@h=mK~puPqzdJ)tWdVt}2m^2mKTh0(!k@Ztzx4 z7<>0q)y)1D`~5-WS>CtHS~)%*w>Gm}4_~h>*p6AH!_JrcF>Y{8sQ?>=!N!X%dl+8a z)*Giz9V`q5qD3;$o}9_neUizWmB9)ZjEhk;Xzgii)k*-}Vupz|4v_`L`DHW-+^_8= z^ElBi=2bcwEU%wdm!p$cMX=v2>MlWA^txTwl@F$bfm|-aju97&U!Tk4w zW#S4+N|te2uLwEW2zx4iw+431NHHaJtS3hQloYjI9IS7%

QcscoGB6-*KW zvvDC^k8XyLWeqNIqST`LR>^pTm~aD0yz$wc`-frr*MgbCcU2%iZTdTRRU(VMt;Ubr zeE;50@86nxcAy1V2zUZeCD$3_ol$2BinPY=4$0=~Wjnh+?^B5K>eT3EnBA0VoQf?f zKm|H<8H}hwfS~n*3j)bdmz%Bq-Of4In$&xn`&I4#@<1O~JZBJG*xGxU>~gj7^~R&2Soc&? z3VlJe*X$}PR&3jDyU!ACi(s_k^^+^V!>-+SVSrH!$;HtGdSjpax1))|!){3FMt(|6 zFAx-8aNpUU2S02leC$I&Fo0xWjIWTOf(SVKWZxbyS;x> z2MKfp6+N@KT9(EmP1>@|$?BEFse|8{){#c`6sSOgS&8}s~5RQ?f*LE}jPui*^xJ88(7rPp(BEyCDbXvH;* zledH}iM);$&Qb)Da2`~ks7D~0r{BLvf)AbV6~QV15&o9Q+&mL`&W_Um0`>ObBQeqa z;yBA|9Vd#=zza>mas_gXO_^j&m(0qBHGqJ+B|wM0U+*_pU~4~k(VpP!JhU|PHr zc_geXh_fI~Fo{?=LN5`+9pVxhK33P)p;o`D6Tn?Yp$PJ;h$KcPzG`y*$BFQCrrLF9 z6(1l5&Zq!RyH=4rh7|P*gxuEd3dGmlQAKaNEE@bYI~t-TZdXlyxQG07cblQUhX|yS z%$FOq#y$7PxX}awPFX4V@HhH=IpI2c{#8_|;dIyA@nGCGCS{7VN<`E-WSVdFEc~h{ zf`5Mm?N)M8zvNKh0Ft@bk5OSWs6d52Li6y`r_+;rqU)s4JrVHhr>{iB&Hl67q&)E@ zLCuui5my4g`I^(I+DFT_kOjJ_uyU)U0O8a703K$35Q0qKESfcy)8V(t9#bNa7d z|Kz#DLWh0M67akI9HXBuZrG7SQsD4%cLnftmZk4uiZr;o!~U8=yC8Df-*%5hx02dL#Ht;SN3-DTK3*Q2KSK_B%!f# zkGp-T(QnCx3Sr9cm*+~Pp}-;|oq^9=bdWtjZsz=6jUu82=`%3n=^J{a#JXCs9R+ER zcNsS{T2WjvOY|IgdM76T(D>>rrtj~}4WodGzLz%`PU}!KQc?*#?nOH9aRh(`EbkJ_ ztwFOVDBaCNNaVF>MrGHJ+qTDmrU`G_KS@t!t|U!fJGV#Y+wdx#nf zN37usOOSoStEtHX`J^F}K8O??)CXvOS#@eNM3;u>KkLiSa|^*^Xh-PQvY}&b1pTa$ zSS&Gem%P&d9XJDkk1N)lWY}XvTkr>cuaW4ixv4Lp2FPOX{YC9PGg-8w_f3sJA#^ke zPp>rV+Rw~{o!8hwe#FEWJz$-QZ*zK$U*Nl4@IR_^XhPZ!=Pm(*r3c?`Jt8JB9i-7g zsMj8OZ&_7+UV!^^$6tS2j%JZR?W&rAR2R}dcPb^xpiUuX#F|I4Q}NHvJGUAs?fpYD zgIis~G)`UZD{cLmgTK(Odh=+C^rlLoWq>VZ+}hoECrpLP0K^P5i6>wGU#8S`@Qvhg zJm2$sgV({l$moN>b$OxeWO03_v4iH=WNL5mz2v|ELGXo@Hi`|4#hdeIdK~kvV`=L& z5Sli(cH8?>9Y*+1Lqd6ODvT;u7tjt>%vKK2A!T@>r5~5vo|6RE6dG&mzfmwo^9%;Y zSM^kUu#@flj(?+)R%u(BTbtR|Ziz~KPa$03RAz-w-Y}PlI2BarU1Rl*G)e4Iwds{b2% z3Ex4a>t6b+#X;y_Gkq$O2snn94K7A%5)HzPbNIey2E%?uXZ`rx9D|1`Ah5&v(azNRMzWzKa^7CCI3z@auo4QgkP{$ z0(=^o|K$UQ)meEeIoMbHRc^b_EzESfCw}@vf;U^S2{Y8!&b(LNO()J3kGDDH9>yFB zHT?X-wzKF+b*Vy1LX-2~`Hl{=@(oC7y6iWM89kW1O^E}PIjz|wtF z*e|E|91%HJdn44za~yKD9TX@GJ*oOY$5bBc6_0*}_r@I!IUEbFe3ge7Vi5$m-E}t` zG5@|Qziwa2<(YK0udY&XuQn2OhsG?_m@5H3ga(sxD&yaVx}J+UBQG5`(F8QBLb5N_ z#=@F#f4?Wk8LXMO^^}4{vIi`w)%Se@AupTUt3L!_3JHf*9&rPUd5f4bS8bs4TS8LM z*BCS!@xv%b>n!+2b-QRIJUvz+L@CzlDm$Tsu>4hITKgke_M>(2YWRPlv!G4W{^5l> zA0@NdM4>Ps1NknzlA(MY>`7AxY7Q&0uciuXd8R2s#rWHGv{uF$YQoO1HG!)Jlie1m zi>4M6y~VRwCnDN#wJL8p&x(`7daBSs-f!dND!Slqs*BwkbOw5O?BGLPlkGM;Y!Uqq zh9>xUPrJOW-PP+xbOyIU@0&o=N0BLUsgJBp)X9jEW4Vn|;H>><)@L`fk844KG4(aJ zM#|*x=GZkO+}0HNWo)Y-5od|j03TU;gV$R##-u4So5jAxd=an z9BpN<Ha=jBd&wi^Rvu~5YhDl}Tn z^CjW0hBEP2dDi5p49;}sqBmZD09s@Tq(L&Nk6s^YF!Ki@cfaZU4K+F~M30H*uKd|ut*<$Tri zQ8kb2uzOGqh_;N4_L%$TWYqQ5UV8jHGG@Uc!rdIKheI6WxmD~PtPXC$&=@-=MsF`} zpW4VSY$%|vk+P<9;S4@a4G%2k>?xnXgcfVpOi@ySa)7+?2$Y~Qksj%*(ag?g#~-=3 zY%CVucTv!?>Id&;_j=~{!PaSeB>ZSaO3FP^BDTDA1V~2u*K|E-i@u|h6z>-E%2YRa zgf`(HM?_+g%&ww)_OeaV21SZxpf>DSqv~sar6NB%c@?` z;xGhiT2Is4nS0SLj8>dXk6RNaPiJg_vI%}awfN_?REkic;rhT?ZdD%JE6KBkbE-do z!&TJbk{g;w63RhRutP(Nn@TlML^xvL8=mJ~O)HO%2m*Y=xpF`-6^?(OH? z)b5R5z0tddcAPOy4#?cdE%rjs5#n&~#kO3oi@n7@Dv4Xt>bgf;CSuD;ZZ(hNljK8V z<@5rU#wc7fnKA~pk5Sq&1$n^V{9A&kzt^%1EOJ>hUI*S=Gt~S;+5Zm!NeMykNj@!8vU9?TPP^%kMbEgBkz3Z*99=#PUs*W?2Fka$i4SGd=-x|t`hWup zulxD_G8f1Tpl|HdFMUZ#LptkA;lB3c)BpfL07*naR73T#2O}4(U1i)5i>q(|NcCW5 z9TPeUBOvHk{m+~J*bSX9gALgBdG7qpDZrx6g-b7{UsbWaVJM$rvZMg>YG^s$hYE;_ z;e`)|@bN7pMk$w^c7D;*BsV32Yj3&Ux2my0v98D=rLbG{@4x(2(b)(5TK=A8a?@^0 z`S`B=t$AikuCwo}`Tgo;#!Vm}zzT}O%%njRGsvJ}^nX%S^`7Bb18dvT;P{OZtnkI_ z2TFm!f1#Z21$9qGe2DU67>!j$s!=;)JLQVgCl=0RZOf#&>gaG;1Mj1Jl38fThc7RP z@44iY*kh5};Lj{8n)!$X^CA8~k(!8CpEdQ5B~N7QJ7-p_^szJQ$F_#qbnLndVUZ3#?+U`2*0!!UK+i3RWN zKSn+-R1p2IECn$a4Ly{%vWhw(K4J@T{A!k~tv<8_BcpuRUQ*Quo#Z8nIJ`ZZ0MQJ} zgt(?6g_M#WkylPRNjiaGWlwtptdVwG=;yx6j)`DJX^8jEzohWyQ9G)aV3ANlhG7KD zkU^OhJrRYJP`ra&RD3qmqfU^=)&xh716B%L67&}ntTN_9*@98IqF3&+n|ihlR&<4A zDf6W9Fd?u(x;15U-$~`e(o#!1Vx0fqhaFjTY++IK1Dg-=oih36{225IYe`q3oPPT| zyTfZY*Umq-`lDvM==_)@Quy*MBhh?MiN)DTdY4u(1`<7*s>V0%{tM-_aVHo44GE~0 zHMPyXSyOct3xxevuzm4*f(jZL8g1JF zzhRD!4G{Ryl24mZ_~3S<)r;9>LBPU1i)eBUUupW9qBRuwpyx%j&9a9~nKw8W@UOe9 zx*xvdIdNO5@A-RxFYxVE2xWTp=smQvPdL3`E~)_?Af?K-169MylMlYv8=WLcRN`gHO!ukADCj5Z&EVIDICdxBmO#vFnnJ}_t0-k8-|)Lm!l`7Hr6D&>)0->N$n8hK^Ex53yR@vn9}UDTwEGgVRDgZ_=uv4Ff)OZtvY!e%!AW6KqLKPkewb0@kP+8Rt}{%gGfteQ!tVCo$Y7zQDT%?34uBd(9tt zn0~ED8Zb!t<0XA4-@l zynM@Eq**weQHSS^%x#F3aieHMUd_Im>OI6LkBSljXjm+vLK%NOI1;x=<&$^`W z&wPPBn$6-~Ue8V(XUwmha7N+Fz52@cV9lc_ipSK^T1^^31}w!q-gzhEZv*QB5g@Oe zq9{~bd26pAG`ms!H>80>)EmYe9{4I;`nF~dtDHnT;6Tt~gJV{|I!wMn^HqJN$dGkB zN(rcd5~n+2OFATcd2}Qtw@iQ^vz~(H(|=dBFFMY>>DriSdaOEz(g8IPs(x?WsRg(3 zop5+6t^B=x1do}di)Mc_OC38t^pCy+l-sbxM>L3Z?^)h44H%Jew2!v)%lw?KLc9pIIfz469=27Iw2-Ly1h-uQ=z0lB!u zeD9143m#{VQ{OJligKN4WfIuns2BYC&kNV|8zkQ+R6^eC0iy`RfZbUkR<`__`EuK^ zO!8-3(Bp9E|9AplYw2ld^C2bTs5NAm_Q$?`g&%c|fSGCD*@zFRNPy&lM-)5&6~$Mw z><10J@gZlpIM)R!|6qIvKlu>!$e4!Ns7F(2x!_sIHo%~_k`Ut^OxyVZB)uiq{ z<%P$d7FvvtlC+a*shR33&hgG}!!fFl(4=x87Na^it6Wg?Cz zXSPghFW6lT#S$Dg7Eg49mV*dBPuzuj6tIdj_-R`rs8xLnfT+1yMJlKgdKn zn8!>JuukJwJ}B@(I}WQ`q#>U}JjG({0!UZ#hvUx)Enpfn2<5S}0wrVuf3IG0WuJc9 zqkcb@kfKCh>Vr74Jzpd37XIDl?yd<+y1Im67|d7k&TyoGwR%F2>VXddjZk%A2W+Wt zKXn$$ZrHQD9Xk|kSidst*2H`J>|OMife+_6sHa3pC($t5|1tKE4Yy9?S`A3f~XB+ht>ZAh;!$FQFL01oXa>%2> zTL2c{K1u0{KtaIplxaIgqLD9?-(d&qc~y<9RAoQ;gp_QNjwrbd9Vp`rhtL0=m_}0i zFM*IIKhO^|yg}I?Nc`u-^FlB46&Eac-dRC_KIR~H+)Lh2 zP$)m^_d%yhE=*G&K4-nr4wHP?S#@YC-&_DJQ7*v$&e$Z2=bk`Ev~5HkFhqTdA14=j zHJ8Ac86sOq+wZFWMK`NpTOiYwin!;-Y3j%bs0#!wYgayBvSfYQckFc7wq%R;N4Va} zv;bIw?d+$`{>2cM5}>5kuG)W0(R{`mJ$jnQJey55D-UeYw3K~+U9_%SAL#`s-vywj zOB{t~d(%U~64XoDj`5dz0{&7)MKE^?_|eH=*BK`*`*t&bMfU>N9eoBUe?ghWUX*s( zn|YxFZ_f?eJU4nT|8s^_RR!6=6Cc_|MC~nUG|%16qXUcHY*w8OSg;$i$NCrzjWWn0 zTmXSXi$94I*w}g5AKlo!n<}I$S8?BLO*`-bF^Ac0zkBGDf+FcZD)elkX6fpMx(nTj zB@YZ=vay6dvM2$iE4r)es!*#(LPqOm(e6?xi}7X)dD8j`zPY5rV)^eo?jf&6WGsye zd+IRKl_?v~(NIL)OA382OKLTg!Ptn@iU%Q` zXbHex_^=}?taU^t&F4YN*^)tpRXN0-ov@j-`FHq);~fqDn2dFYmj%}H4ma6E!_AQZ zRt9p67$HYz-C4CPTIt&h>$^Btm?p5Habpv?mn!=PAadoU_euTfSHis52K7;6ea? zuJIvD6ow8}HXr>{)%UfVwS#fN8Tgh36#$mtL&@p^(C?2#)^X7~j_FyLS+-;7RKQ{j zrdD&4x+SEVN?)0oBiXaj&d4yWN_>n={4up7DH|p&W>yTen+-7C!~8ftcAC$P zeoVHPPf9%ltHmszbl;`2m^N*gdV_0W((bP@gK|j`cN_-5ktx$PITBlp!LeB>0<`T? z4k4D?3H9ABu*o!IQGja++$W-->FUJ@(7~8iUsfwTUWSc_w=n&Z3h<+C zPDZXO>MvDz%b}xVO$9B&kWS_GV$zx}6Vn7S(*VmNcsVVEm$F`rUbhk@&CBilxKjbk zt((t^2TUu_-EOQPXd0UGF{j@2s723Z2LN*XgH`%|Nc@HoFydijfq3798OvcvXO|v7qzkzq|+-Avt@|_5kOB_x27`16CXm9^=m;D zjwT`1id6%0E_7y{3Ru&oO(Wx3ngO>Kaw3FN(RZf%;$#ZAo{8ki(qBSS0%%9jblQo08&C@errqrrT-H$gDY{L9@6By;U%3l3J(Hc&e& zi2h*TXti9)>s|VkrXxM0bzra?KfZVL50`DJ#q_1uylL8CNg@BBP_cBEmzVf;6dgt$ zTpm#!;V%Mt0v<5=Cm(#S_IY}9h52mgl#~#_fj{fs95)) zTahX;hD=*}=Asg(43ljlJr6Pxeq>xMj~0B0C1zM{fE&3KN>P|{beuKT2EUIxHl>#~ zS$xE!lON1-sJVd=EEGac6b3pMOVTtr_s7arV!F)>b_tvN3l0M*#rS$j7)>wNLb+Wa ze@N=7nCP|B$>AyGCjszZe4C6b#uwaQN}3H%5ryr|@T(y##k9ILe4abk4$jL~FDlYK ze`ydAHXE#?u$A#zA6iz@xxCjPm{qa3970INH%=H%AFa$CnhfnN^HPd3LRF4S+;X@Ted_O7QjdiE{D96kOfOK7goRQ zZqgZ2fMrsBoV}!KJA-drKlgUKDtA&26)N3WHT>L~rppr(K=c7zq>}EMXmCq%Oo!#-Q`L`BF=kpd+xprA9Z5OV z54&gB^x$=xAZS6lV?YhXo=wO!bR-E)%=`ObVFTdu^D7{D|8Qx_l#R#eI9Us+phzyZ z?aR{B54=QoGzvB@;dGYJ&taBOq?3&@wIz*C1uVBs#v0?xx@9=)1&R(cAi>wboFU6?a(d^Z@{ZUfwb^ zE}Ieh2I?GI{82DKBQp&jERTe{w)EME7&Nd%(p8(Rk-Q!)HNV}N#}u;~ja#fS!SDZT z4Th9TFSOp%2NxOKvJbTLLPy5I5E9#dgCyiYk#o!0AtpX@0=qHGJ^wyGP6JCxn&#!r zmebAdQ`_99rpg>4mTVET(ghmCQk^U*n_(6!46{d%UYfRDrb{*(&pR2gglA2mTt-** z9kvr@j}L|cZCd!Dr$EGn8L#p6S-(C}N9yIXHo4QRh!H`#GZTH@4kgP ziDzsn=mo8iPnJS5H-A-BY*d}@2b>pi%|i6`K1}}8xp2C?7zHrO9hj@OmU5wbbj zK|i?u>iY}V;3X`f3lsc1J=kE;>BT?+EbA-X5C+MfKopz;RgWgEUy(Q!Z$A#_bvZ#$ zl5)HQSl@hZoaj@Ff~HZ$RgyHvYB@mM@dXMMqb4$Ebz$(DVVk9HF>sBP&Q2TJ6A=PZ z0*Z$xHD7R_gyCTyLW~B*Ca`+J@OKwf9f>p^&6S;h2?hw}^8Z>rUU;VBcx)2NDyEeV z$QSqr--)v6-&Au(#lXV%N;W_`BOOx$O^mn-%Doi;=&vl6D*A4!I!^Zc|D;$6HtXbb zH(rxR#N7C!aSF=(0LqM6H3Au$eJ2OZo{RD?`6Pb4DiwCurD|_{NCNUzv`JQh9)V%5 zk%4&IeihFJz_J-hQ9e$@YZF+00edWp2rV-U$SE9+)mBM|y!2G$fTKFK@TJXnk(xP)x^uXt!!99Tn2l{n>gL8rN{dcQQFry*(NvjnW2ciWwu6F7j z2$=yH4h&b7l&@O&?9Ds5MxCi~nms@0l+7>3yO}p(=~ppk$@tY;%n}b}LyuVTTHh~U ze5~p>i2qV9G;jy-jZNQK-JY6VaYiBr>wS-WNaBDCfmiZ-JkKS~W~T!d8n8JlT&WzXi2f~ir6L8pq zfuzDGxo)c3Cu9_WAHPpM$$!yN+o=jmb9@7T^j4Q8 z(3wphFE794g3aF{jXk^o7Wt5~7J5vTe_COX4_~tV`_~nyGtQjde~dR?t35edt!-~g zSexph0~2LMJo?7R8p(g!WzQYR>U6*YLBtL*Y;3n&xaCba@!Jmj%W=h1dg%a-(t!Ea z<_*&Eug;0g_|3_Xvf$Ibqc=}*8Isb~cuH3v*9>@VZepUrd1Us_o*J4=U*uf7_0f(S zi@#->;V>JTC)^>p2?M{ls(&o$wLfCpumNba1iSQfRG{ED0sPD3mjNUeQOa^a!&Avw z)@%k$pm6xCKl@t%-j)$bfpr-uwD`Vpr}-5Q%UoKbih%RDJ6n|@0P}|Vp$1R zY-}A-?uK~)U_`$EdegXAuL%yv3=%xPP_{-)4?o(Wp-OLx%_M|$bY*2@jDai`#@C! zR$3aO-t^e2#$q*bOtrqwf@k6?l{$HMZ8uM?BOe?Ed$ zXYpZqdAVrUFFjf{F-l&1$UNd&ku`I8ZSQ?IcUQg za|+$`vZ*y&?vy&w@&`XP7Oyl^OZux*G_OO!WKEKSyDZPKTXzd|OUa+77;?dCK#|ri zmu~%Zaby?(PS5IMXc)7#d z7x}Qfe2l*MukoM%w92@V?y|k|A?b^_Vtpxec+WW$%a{+H_uA#q;RJ1}7DRBmI1b;} zs}i!&3!1&BpG_#L-_!gsg)PV9QEBye`Ynr|tU01w8l!_x0U#X{$RupwAH7n!<2Rqj zX2a2(M#)d~uxZN9x*?wF)8LvxlHR^%W{>~ygc1{vnFQCBEf(;;9*fuf06G%5Ijl)b zLs}tm#xPc+4*cNl*yAWu38mGJ0xbbnGJS}J%{lj0T>8_>#D%d$CHrwKYw=BiOAb1mEP_^ zK1A8Uho65~J7md6HIL~Ltq?`<%!eqyp#h`~%lI(b_wM%v4a436pYhu}=^g+4#Y_!t9 zy(R0ObRTs!OE$EJdC&GwU-#7O8O9~h2fnRcGplC>diSU4{@5!GMIO-Czyrw&E+}ZquMIR6>>K;XO9g^;22AOih^2vp(VS(#&U! zOG`yZf$ridNW2wr(8qDQM?OSZxdtPy1;71VpZ&&j(Zkt!q8iw)-g7;?e(rklY(B&= zw8HB7?!wrd=;q+=u(HdD4_Qt4V&hQw(J<_;2;P|ie!U{K%SFxr79|Q0UAb;%@lvqv zyr8d`C}dDf_4EU+WkomiT3_!^%4751dLeR9`!WlL8>N=$(Z2k*HGJU{74tDH-2<-D z?Cs&bmK*GWp@*XDwf~6?=qZMS?$D$)UwrCRyOA1-IXf1s+yeI?LJ#AKhIW|&S`oA2 zNB_8or&s+24Xu!%^){r))|4mRJJeZ;aWi_H1rJxB`M*yS4_i9Qtk5-sw;{D%H`raN zK{mG;S3laPsCdnntpfbkR3L+Q+J%4_+0&GmAas%tkNAH0)uLj1Ma7 z?>t|#=i)gPFV}7e?1hF7g}>08dn&I}CvdU&40lnSZ*4&sp z;y>VC4J%5p;YOis*qKzEOh(%lN*nHbQ1VY&`-3qpUZeJfyGqVZX4;r-Q-(y%`{>d4 zv(x3!A+xf%<#CTJE9-a5*;RcMU*a@>|mSwzc!ls*p{%+T`h7U0`0Ptdwi{I3H4N@LF5_;B6>6=$sZ*1S1d;~NZL+^yn6pB7T#GV+U1pvPX9-Y3U^&YW<_ zsEv57LtEnI9AJ^5*%RGyVRe7_<^D`l{r!YpmIr&HdV~en@17Gb zE_@CRxz>&cX#v|vl`WO5X}G}+55(A$5Am7Y#nfDY3#)5b`_=)~qQ`2ESoLkc3K^A= z>7#s@I}E6j8a2B2Q=T8bllh?g63GkN^v7LcFOFYu++D~It}4F<#Emd7O5a~L*=r5`}vzs z_xlQ-1T#Xa$?QWo)Fl5yO7N?y&ypZ1e9~*6I&=4Zq!)JHr(|O$6i3e%n*UJM;p=}i zCsl4V564!WSoRvBEC3$KP$IB1)V<#{b4rg=z>1@@Muh6EP$zs+o@&R zZct8m3=({ZzeTan`wrA*?YMW*+@I|y3-`)(RciSRRSnFaU3>7x)%v804d#(nBBUB7 zJodJd4^c3|hmrV}$FG^)>ugtGXt@-f_cT+&cUVbX!rgJ+re^|yl2f8_?x1YJqOBD{ zNLw&;Qi8BIGNnLKVtJrYex>gq^_|{>v^ChUU}I&aTCwblcufr32k!g}e<;x1=!R+S zp0!(~ervvu|1uV_j;h@(?#v^G^X6=V6%%JjswmFi^ZobuDMo)%NsKrjX?>1rYd990JK z`Qgt*2FUp!qxqyn+`!9GDu+1aXf1;vSx79wDj3@^h;)3 z#o#%H_yA4j-g=;7@(F;I4*>Gg)eraN8c2k;4+ZUX>i$w^gkXisEPtqE<9m=)_lhN| zv&4r!xCMew8}gwEK13G?Q8o_ts-n<{9xQ-g5w;ZpA8Mew-{nI*6N}Va&4;KV^tg(` z9KrVoOnIc|d+o`GbrfyeS;jqW+p_ciHgypsVECC{mDqvsM1WNll*d%QXEX$DZkknMLh*^k0u&F_7 zsh6(z3wpbPw_nQd(pdy60JG*QpuH#KJ!TlnXVP)X>|TF`2ZwOLU&69e^G0mWII!-l z0|RS8WDO=PfOYYdX5Wogg455QePv{T{NT@bo5*|r_ zgpl{YJg@Q|F9{(KIyPWKNGK8n5;_i8CKyO4#(+(+jVo@ly0mr5|D8KK@=BJpv(m1# zl4tDImbr89xo7VE=A3iSJx2pX8GvG(DkL64Iz^;a=E3uTBX1uIhr*EU+I4^xwMz`> z&)9?ADo2Hp{R=~tE~8G+15S{Za*ukyfWWGP#$gSQ8m4k#B-XkEQc0S|VGNPJ9^RgoqLLIE;0SL!ktN(R43*r@n`?xPdssv2T|kelCGk04_S29EUwn zlJd`e>u}1=^!)-`Lip{~^{3%+@-iIx;3uRLXr*jGPC|us8>x`RmGtr^UOP58V;!gc zrk_7F;*NoPqS>|~*t6!;FYtQ{uZCm-Fp+_0!;?%$OIpu1`=Q(-q&_ypgQj6 z`Gu6T1j}kcx)nIK*f$;pZqtwANqaK{n6UX6)OR&F^U*t(oa6 zp+EUN-F{X5_aLFy(8jk6fmUWZK)MR_B1i=+thH7B;^7f66VPfXP44vCt$OM};-I{3 zcKs6ot&2mk77c<@-=EYyHI}*GHAn>t)XE09t(XIy74?j z!K%ip4GrA>*%C6v)lT)&ctE0R?A=Ft!vDH?Vd?)3)*$HwT65|b!H9eXBrUSZ5ykyc z(K_`wGhcWNE5<6e-fTl!+VB4Ik>cexfMlkVL)C~wp3;E5!m}5zl<5d*|6r;%Wx|t19L|Cf;LmC zA1ku3S#rOUr@+(v8Q9#87GOmY6$VHRBtCULXd#0@3o6wI5s!IPB;33hdCM(FGP?J; zAUj?nG>-05@)d;3smDt0Sp-%DR6tj8zq|G=+rJZEhumS?wCE|Dx2fSatg75V?gw$v z94kLK&EG28UF3f49wa;qVU+=f(`csMu*`9vVzg{)x94TBHk zV%3zdx#7{`^%nnj?Kl`5^7`KDkOVC1ZsNfG!L=!~#!_r1B|^wb1hL%XXG%207A%;{=T=}ZSxv&eM5j%q ztDFs(*WGJ=E8=DEC?*?Gv?XYkYzlK3t{$|0Na7Y*;0E%bHYE*S;j$tH^USSEOZb#q z9vicgIEY0G+UN^zX2Ag|1)yNgN6h#SIa|iP>~LSbrkAa6mwgTJ@xU6kl|_00X|={7 zB13S+i)bgXPd0$c|Ar)eA5mdH=m(IZv^O=RRKmpGlX^&EEdkd}kCeXA-n#AZaJ20v zfYla1yq~cL5q%Sbn^eWLPdk!9@SYYCeQ!?eVe0ky=1+ z&sXG)(+b&+{qk5W2iq^<#|IZ%dT5Dpl8JFhyukq|X^%xX*4BW*Ie+W)f-mbws*4~|!TLfi?AC;?dNC&>>@7%HCs>Rp zI2%|w2GW(V0bTuoc?G1tMW9Fc6A=~I@Fvhb7tY*8+rlibKFV_B0;U-eYz0BeGHdeD zJ3Z`n>mZ%z?Z5?S1zstTPB5`3Pc@Vma<)b!u|kzKkMXhQ5--z`_y+Eo#H%%m#tymv zI_yFq^E+KP$cHT*U;D6m0JbW&Bst0Q=wCP!+!KY!k{0rxw)+O^<7+|+hrPn@SJ_>iM%Mr1e=nyM2^n1b~Knrt! z_WW!4A{#ss&S&(atqRV*#~h2@Ngn}kM`6;@fbJx11GvQW^S9~I(Q8^B^|k0Tu^DG3 zRuySZlD&{rZ;~=;t~#Mvj5QnR$>ykG7fM8mvS5*7wv>8#TLDlClU=6iXjQ4HIYN!T z7XW{~4HQlq%Ul^DFQa;H&Rt->j-559AbEBt2U4P)fFA?Q@ByicHUt-r_&TWSDnB3K zf^i5yM&GRm05%MyFb=6RgqWge~qcmUBF|=gEs+RKgJ%qVmwQQ_(bOu z4x}A~0Y1hyVPYQiz>j!i?~(&OxZ?*tR8>`h(0TYFA(RWgS=8?;YG2az-3Bbs`8cGj zOQ5E93#_O~^8hS@QTEUySMh78e@)SbnPA#!n2JZ@;eG&A;qe4K7Wcrx-6cwJ4n*60 z#K(vp41(6rp-jIQDw5Z1*|(qy0!RVr_hO}zircqBJS%X=5S9_3dKy6M^>RpuwJEI- z?&4onfOtnozxZcKrw^Lff`1Qm1uLt5@mE(pkPxHn1JHdq{Q}>u@v?571eVMK&kh1# zrePd<=v+_Zkj`OzSbW4^+KXuz#yXQ5pCQZAGRXR`-n6jj6Vw3C4PT(5zR_V14eQ&m z`b!~ANg8BrYQ+?+gZ8%( zG38dnfcho&$Zfmvk-~;VHqr9-yd~vi=)}{^6oVOH@N*32+W-cgp1cXy*#`JOU@-rz zi{t>qGNx>;CGn(UcOavxXrr9LbwTu53}U-od$M1CV z7vSMKIlpKt1&PCN3@dCm`8@3QXvieTitcQBx(pu{(E1fr!wxOXqt^%rrSOxG~Pb?;6xvD=M5l$HZXOS+RzF{=n+#N5I-I~J?L%W$n2 z8+NO|zjRwJ6ynkNJ_TlreK98YM*m0Rdl6oK+&CG0Mf@VO4Un}HR)$R&udDH(_=0QU zZ9jW*>`uEbdZ%&N6WxjBhWh7W3|PBv4Q{$n7pIk#oBiG3NrP5^Nq3-t(S$)~VnCDF z@gY>M1Ca*4JJ2E>ll0LTVC8VAhAU972iIubO_Vz-Hu+gWfuBdBUiciqTo#c%+^g%5 zJ4~-9!dhBFH`eS$AlvC6S}D3Gg$u3vG$c*3IQMz;~+} z+V_{0F9py92!uNwkPdTV;Z{F#0(r1mS}`LLDED4Htm>K`^+Y0`#!%qVNy1K$c%jWd zE5^QfAPJy^Ki$(%RV#avPEm(VZ>I+m(OFYrJ&4jW4hfWTuL1$UV?XalV!yNb^Bw_M zi8nwDZp@OED{FX1;>>t~Rduz39|UZP*VG{1==A9oCatWIB$ars>t|b9!b;$oip*ZX z4*Z^^7~NwT;9r_Qm!E0ZLt#t`^LCOk_i%v1{-AdX8XOP8%21{d0~1jtxB{t=;<&JgJP<51_%5Arv?K_b|s}nzh?i% zJJ&`^<$Rp|n0Yd!tHlHg0uthC3(DCC{GZ@9X0SR~f)9Q8YQEX-i(Mey z?*u#m1`P)68vz7=z+y#r5-By?p&DvUI}cmGmiJLuev))|VL=-EqJLtnRqd&)@7x4k_zf0F31r z_&FHJ0%hnqODkdYC8r&(13RNEe@9sNMi4a|q7T5v0w{9Bz|$Jn(mf&>L)Lihbq!OAeq-xR-Jyl&L`swc$ZiXRKYp?+>Ug(SFk|eh z`B(EtY%u9Kn~@Jhg(ZD}UrRh5Ru13x-2onLqm;c6a4!}DuD|2by2J4E9B}3=tX_^I z;En;X3E;sBgu@g3pk7-1BPQW=9#5+pTA!32!3 zFl#QAjry^EDVPgU3T5J6_|%l9B7kT#!d`yp8h!>UfBL9Kp@{F@7G-!5STuLJ_dVYRQsLb+#2Q4TnHF-EKd)`a*zvP4^t=&rR*V zM)y~X197{>&5xM*O)+yh^YbZ6t6`LW6OsxyhlEErZ7__>7c@cW$khEHdkYpq0hzE| z=?H7wG~Um4j`Pz#M=Zfvk_bSq4WAE#tHqZ#hzP0%;EyfM0pM?f8hv|*8Z98ol1hC+ zgN@u2H1oHHxmV4FLog*kg05%rjSSFfKX5|``vrgjG~rKfO4!iO8Yh5%qanfK9xC)$ z;7mxT(I~qNfd9DNpR^OShgX=X39^T?)#|=&sJ(2VdCs_c_I%0b4TjpLNru=pgfccv z4J5a4$4Oe@6#ltDW_43?SwpE;_xqWQ4FNxUa4!GD;7qnSbb}XS)zFVsL%4-N@}yMp zY{d33D_z^p6hx{vRU!Eaqc?SBAlXN)kyOR8Z7E!=upLwKSaY$e`+ax@1=$N&KskFL zrPBfJdlod7k*87?^lQ*bAio$g)RM>j!Ef&T-k9Z$Obuf*KO`EOVFEPheV|`)kTelF z+=J|C<3DcICvP-mt;KvzfE83oGJ+301Fcm<(XPb)1E#zP96e+eD)Yq8TiBSDtxSPs z%Y<|oXBqiy347Fl@{st428n;Z7L83<-eiv76qT{+y0tZrT~EYSRf*e5AKfF(9B=_E z%?zdL2&~9q@%A5Vofh@*_j1&NOLWAXL9QKZkD*X9F!BfUos2}d`-W=r!mnG{zHjd= zyQ5;q)BxlM;e?n0z9g%XHiQS3mmYhyq>dpihS!sKC_<#XcgH0=jNvlvw5O&_GLC@Yoi6K>v72 z-CUn8Jtq7vAi+>nf^6m=R$HZ*0oN2IXR;(|OaJ(Torhce8w}7-s%RXzM;bU_ zgVi5@PBFG!(n;!j#8cO0~0?Qp;>zwxQD zA7pyc*^w~s`oZ?|;3V)@a(}YG%G!6=*IPt<6XIF7{Ihu3;qzuW=62$3AKMkF$Pj*K zOH4M7{rTgg*V$m)$NJpM5;%~K8SVyCf zcT6JsMrq#>;0~GI8EqTE`o0WdP290~VZ7-G6pwHtnBtH~B%S%eGcjRLeCrl?1|RJ#7Bnd12k5h$g=bk|~1W z#lb$_&2Ag)dd~iicj6!35a7<@A8nbGY0nYjA0+Y*VS+5)QOE@>jH27*DnUhPW4gt^ z?i#n->Uz%p9g-IO#1sUM{MetT9W!^q*r4k~+Lc*-``&qfTi@!~W3R$G5l32AodzTO zvhFWFHE$HcG$VfsW(W=5R1Z{$X=0j4`3`#sd^n>_&DXXnImQlMH(If!CZb2oMm@^5 zVuS5i*~g2#Ugia&6~Jd{q}Ha6Mmi_qP>IP;TYCtmET~GPC-HN)G@42*7S{Zp{P9Tq z`Z$W5Y=PA-U#V^{OYujFT~-<3`rSXMFM#&#wr!ucepjNgU@XT|cyOq-Wj;<_O7Y9wqyHRm0jnQ86rnhA>6r}u(Fd%Gv=xkz zo*DZs&w`WZ6ujG|3f!w|shU-=RpqsOWo@}hVQ(0#BsHef^M3LCmSeZBjb78TO}~Ig zeK{I~d$=WOrFy?nFQ5xEn#=N$KYpV0-_=kJE7PDF+Wfog;;oe)Dfj899wHi32L_67 zjvarBw1 zh3!UjZ~S}Zp61gwe-XV|Z}Oi=iA=bJh2PW{HZ;GQkF3?L&;I1;QQva`t8Zh*zDf*s z`-}VTj03i4fA2**u0vRpdyzGV)TET$7XUs87^=vUFIGQhAN5z~{i@^vtM!0n2Ie6= zXy+%tGs>(|CV-R&g!F*X((AanOENb}xpT=@Z$JZ!_nYr1~6_@~NpZfw)I{gq#weRIi^Rv9cf z1OQHb$F?UnCzp44RAIk&<9e2p5ZMxMgTG$vO~ ztnal4TFzYiUic9sq>ePDSgN1}X!RmTY;<)*H4ed2eY?$vPRw!e#g<&srXT{}|6@$6sFfZ(stit_ILlrf(%P z5LluF0<*-v$`|iwynOvf(fiD(f>`WWO-v26$f=a1)MY<@depHNo6@_0;ehqSqDZPw zieb^|{&d2Q$*p+&SNi3GiNb|}1}{xHCoeLt>i{cA1~a~!cL9M_1$Ly-lRceaMSZ0D zs9vi7v>z6{c))4?N*N$Y?E@ZY(mA6U{nNCl=9BaG@rLi10DIjhdx|5U9d$v$xdc|^$3>T>6RfCD1XcvF_#~ZqWAS7A9-DKS zdq|WA3S_JDchzb(P-TBQ*{D=}rzzQBgx%!T2vpf|iTv7a1fGtr1%zBDvl56E?rxxwJ`DoKgU%nZAS_?`e z5C|(3NdYpUPl{^cPY$dbIdc}a?vPXi!HBTJ(P2wvh+r`qPEw!1_*4exRDvsKbo=AVGAU+ zIudJt{rZ|wr^R_e6glQ!AITq9m$@jP!tJ!5ifzFiXQ)b!04vNjrvnyF*Rq6UE$tHy z@?1k;MUu}zfE9I-z>3;C@rt51_BzP(L)oK;5$2TczoQ95{Y2Io0}iD#R*u?!I@M|O zgFZVss>&@pA66PJgwI-;a1c!atRxdDZ*sNm`yS)Fe4xOJ`USKCW>w(9WJ=%pNy$@V z_E&!fKR4@)WBxIT4EIdpC*M_3Hxu19;f(9fKPLkxp^VG01ZE`rNa?bu3}lLnC}b`z z_rsmR@~ftYZEr7}MDzw$ytjPM88;UH4bxq&5xzsoT20^iYTEOHNq6Q=MK#3}lm}!+ z*~mb2Z*<4ciGCuQv&uabIN>6qidHb4Q-@4DLMjsyNregbFiQnY!nY3E2slhuHdVd# zgxLk}2+6cI^OC9EKMS<1{+|D9lM*d>_PL1WK-!9c+{VVYmgld#xWN%eNk z+GMxozW2-l7qEKfO{X)qI&&IYNo=nLJa5&>1R2dnO`(Pyg=;EJ@xRoxnp4jwh z;0~H}fq>QC>2phdtrSE)lPUZu*<&0Xi0XiT12;~kOf?AfM^T|1NtkF?l)I;5+W~0m zXd!Jt;&ak0=++g}C;3bDSI_^iqI>C@d1iSU9ax=E5tp=tO^dMukI(z1oE!ZHE4?%Z z90E6)>my)o{_H|y}O4q4!F#6#;1-_m@g-I zWIuhkp6~=ay}WP=OMqVPEjIsk&M!-<>B5R?rxFd7PXAFMR71v&zp(fzwNPJ9^bwuC z^+TMqNYTA=4wXKhzOJh4n6JGMioksFVi$my<&;UUocbTd zuTmp}%|GlW633Jyau!KB;SF$6!8`)&C+`ax!?awr7~b#vXsX0cI&0PF{!PXK7qF6X z2@8Dy?BiLXGjO_w5l~&(v{s+TS_UJ!kau6Vye5ZuqJV zHvdRUr3H*b&+u=^AE`V?`3rG4QmfHv#Ds{V^ZZD<2+>IgT(zZkhw9O%jiy7jvwfwz zDuD47U}i4MEz`{CbjpKAkJMx{9D0xCb5$7JH2Da>kgizyQUgnNgMJ8uIkqBBp6P$G zVPoq}QlmQBlw(P^?!f*6UwPPJOm<-Yl{3b$MQqdj`KG#cYtMjJU(e)w?%|PWN&Zxi zCQsB6G64ulEbNsJ#6Q{a!Hprh{EVB*USdCkbXDmL7<#QZ4JWHH9(aJUk&~oHo42&h zJubsk43H?X+&6#(9XSMgouj~W#Pt83f4df5mDqO%y;nu+;dorG;J_Ki@ zrztWl_kPgQwTd_}-n{Tj2c4F`gC;3GoqNA(V9r`}1f+w{%K7H;AMbd@Y*DX_iG<6^ zU>Kc300YV3d0Y0+Uq0s{Q~OBAZ)19uDI0PA-G`guO8u%N?U`rScW4oL%Rn?sSx~>B$+%w_^2=)I2=+9o7sE z$ZcU$*YjYMAuC_c7t$HpEvU2$+aDR89W+B_NNY4ArIQp$r!Y`w8UFw^f?2*ow#Cta z5T(T*I74``qccJh77XtQdE*|AIN&0?12)+!IhbjqBut_dMi-u@2GhA&Pt8<0Xlo#g z*z|P!j0>1#NpsxKFfGa{F_fnQyQ=B+lSH){JnAi$8mOQh zW~bMS2K1yQ@x@~1PSHV!ZKEt)LsYUUlv$UQJG{~@=1N$O#(*`TFn7=7T z1fhD4l%Uyrgc?9!Jnx^Qeo-M<;zTB9Cl{a$6$4@a_C4y4PWX@=6S{o4) zZeGC2G)-1*I?q>$${M~7w<1#$V9;7+|UOacC!y1IxZ2iUyq@ia5LdX>%8xDr+hcSqQGXwIcD?@(9|w@`k) z>^;n|2Wew8T>t|5mb7~)5SNt5Su$zgs4P{AcOW?Cb^Lqp9H9#U0oZ@{cH@V11&*vk zEJ2kS6lr$|z6HhfE>0x*BgRvbGVbZl9B?J9&iv^88#f~~63Liuy;~!*htCi|#A?up zku#)xs<Pl3ajgLIMT{eS=~QJGlfi=_O6XoVpJ zoX2<)efcnZdX(*yxDuA5J5+0xGI>ip*@T0uFu5=;C3p^%l;!4H7Z5-M99%oFMT*Df zW-%5!#@Sc>oF3o1}t7XIT z`Vb6}Fxct1z>^F%Lt41lNyIJ9hOG}7tvNsD5mS-3QN2!uBzic&Bi>v8wI-JTr%kJIdTCGOr}=kFCDhx@(bOp?#Krk1 z!pvY%;Ts~zejuiqxM5kH3s??rtCjx`1JYz)34f*dsO#-gF?b>Q^O!8xua6vtvQHx$ zOK+D9__@kTOIq2vHgY(N`Z3|i!qj``;*(PNm&peIl8A0-V6nigp0^yqBiy_P<*2+! z7vFmmHXq1G*N~z<3CT?l#g9vCDlLGp3k>!0eT$ z0vwKbKv5Z}c%;QRpXj9st#O;ZqxLdch*GH$!#=ETo*D_6CsE!<(3o^S(Lf@17aR>L zGuP3FK)`x%&}aAPodZc3-23Hw##!5cN--qbBJu^cRZz#p)3sL)z-Fw=5kqV6?ECJM z^&(qJO{K%IG`&{b|C2TyZ`JHP-)QnpGUS+!X_It3V8X#moBGdJMLdSE!OTPa&)z7q zLn*`0ePc`uZzAhUOzWvu9BR!V(trLMc7&bzU0@rC5Qt_2dK*?3?~dIO3^;&?`5qRS|58Q z_>aQ>NDMO!HG1#q1rKNw-rB7B8~sX}fD{*sq=mucE43e|!_)kYafOw1*;?o8sULP< zsox&-A1j3)-B`0%i1;E@$zD2y$PiGJOn%+p#%%&Wz7W@wk3uheqjTasfK86UShhx= zLrp-9O$v0qkdl^Df`5?qwtUc1+O|Wxn4~M*P_a&G^U3C8M?d0yB{9qcz=!nsE)ipI zpiT>6dq5>FU^%?WtLiE&km3AoD*&4X_Q{Y3Q&ox?Ar`7LPF#F@c1T&aboKi08qbf^ zvtu+fjC9G#)imlWUcz7uVeD;Uox_d0W>tBu(1UY^OznC{4ycD@qZ}RSo?T($&r6rCDyB|awK9kNUBhxi0w*s&R ziss?cjtf{0@8rB%YZXjm+G3<^4?(J+y%m^$n0&pw=xNL)q}B<0*p9DaH{d(cpbwsu zMfAkmS9h$A{L~C%-Gu_rk<`~qKjP;w;UwfH47Ng?c!O9sueMxxZzW}8dAX2`AY{IX z+=j$6u{R}In?x7*r?YmSf9ogOPpO^C8q21bw9O0@pv0<`fSb+#GDkG7)vnW{6mS&{ zCFdPr8olT6Uo*4~vTTLSu`@AcfYf1Gr3+XNZ>z2LT=)0A)?nl9q00zH=)iUrZ^ZCWIAG4-g8gM9 zCLmlOgc6jL2HOr8)muI?SnN{-LZoT#kbkBWW$mnWlUDKCZS@y|0AmTVJtu860|f#B z%eCU&r?>yN)}T&-zKTF%$&KxT6fjIBb&#>w$-F@7pi};3pesYNN*AzFxNQ`Vor*(! zdJ5TJ#DmqgRV01KN;U%0vHDf9U%h>Q{gDAgks9bp7r-PBAff8gdmE2${4(~R2JFPt zi=?#2?JtBdq|KrHll0MX#vGKTR)~KhB(TZx<7o{9 z?Zc%F7qC*eleYTf@tDttwbm^V@5wIXOiI90*nss%Z&6CVelPmxFJ5WcS4_GAk`x43 zVUn--YwH2)-wQpiwMqr1gjDrTr33U+;T{?J1lOD4(2K;jl+~HIS_p&v6R_h1q3aR< z09g(Wipq?TcUrx&_o_F8Pi+6x95pL2OA8DTXc1Tu*uS%|@r2DEMjp~b@J)~?8?1P4 zIp_e>J(8c|xxc^lrEyE?f{Gf-ChZ=naKHtu6u3oF0*UdLKR3P})9f*?mF~;=po8jV zDw?kC@JxBXy8W52{u!Q3pk+&LDUgyq=OUZSfrNuZJ67{G__=K%{zt<+fV3 zoDowbsF&haeMo$P`agK8{m_3u(f*>g&AXq0_7PZ+LcKVm8KvMmq$r_iOPy+}3q+H( zmJz*|=DR&LZKY)c;yiXYq$~+l{J+*NvT)AH1R{&0{`TfNyw&Hxx>q&%>F4+!n0gGQQ-iz;z^(xAEdGi9CFdW!=&k*g78rl@ z=hkU!-fjPX!A;WlV-X0!3U*@)HLy3jsP#_gDO0u_(Sz??{qneD=&XD6oddm%)V|lc z2V6-~0{JsN^qp@m#8UrLQ9YD8U|D>E{K7a4vWyjlw-oQKJUsO<&%$XJ6mLjiBkmLB z?W_eLma`Meu@ktK&emc+mZMz(W*rl9#ot4dHoV(^PA^t)OLFv?D|i+{D?U#-QzPSPR))rRHm*EVf5F5|68Ww)e>+jw}9vPvY>j?ENq|nf~|RXghqv`@!#r z8};uQjouL&mfZ~*sckGT_LT26W}B9y6e#G|qN`sSKiig!dZ)zcSrQyAsqvxjY+mA5 za?3+n5d7-{XaVU!D=hLV!jDNzDT!^)EtQ{`c!am+kc$de05Y&Ss`sPrZ8QJ#PaBTj zx*~Qd_;)sI_T|SA5EPZB%s(61Z2pDxmjAu#b($PAU?Xx6oUU75Q8*e*Jf_LA*W+VRsa^M%N}qU(`Fc1Y)W_P)X06rS z8Q!TyJtGvar;wF;@{q}gOCw?pZ0}&bKEq?=N|7k=P0?x3A|$eurGhwVT!ZAOKyv&t z$V1w|KN*z|Ss~AaJI3x`+ zq1VeIQd=Zn_=g#k2RYyUn%n|`4adi6+lNW4b|yWqfKm@qUW$^ z411ClTw$#O_Gyj~SoxJa1@15Zob&4V6Uc0C16aA)rfEOfP&PR7L^zNO~|}2Szw07;qsrVO|?(N*6g0 zkZ7K=xpS;v#kG*WHBMJ?o%*4hu?YHd^xW6>{wPz@fz7{%Pu+N~qWGQ@;b#bVQgj*U z)K}|z!Uw@W8A2OGuP*!}`A%XwygMjdu`YpsEDF|%Em-{kdO?X!tAbG@vcu4%!{`2E z>_%4=>~x3v{KW;VKC^Dug&mXbv@PFPWaTgMm{0u!ExUS4YQO^sh;hyNaaulMRLd{hP3Aczc*aC|h0K)!9BY ziHn7*jY~;OBlZmd|G17QvogHkW1Pz;&Utn0+jjr@&;|FBE*$9Bfap@!9{tsRfhFvKDFL>BSh`(uF5y});flfFVA%Qx;3U;fXT3|&hTFyPu`_4_v_)gbf_1a#) z09gIeC*`24am?y_#XVk`em=rMg)3wZfVOU4?1EK~tnb%}^xwCBku$U}CZkCe#DV}; z4i}!f`G+uu-;Wn;Oj_TT><5Y+SaX*UU>tGDBZw|{-JI9=dc-n_3&bE{WIzt$pEV%4 z`M`Nw?#K`OZ-~a)bVGroYuZfx>F){{q_9D$w#e0iTpk8&@;mJots}}o9sUa{TYXYl=y%tTf0eFX zxso)`U6PN}`ubB&@DFHDb-a7Vm{DIJTO^E7as*J8ogHsCG2ypi&-!<+Qb?dh5=2VdP-ymM;zgD!V~-Zre00D6UZcg=kB@+Q(?BEV}v9~ijV6u*=FAtVWo`G|MIwjNx-HclzP4jFiC!rF$Q zDIBZ(r!APvU$4OC-x{%>E<+4TsMhw$`q6#nXiZ_u;e{~T)R=+Kk_Ryc_x`elm3`8R zhzD57@SqR$FU<=Y3FLJ9QSgs;1j20utC>|yTB?lt8`sEyE2|+76A2IkDrYOXu_(-B+$h) z0PB}CirAN@jbv?OJf;$n5ShzIG9p22S{F6C(iQ(s&liMWWDJ|#Wm=rT!oV|dG?{6E z6}C;${zwsZqlX&YpVPttj7|5*GzZ9-Owl=QRpH@NHdIKabTcO1VU(keTp+L%E+!r@ z1wjn@4-y1Ym|((G4S@hA;XD>ag2Yg=Fgz)&`~W! zh!4ocKg7&R2dy3a!w1B%#{(vpR!@PV+8Z+Gzqw-Z_&2B>SE@<}x1HDF0+w@L^}A%^ z$`OImqbF@W$7K37u+5x=eIg#3d;+`}KJ1dZ=pG644JKuG_lvwoQ60{TYp95bCIMe- zgoME=CH4YF@cs|EK6cOBbNBvSli7P-&c@JILy}_XLi<21rc7#~!Rk=%;DvMe7F%7j z%Ot*2KdJ(ZTXC+e%*?CmYWc48>ov%1Twzj7cQUFcUQ3?=)WB12&VIzq2Y7xct85=V zCR{;w10Gy$$Z-5`kXXf2m-A;9p1%2V$URr0n&aTRC1G2S;2*y4#y@HchjacRD6=eMynaa(4zHuT8#ugrn038D1j__zi^yAe($;Ab z*U!i7I0du%2(RS#63~#qfIW6V6^$X{9u*Z6kw67Ej_w`3Bp82T+ffh+4~8iEX8~Ur zX!RamixEluuUEc4=?kiWj=A^i*DATv1F>-TzU_B7pN#&_1pgoeS$K!-Mc^GowjTJ0jv!n-`At|a;vYiYkTlf_?!JTXuW?O( z?#kLp>#0rZL!z{tNQe75^BkZ7?;eB10g|{VF1jsw&}4Y*#7&cdO5esTIvNvaI!GIf z^QCw%qWx)b?G)fdAVyn&5RrkDx+X{hl!bW_Z}G=Q zdQDG}u5d)-(|i!y5JeQRL6H#*@!Nw)Yt@37VLLB>1EHl8585~b>FP)K#g5e!<)86W zB!zVymtO7W z#r3lIC&M=mdk0P8Uz8#_G@{8ml=}wHiBBL@ErXc(;q2GPZHm*x0@(OHtzw=?k!Jtq zz7ISHx(f_#y@px}v8f1?JJ*m*tdU8I$qkL0Y6O$3 z-7CpWrrNUe5=2z!dOfXBF0HLHFyTl#W45$(?L%fcCi4e!URCgc+~^_wgET4 zM8=_axuU+e*Xy5uF^kR8WRBy=(R}i63wcsDjaaK*q|B}RO+24BS zU-FvV5}D$F3s{-rY?|s#oP@UBC>5i2cVyT`^f~vM6M-QgBWg_%1y2Uhkl_p-k+=%e zyrdz*Mr{bP;te5|6ZOE@qr#}&Mu3B}1ZyNb;R5obv{cCM#uF8ygWm1WR8FE~w8-7X z!m)OvZM;{io1DwGkI7*XtO%&of)!+j0!f9@!eI|x!&lm1OBFgfGQmG5?Yd<$!-4Jw zSY}#sYt1SS*lN|)51K#o=CI$#f~HP!QAivaQ6FXFzG`7bYeMjE06h6=v!SrHVP7xY z2B06Mr!(Y3B`{2uqIi#CMQ#j|rB2IdTgJnUz{~Y~FO#FK?7trTA-~n8IX!K=wG2fL zq-o#{#jfw+G{+6z00GaIG3i+9B=_^DBPtC&}e&TKXP_mzS0=HA6s@V(cyZDeR>q2xtD{mqOZfo z;k8uEa%VOCJO|qzgPUQCy5fo@6W<5`&gKEI+*P|?ZqYD4)z^_Xj9D`LyJmycqVje7 z!8rA7uBUKXP-}*5o4lg3tpA9yu3+aN`JKVF>xRo}C;pKrB;X39umYH6y>iLvBL`f- z>LcTZ>SZ=qJ$mBCY3k0qJWIMMHaN?aWg8I^?z+5o;!lY%7qqhE z_6#5yE?^BHvj@8=a)Ko1)W^%$osJA(&%^uN3s3JX2P>OvY<34vp6?p7~&9k6oy$Y{%4;(&s-*i0Eb`df+NH5E1PI3`By0f#GL4fC69 zt4!FWToO@@f5E$aYE%ycO!|}(ULXzzjo5;N?SisOiC#sP2<)q&xHRyRr-Y;uwggIO z!ayQtUAWO>v$llP?+DRJp7GG`D0paJ4*`4#pTi?YX!fN`CoHmUbA7GQy>4i5pdVvq zXmoJTrgB%lzds$n;rU!8|D2%KO3?|_KJtZvR~bMa1hhjsFg3)~0`{42l(ZH=RgWDu zt+5u~8m%|BD0#dw75wlc zFm4@n`CEH0kNatnBQKOML3r%<8pL`G$V`R$uz1+~sVPGiJj z@Gw>wZuXSOuZ^7Pd367y%9f2dlJ6EJqAOdmrAPYY@y2PJ-V2@=+HPDLt>gPhxU}h^Rm=p(#l;7$71BgJO6Qpe5RrKT-Mfgv0#v54x)4v(C&Tzo=T&UCvG@$C+Bj zmf}x<)d7$y(C#h|uZ9mA3YY&iTG8-T>_^%T`4Amx8%-Gsrtop^Tx+s#picuBD?z>G z)=S>n`@dW%D;dXz_IVeuhW7pIk@`T~vGVa_*Zm!-sLl#&?Ws#wr2gqhU9YOlySH95 z{^;EQIc#ppr&gl@sk(X|uc)L=(RAzrBOKxVdq;gEWWvbH7ssp=T6vC#^c9) zeKw5je?vxMTFFaIvO>&e9)%S>Uuzk8i2vs&-!^IiwL(CM(8fq_-TMZf&J=b229b@| zRPIX3@$Y-3 zPz;C8?rDAa^ResS#Y)=szkNbJq3sles!fr3> z!;b`9RlHUXAnIuIO0#6i?cXele6E}wQ^F~N7Ma1gi6DV+iPulQo%Eymecdm!~j*MtQ3WJ9T!T8b13!(d@h$3TMuWs@=ITsRG zRj_KAz$Gz$dOFC4CWok~v$Q3FB}(CR-f+&saToihY0s!JA5xuxS|{|1GI;JHcLe&2 zck>3Kjbi1egGRTG?Bak6SlM+y`biCeiZxLYul!odrbAPi#Art^Sc13)`Kln+viB)@ zR~+%f(l;w$4zFRAs&AP)yQpgN=-5@ZMRKC zptqNPU}*tf{M4Vb{&MVwV%m-*`ah7JaNEi#2VB6)D0>I8a?8dMaQ4141A(EQy6tf6_|cB7iINz;$9&Fg03?EvHhM0h(B*(0DQCV4@Q zGF9Y=FP!9AFuk&5BN^HIFHaVh>#5fHKQhr#QR+j81C-~v|K zSUI>A*~|C{gm4Vf*Mk^``XJ&ac)6eX$I8!5iAz_hByY`Buc4BPW8^{kkH&n#7)05`d*`F#Q^;T5o{u%NdZ~<$`-$JVcb^trf%tI;uIn+F1fl8u6 znLNtnSYdm3)WM#|sHW;cmagpE5tp*~VgFI|QQqF_D_+enY*|VALze@Bbv;MQE8wy` zg?^}VR||;^!{TrOYZ%-{dnN4IBQ}qRTs4vm?s#`1RhS-xiBWUevYFSFeoU+wOxso0 zTT#udzn-C#)bA zVj2mJHvRN&ebge8&3^62n4CW#dsY$=_tg%qaHipf6Zf0FlXFmJyGaQGb%Dk=fX1m!|GHpmhJU`|D8Rz*nsw z()=ZBbDqp_OKGRFn9@ml0qKO}krmvbwNc4ctX9;MGH)JLFpZT9;1iW)!5?9Y107B4kt)o`k*0#kOKxTpU`4VcH=DDd8!icH z*J{Q>1=Q}J$LP4O{L}OzHM21nW>w(9S*TQ^k-K;DKRyMwrOsp zI;)(BWnCM0zh@-}T)@i8+mbR-0w5s@WFO8WE4Y~UjQl|)1z2?&;?+vs;kW!5Y86f4plm`W^fKw24)N00nAdO z1!~^=GFQdNWV8XZ5W}76YGV#-T^pT40%RJ$id-eNdthvL7{Cu5SAoL7;9Fh@LLU1{_eZh61`I%cgrSBf*q0!C^nhAle5wb~C>+*x-hNm;f^mMMCBs+am;tEJmN z3f>?$`MgXOslJ@rp*Tfcl}+{{wPCNI_SByH`_STm3s^(ze)UT2E@{GeUKY#x(1b`c zO!A^|ET(K2yg|v`^mg0r)Ck2wAB;q#wNU;DFyH$5<|`s=`FT+(WH8;JRA0&a0V|h> zdnL_?tkiw#`*CJDQ;p+=-M8%KfD2gJeScD-&JI+E8T!|t-WtTZnlNTLssvuAF(qPZ z>*QH)Uc32Lx(2b`u}C*?ZVpSzmngFs*FL$cZf4_$(chS1^n{YuJ3L4cRJibkey;M} zy+TxV!CS`nkcqCN4Q zh)Dd7&*a@M2lciPoFD!~=a<$lb&c)Bh+%ZNfHjP6CUphdYiJ&0HcR(M^dJSA5xEI% z-z9v<)ZX>#@*P>;xoJQPt9v7S$Fg5-{Sm2WVw+C}R}Pnyo60PJ)rJ?FCV%o^9D|2_Ucab+TXj-O=Wbylt=xo{@%w^RtJDz0nm=C-D4PWz#81cs6%d7Xzp5j z=bkxu^$UJE|ICoyrh_jIe3;_gLwt9x0qBqpa74N9mJ@Ct_d7a6z*1hz^mM6N)fLt9 zs+tPQ!exB+VB+GO&KbyLV zz>t72vAp|vcyOSn@i07kw+HtEpdf5G)rYJuLqwM4@ctebV=)~Nl!~flagZ}zj;b<; z4c|MFy;Zoc=e{Fv9sPFz6lAc(BOq0?dAzKg@uju3Y$dBRu^*6tBN2nx7x1Xx@=^OW zEo-8eC_DXy5gvpLNE%(AJnZ!xIZtla+JE%DPo_Lz8}AdTaz76r4!D3deD39LJqci0 zKLBI)Gc&%rz$^Km!A55aCPm1Q`hAC83%Pi>8uf8rgtXFy+NXsxJbzL1*egd|I(`G2 z%vu3p-AXl(vU0w9u)er)d+ey@RgnwB+w?P~onBvzBc;4*z+Tk{5Vd-%0j!ju-v06h zpG-Z&`ic6syQH@pbKD<>BnMI-xI?m=doIz{NRCQg@XyRxb61|6|KoPOS*V76<_L#5 z963r==EZ`d!nER0n>teZ2Ck<~deCe)+KmRio&|XxljQlzoZhSvQ`nOc&j$WTs` z`M?=#-h@PQ0(_NXxbdp3rzH*o`!{Ncey8tU&*QuBI~O)9jY1ugdU*LV37r zipW*iEM&y+(qTuJHKu!EqoU1z6h4 zNxQ83K0G;)I2MOz58Yk?bgU(QvS+Cp|0mSLeZxk3|0FG&ufQgJ1pJU1X8jkxU}Onk z16txgAsm&!|30Xrc3a||)J{{Py^>KqJm>t+_F3rKtvWGiSbuQ=YgpgjU7fR64WBz; z^%OuxEkJ8LVn(G0w01R<=}*E2=aq7J*bLna$?Equ7-za+xBl$lfa`~q9rq#QRFI1U zNh0Tcw$EBv&rb;(p^ZK%k2c;37ln)y(C-E~IjoXo#luGMmN;0^12<8F>~||}1=-C3 zSHjBf`;&I+Z1w5c{lA_l$@<@N<${CSg^!l-EGNA#>kcTCn!-Jbj+~1K-SETnKl|2$ zwrWZCxvV4DB`9MYZ~-f0tj*qvZP0po>gs}sm;EVM$v>xEZzZD>{IpWq5|imp5*WdY zJy!`CZ4D5xE;;YhsjrY4h~J^vx?q**8<1`FyMUE#cVvL*v29w^++Pp)>i=Qt|1a!X zNF5#0;-EFSV}mnn1Co>+Y`JMOTHXRWU3tN$-}*X{?g3(z+e{X5U~mUz7BON^Bqabz zB@o}j^85j7j>bNmyL09InXqp$WRNCnfG1vn!t)|LFB`PJ$Ucz@UdTCsRFQSea zdjQoNbdIE|^4jvWg|wkM-DBu-pwEMD=yutqyeAHjv_)~@$pwPSyfl5?=$IM11Rs9@ z&+>zF*9++Bi)G z@LhU-zb}qQIMUN${5~CnW?$^%^ZBG4*t)Ro1^`AutPtXb%8Gw<9gOCP0*DtD9tof* zUm$E_EQk$~t?{-vqNYl;|B=4Chs%LP4!D4o$PM>%Ck~L5 zGp%AC(r#H27o8+9dwIXF_t7Nd+Yp!z04hzzk9z^0M&Wc3O5^~dR7ha3d%+={nedlj zJMsDk<Nb;hUMT+rGpyRYglA_|*Aku>K>zvl_mK**Ya6H(CKP%iG z_K^edIo+kfRk5m0V+w|IankzH^-S+0kKM~$4!9g}IpA`@<$%ipmjf;bTn@M#a5>;| pz~z9;0ha?V2V4%g92g=T`2UEqMO-AdLW=+Z002ovPDHLkV1gb0r9A)u literal 0 HcmV?d00001 diff --git a/menu.js b/menu.js new file mode 100644 index 00000000..2fe2214f --- /dev/null +++ b/menu.js @@ -0,0 +1,51 @@ +/* + @licstart The following is the entire license notice for the JavaScript code in this file. + + The MIT License (MIT) + + Copyright (C) 1997-2020 by Dimitri van Heesch + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software + and associated documentation files (the "Software"), to deal in the Software without restriction, + including without limitation the rights to use, copy, modify, merge, publish, distribute, + sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or + substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING + BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + @licend The above is the entire license notice for the JavaScript code in this file + */ +function initMenu(relPath,searchEnabled,serverSide,searchPage,search) { + function makeTree(data,relPath) { + var result=''; + if ('children' in data) { + result+='

'; + } + return result; + } + + $('#main-nav').append(makeTree(menudata,relPath)); + $('#main-nav').children(':first').addClass('sm sm-dox').attr('id','main-menu'); + if (searchEnabled) { + if (serverSide) { + $('#main-menu').append('
  • '); + } else { + $('#main-menu').append('
  • '); + } + } + $('#main-menu').smartmenus(); +} +/* @license-end */ diff --git a/menudata.js b/menudata.js new file mode 100644 index 00000000..2b9ae10f --- /dev/null +++ b/menudata.js @@ -0,0 +1,70 @@ +/* + @licstart The following is the entire license notice for the JavaScript code in this file. + + The MIT License (MIT) + + Copyright (C) 1997-2020 by Dimitri van Heesch + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software + and associated documentation files (the "Software"), to deal in the Software without restriction, + including without limitation the rights to use, copy, modify, merge, publish, distribute, + sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or + substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING + BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + @licend The above is the entire license notice for the JavaScript code in this file +*/ +var menudata={children:[ +{text:"Main Page",url:"index.html"}, +{text:"Namespaces",url:"namespaces.html",children:[ +{text:"Namespace List",url:"namespaces.html"}, +{text:"Namespace Members",url:"namespacemembers.html",children:[ +{text:"All",url:"namespacemembers.html"}, +{text:"Functions",url:"namespacemembers_func.html"}, +{text:"Typedefs",url:"namespacemembers_type.html"}, +{text:"Enumerations",url:"namespacemembers_enum.html"}]}]}, +{text:"Classes",url:"annotated.html",children:[ +{text:"Class List",url:"annotated.html"}, +{text:"Class Index",url:"classes.html"}, +{text:"Class Hierarchy",url:"hierarchy.html"}, +{text:"Class Members",url:"functions.html",children:[ +{text:"All",url:"functions.html",children:[ +{text:"c",url:"functions.html#index_c"}, +{text:"d",url:"functions_d.html#index_d"}, +{text:"f",url:"functions_f.html#index_f"}, +{text:"g",url:"functions_g.html#index_g"}, +{text:"h",url:"functions_h.html#index_h"}, +{text:"i",url:"functions_i.html#index_i"}, +{text:"l",url:"functions_l.html#index_l"}, +{text:"o",url:"functions_o.html#index_o"}, +{text:"p",url:"functions_p.html#index_p"}, +{text:"r",url:"functions_r.html#index_r"}, +{text:"s",url:"functions_s.html#index_s"}, +{text:"t",url:"functions_t.html#index_t"}, +{text:"u",url:"functions_u.html#index_u"}, +{text:"v",url:"functions_v.html#index_v"}]}, +{text:"Functions",url:"functions_func.html",children:[ +{text:"c",url:"functions_func.html#index_c"}, +{text:"d",url:"functions_func_d.html#index_d"}, +{text:"f",url:"functions_func_f.html#index_f"}, +{text:"g",url:"functions_func_g.html#index_g"}, +{text:"h",url:"functions_func_h.html#index_h"}, +{text:"i",url:"functions_func_i.html#index_i"}, +{text:"l",url:"functions_func_l.html#index_l"}, +{text:"o",url:"functions_func_o.html#index_o"}, +{text:"p",url:"functions_func_p.html#index_p"}, +{text:"r",url:"functions_func_r.html#index_r"}, +{text:"s",url:"functions_func_s.html#index_s"}, +{text:"t",url:"functions_func_t.html#index_t"}, +{text:"u",url:"functions_func_u.html#index_u"}, +{text:"v",url:"functions_func_v.html#index_v"}]}]}]}, +{text:"Files",url:"files.html",children:[ +{text:"File List",url:"files.html"}]}]} diff --git a/namespacegoogle.html b/namespacegoogle.html new file mode 100644 index 00000000..afc48d4b --- /dev/null +++ b/namespacegoogle.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: google Namespace Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + +
    +
    +
    +
    google Namespace Reference
    +
    +
    +

    Detailed Description

    +

    Copyright 2020 Alibaba Group Holding Limited.

    +

    Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0
    +

    Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

    +
    + + + + diff --git a/namespacegrape.html b/namespacegrape.html new file mode 100644 index 00000000..42742341 --- /dev/null +++ b/namespacegrape.html @@ -0,0 +1,1224 @@ + + + + + + + +libgrape-lite: grape Namespace Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + +
    +
    + +
    +
    grape Namespace Reference
    +
    +
    + + + + + +

    +Namespaces

     batch_shuffle_message_manager_impl
     A kind of collective message manager.
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Classes

    class  AutoParallelMessageManager
     A kind of message manager supporting auto parallelism. More...
     
    class  AutoAppBase
     AutoAppBase is a base class for auto-parallel apps. It contains an AutoParallelMessageManager to process messages implicitly during the computation. More...
     
    class  BatchShuffleAppBase
     
    class  ContextBase
     ContextBase is the base class for all user-defined contexts. A context manages data through the whole computation. The data won't be cleared during supersteps. More...
     
    class  MutationContext
     
    class  ParallelAppBase
     ParallelAppBase is a base class for parallel apps. Users can process messages in a more flexible way in this kind of app. It contains an ParallelMessageManager to process messages, which enables send/receive messages during computation. This strategy improves performance by overlapping the communication time and the evaluation time. More...
     
    class  VertexDataContext
     
    class  VoidContext
     
    class  Communicator
     Communicator provides methods to implement distributed aggregation, such as Min/Max/Sum. More...
     
    struct  integer_sequence
     
    struct  make_integer_sequence
     
    struct  make_integer_sequence< T, 0, Is... >
     
    struct  ShuffleBuffer
     
    struct  ShuffleBuffer< nonstd::string_view >
     
    struct  ShuffleBufferTuple
     
    struct  ShuffleBufferTuple< First >
     
    struct  ShuffleBufferTuple_element
     
    struct  ShuffleBufferTuple_element< index, ShuffleBufferTuple< First, Tail... > >
     
    struct  ShuffleBufferTuple_element< 0, ShuffleBufferTuple< First, Rest... > >
     
    struct  add_ref
     
    struct  add_ref< T & >
     
    struct  add_const_ref
     
    struct  add_const_ref< T & >
     
    struct  add_const_ref< const T & >
     
    struct  get_buffer_helper
     
    struct  get_buffer_helper< 0, First, Rest... >
     
    struct  frag_shuffle_header
     
    class  ShuffleOut
     
    class  ShuffleIn
     
    struct  LoadGraphSpec
     LoadGraphSpec determines the specification to load a graph. More...
     
    class  BasicFragmentLoader
     
    struct  Mutation
     
    class  BasicFragmentMutator
     
    class  CSREdgecutFragmentBase
     
    class  EdgecutFragmentBase
     IEdgecutFragment defines the interfaces of fragments with edgecut. To learn more about edge-cut and vertex-cut, please refers to https://spark.apache.org/docs/1.6.2/graphx-programming-guide.html#optimized-representation. More...
     
    class  EVFragmentLoader
     EVFragmentLoader is a loader to load fragments from separated efile and vfile. More...
     
    class  EVFragmentMutator
     
    class  EVFragmentRebalanceLoader
     EVFragmentLoader is a loader to load fragments from separated efile and vfile. More...
     
    struct  PrepareConf
     
    class  FragmentBase
     FragmentBase is the base class for fragments. More...
     
    class  IdParser
     
    struct  ImmutableEdgecutFragmentTraits
     
    class  ImmutableEdgecutFragment
     A kind of edgecut fragment. More...
     
    struct  MutableEdgecutFragmentTraits
     
    class  MutableEdgecutFragment
     
    class  HashPartitioner
     HashPartitoner is a partitioner with the strategy of hashing on original vertex_ids. More...
     
    class  HashPartitioner< std::string >
     
    class  SegmentedPartitioner
     SegmentedPartitioner is a partitioner with a strategy of chunking original vertex_ids. More...
     
    class  SegmentedPartitioner< std::string >
     
    struct  Nbr
     A neighbor of a vertex in the graph. More...
     
    struct  Nbr< VID_T, EmptyType >
     A neighbor of a vertex in the graph. (partial specialization with Empty edge data.) More...
     
    class  AdjList
     A iteratable adjencent list of a vertex. The list contains all neighbors in format of Nbr, which contains the other Node and the data on the Edge. More...
     
    class  FilterAdjList
     
    class  FilterConstAdjList
     
    class  ConstAdjList
     A immutable iteratable adjencent list of a vertex. The list contains all neighbors in format of Nbr, which contains the other Node and the data on the Edge. More...
     
    struct  DestList
     Destination list for message exchange. A message may need to be sent to all the fragments in the DestList. More...
     
    class  DeMutableCSR
     
    class  DeMutableCSRBuilder
     
    class  DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >
     
    class  DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >
     
    struct  Edge
     Edge representation. More...
     
    struct  Edge< VID_T, EmptyType >
     Partial specialization for Edge with EmptyType on edge_data. More...
     
    class  IdIndexer
     
    class  ImmutableCSR
     
    class  ImmutableCSRBuild
     
    class  ImmutableCSRStreamBuilder
     
    class  MutableCSR
     
    class  MutableCSRBuilder
     
    class  MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >
     
    class  MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >
     
    class  IOAdaptorBase
     IOAdaptorBase is the base class of I/O adaptors. More...
     
    class  LineParserBase
     LineParserBase is the base class for line parsers. More...
     
    class  LocalIOAdaptor
     A default adaptor to read/write files from local locations. More...
     
    class  TSVLineParser
     a default parser for tsv files. More...
     
    class  BatchShuffleMessageManager
     
    class  DefaultMessageManager
     Default message manager. More...
     
    class  MessageInBuffer
     MessageInBuffer holds a grape::OutArchive, which contains a bunch of messages. Used By JavaParallelMessageManager to process messages in a parallel manner. More...
     
    struct  TerminateInfo
     
    class  MessageManagerBase
     MessageManagerBase is the base class for message managers. More...
     
    class  ParallelEngine
     
    struct  ParallelEngineSpec
     
    class  ParallelMessageManager
     A kind of parallel message manager. More...
     
    class  ParallelMessageManagerOpt
     A optimized version of parallel message manager. More...
     
    class  ISyncBuffer
     ISyncBuffer is a base class of SyncBuffer, which is used for auto parallelization. More...
     
    class  SyncBuffer
     SyncBuffer manages status on each vertex during the evaluation in auto parallization. More...
     
    class  ThreadLocalMessageBuffer
     
    class  ThreadLocalMessageBufferOpt
     
    struct  SerializedSize
     
    struct  SerializedSize< EmptyType >
     
    struct  SerializedSize< std::string >
     
    struct  SerializedSize< nonstd::string_view >
     
    class  FixedInArchive
     
    class  InArchive
     InArchive is an archived object for serializing objects. More...
     
    class  OutArchive
     OutArchive is an archived object for deserializing objects. More...
     
    struct  EmptyType
     EmptyType is the placeholder of VDATA_T and EDATA_T for graphs without data on vertices and edges. More...
     
    struct  InternalOID
     
    struct  InternalOID< std::string >
     
    struct  IdHasher
     
    struct  IdHasher< uint32_t >
     
    struct  IdHasher< uint64_t >
     
    struct  IdenticalHasher
     
    struct  IdenticalHasher< uint32_t >
     
    struct  IdenticalHasher< uint64_t >
     
    class  Bitset
     Bitset is a highly-optimized bitset implementation. More...
     
    class  RefBitset
     
    class  BlockingQueue
     A concurrent queue based on condition_variables and can be accessed by multi-producers and multi-consumers simultaneously. More...
     
    class  SpinLock
     A simple implementation of spinlock based on std::atomic. More...
     
    class  NonblockingQueue
     A concurrent queue guarded by a spinlock and can be accessed by multi-producers and multi-consumers simultaneously. More...
     
    class  DefaultAllocator
     Allocator used for grape containers, i.e., <Array>. More...
     
    class  Array
     Array a std::vector-like container type without reserving memory. More...
     
    class  Array< EmptyType, _Alloc >
     Template specialization of Array for EmptyType, without consuming extra memory for EmptyType but provides same interfaces with Array of usual data types. More...
     
    class  IteratorPair
     IteratorPair is a wrapper for begin and end iterators. More...
     
    struct  MicroBuffer
     
    struct  MessageBuffer
     
    class  MessageBufferPool
     
    class  StringViewVector
     
    class  VarintEncoder
     
    class  VarintDecoder
     
    struct  VarintUtil
     
    struct  VarintUtil< uint32_t >
     
    struct  VarintUtil< uint64_t >
     
    class  DeltaVarintEncoder
     
    class  DeltaVarintDecoder
     
    struct  SerializedSize< VarintEncoder >
     
    struct  SerializedSize< DeltaVarintEncoder< T > >
     
    class  Vertex
     A Vertex object only contains id of a vertex. It will be used when iterating vertices of a fragment and accessing data and neighbor of a vertex. More...
     
    class  VertexRange
     
    class  DualVertexRange
     
    class  VertexArray
     
    class  VertexArray< VertexRange< VID_T >, T >
     
    class  VertexArray< DualVertexRange< VID_T >, T >
     
    class  DenseVertexSet
     A vertex set with dense vertices. More...
     
    class  DenseVertexSet< VertexRange< VID_T > >
     
    class  DenseVertexSet< DualVertexRange< VID_T > >
     
    class  DenseVertexSet< VertexVector< VID_T > >
     
    class  GlobalVertexMap
     a kind of VertexMapBase which holds global mapping information in each worker. More...
     
    class  GlobalVertexMapBuilder
     
    class  LocalVertexMap
     
    class  LocalVertexMapBuilder
     
    class  VertexMapBase
     VertexMapBase manages some mapping about vertices. More...
     
    class  CommSpec
     CommSpec records the mappings of fragments, workers, and the threads(tasks) in each worker. More...
     
    class  Worker
     A Worker manages the computation cycle. More...
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Typedefs

    +template<std::size_t... Ints>
    using index_sequence = integer_sequence< std::size_t, Ints... >
     
    +template<std::size_t N>
    using make_index_sequence = make_integer_sequence< std::size_t, N >
     
    +template<typename... T>
    using index_sequence_for = make_index_sequence< sizeof...(T)>
     
    +using fid_t = unsigned
     
    +template<typename T >
    using Allocator = DefaultAllocator< T >
     
    +template<typename E >
    using enable_enum_t = typename std::enable_if< std::is_enum< E >::value, typename std::underlying_type< E >::type >::type
     
    +template<class T , typename... Args>
    using result_of_t = typename std::result_of< T(Args...)>::type
     
    template<typename T >
    using VertexVector = std::vector< Vertex< T > >
     A discontinuous vertices collection representation. An increasing labeled(but no need to be continuous) vertices must be provided to construct the VertexVector. More...
     
    +template<typename APP_T >
    using ParallelWorker = Worker< APP_T, ParallelMessageManager >
     
    +template<typename APP_T >
    using ParallelWorkerOpt = Worker< APP_T, ParallelMessageManagerOpt >
     
    +template<typename APP_T >
    using AutoWorker = Worker< APP_T, AutoParallelMessageManager< typename APP_T::fragment_t > >
     
    +template<typename APP_T >
    using BatchShuffleWorker = Worker< APP_T, BatchShuffleMessageManager >
     
    + + + + + + + +

    +Enumerations

    enum class  LoadStrategy { kOnlyOut = 0 +, kOnlyIn = 1 +, kBothOutIn = 2 +, kNullLoadStrategy = 0xf0 + }
     LoadStrategy specifies the which edges should be loadded when building the graph from a location.
     
    enum class  MessageStrategy { kAlongOutgoingEdgeToOuterVertex = 0 +, kAlongIncomingEdgeToOuterVertex = 1 +, kAlongEdgeToOuterVertex = 2 +, kSyncOnOuterVertex = 3 + }
     MessageStrategy specifies the method of message passing between fragments. More...
     
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Functions

    +template<typename APP_T >
    std::enable_if< std::is_base_of< Communicator, APP_T >::value >::type InitCommunicator (std::shared_ptr< APP_T > app, MPI_Comm comm)
     
    +template<typename APP_T >
    std::enable_if<!std::is_base_of< Communicator, APP_T >::value >::type InitCommunicator (std::shared_ptr< APP_T > app, MPI_Comm comm)
     
    +template<std::size_t index, typename First , typename... Rest>
    add_ref< typename ShuffleBufferTuple_element< index, ShuffleBufferTuple< First, Rest... > >::buffer_type >::type get_buffer (ShuffleBufferTuple< First, Rest... > &bt)
     
    +template<std::size_t index, typename First , typename... Rest>
    add_const_ref< typename ShuffleBufferTuple_element< index, ShuffleBufferTuple< First, Rest... > >::buffer_type >::type get_const_buffer (const ShuffleBufferTuple< First, Rest... > &bt)
     
    +template<typename Tuple , typename Func , std::size_t... index>
    void foreach_helper (const Tuple &t, const Func &func, index_sequence< index... >)
     
    +template<typename Tuple , typename Func , std::size_t... index>
    void foreach_rval_helper (Tuple &t, const Func &func, index_sequence< index... >)
     
    +template<typename Tuple , typename Func >
    void foreach (Tuple &t, const Func &func)
     
    +template<typename Tuple , typename Func >
    void foreach_rval (Tuple &t, const Func &func)
     
    +void InitMPIComm ()
     
    +void FinalizeMPIComm ()
     
    +LoadGraphSpec DefaultLoadGraphSpec ()
     
    +template<typename VID_T , typename EDATA_T >
    bool operator< (const Nbr< VID_T, EDATA_T > &lhs, const Nbr< VID_T, EDATA_T > &rhs)
     
    +template<typename VID_T , typename EDATA_T >
    InArchiveoperator<< (InArchive &archive, const Nbr< VID_T, EDATA_T > &nbr)
     
    +template<typename VID_T >
    InArchiveoperator<< (InArchive &archive, const Nbr< VID_T, EmptyType > &nbr)
     
    +template<typename VID_T , typename EDATA_T >
    OutArchiveoperator>> (OutArchive &archive, Nbr< VID_T, EDATA_T > &nbr)
     
    +template<typename VID_T >
    OutArchiveoperator>> (OutArchive &archive, Nbr< VID_T, EmptyType > &nbr)
     
    +template<typename VID_T , typename EDATA_T >
    InArchiveoperator<< (InArchive &archive, const Edge< VID_T, EDATA_T > &e)
     
    +template<typename VID_T , typename EDATA_T >
    OutArchiveoperator>> (OutArchive &archive, Edge< VID_T, EDATA_T > &e)
     
    +template<typename VID_T >
    InArchiveoperator<< (InArchive &archive, const Edge< VID_T, EmptyType > &e)
     
    +template<typename VID_T >
    OutArchiveoperator>> (OutArchive &archive, Edge< VID_T, EmptyType > &e)
     
    +template<typename VID_T , typename VDATA_T >
    InArchiveoperator<< (InArchive &archive, const internal::Vertex< VID_T, VDATA_T > &v)
     
    +template<typename VID_T , typename VDATA_T >
    OutArchiveoperator>> (OutArchive &archive, internal::Vertex< VID_T, VDATA_T > &v)
     
    +template<typename VID_T >
    InArchiveoperator<< (InArchive &archive, const internal::Vertex< VID_T, EmptyType > &v)
     
    +template<typename VID_T >
    OutArchiveoperator>> (OutArchive &archive, internal::Vertex< VID_T, EmptyType > &v)
     
    +template<typename APP_T >
    std::enable_if< std::is_base_of< ParallelEngine, APP_T >::value >::type InitParallelEngine (std::shared_ptr< APP_T > app, const ParallelEngineSpec &spec)
     
    +template<typename APP_T >
    std::enable_if<!std::is_base_of< ParallelEngine, APP_T >::value >::type InitParallelEngine (std::shared_ptr< APP_T > app, const ParallelEngineSpec &spec)
     
    +ParallelEngineSpec DefaultParallelEngineSpec ()
     
    +ParallelEngineSpec MultiProcessSpec (const CommSpec &comm_spec, bool affinity=false)
     
    +template<typename T , typename std::enable_if< std::is_pod< T >::value, T >::type * = nullptr>
    FixedInArchiveoperator<< (FixedInArchive &arc, T u)
     
    +FixedInArchiveoperator<< (FixedInArchive &arc, const EmptyType &v)
     
    +template<typename T , typename std::enable_if< std::is_pod< T >::value, T >::type * = nullptr>
    InArchiveoperator<< (InArchive &in_archive, T u)
     
    +InArchiveoperator<< (InArchive &in_archive, EmptyType)
     
    +InArchiveoperator<< (InArchive &in_archive, const std::string &str)
     
    +InArchiveoperator<< (InArchive &archive, const nonstd::string_view &str)
     
    +template<typename T1 , typename T2 >
    InArchiveoperator<< (InArchive &in_archive, const std::pair< T1, T2 > &p)
     
    +template<typename T1 , typename T2 , typename T3 >
    InArchiveoperator<< (InArchive &in_archive, const std::tuple< T1, T2, T3 > &t)
     
    +template<typename T , typename ALLOC_T , typename std::enable_if< std::is_pod< T >::value, T >::type * = nullptr>
    InArchiveoperator<< (InArchive &in_archive, const std::vector< T, ALLOC_T > &vec)
     
    +template<typename ALLOC_T >
    InArchiveoperator<< (InArchive &in_archive, const std::vector< EmptyType, ALLOC_T > &vec)
     
    +template<typename T , typename ALLOC_T , typename std::enable_if< std::is_pod< T >::value, T >::type * = nullptr>
    InArchiveoperator<< (InArchive &in_archive, const Array< T, ALLOC_T > &vec)
     
    +template<typename ALLOC_T >
    InArchiveoperator<< (InArchive &in_archive, const Array< EmptyType, ALLOC_T > &vec)
     
    +template<typename T >
    InArchiveoperator<< (InArchive &in_archive, const std::set< T > &s)
     
    +template<typename T >
    InArchiveoperator<< (InArchive &in_archive, const std::unordered_set< T > &s)
     
    +template<typename T1 , typename T2 >
    InArchiveoperator<< (InArchive &in_archive, const std::map< T1, T2 > &m)
     
    +template<typename T1 , typename T2 >
    InArchiveoperator<< (InArchive &in_archive, const std::unordered_map< T1, T2 > &m)
     
    +template<typename T1 , typename T2 >
    InArchiveoperator<< (InArchive &in_archive, const ska::flat_hash_map< T1, T2 > &m)
     
    +template<typename T , typename std::enable_if< std::is_pod< T >::value, T >::type * = nullptr>
    OutArchiveoperator>> (OutArchive &out_archive, T &u)
     
    +OutArchiveoperator>> (OutArchive &out_archive, EmptyType &)
     
    +OutArchiveoperator>> (OutArchive &out_archive, std::string &str)
     
    +OutArchiveoperator>> (OutArchive &archive, nonstd::string_view &str)
     
    +template<typename T1 , typename T2 >
    OutArchiveoperator>> (OutArchive &out_archive, std::pair< T1, T2 > &p)
     
    +template<typename T1 , typename T2 , typename T3 >
    OutArchiveoperator>> (OutArchive &out_archive, std::tuple< T1, T2, T3 > &t)
     
    +template<typename T , typename ALLOC_T , typename std::enable_if< std::is_pod< T >::value, T >::type * = nullptr>
    OutArchiveoperator>> (OutArchive &out_archive, std::vector< T, ALLOC_T > &vec)
     
    +template<typename ALLOC_T >
    OutArchiveoperator>> (OutArchive &out_archive, std::vector< EmptyType, ALLOC_T > &vec)
     
    +template<typename T , typename ALLOC_T , typename std::enable_if< std::is_pod< T >::value, T >::type * = nullptr>
    OutArchiveoperator>> (OutArchive &out_archive, Array< T, ALLOC_T > &vec)
     
    +template<typename ALLOC_T >
    OutArchiveoperator>> (OutArchive &out_archive, Array< EmptyType, ALLOC_T > &vec)
     
    +template<typename T >
    OutArchiveoperator>> (OutArchive &out_archive, std::set< T > &s)
     
    +template<typename T >
    OutArchiveoperator>> (OutArchive &out_archive, std::unordered_set< T > &s)
     
    +template<typename T1 , typename T2 >
    OutArchiveoperator>> (OutArchive &out_archive, std::map< T1, T2 > &m)
     
    +template<typename T1 , typename T2 >
    OutArchiveoperator>> (OutArchive &out_archive, std::unordered_map< T1, T2 > &m)
     
    +template<typename T1 , typename T2 >
    OutArchiveoperator>> (OutArchive &out_archive, ska::flat_hash_map< T1, T2 > &m)
     
    +std::ostream & operator<< (std::ostream &out, const EmptyType)
     
    +std::istream & operator>> (std::istream &in, EmptyType)
     
    +template<typename E >
    constexpr enable_enum_t< E > underlying_value (E e) noexcept
     
    +template<typename E , typename T >
    constexpr std::enable_if< std::is_enum< E >::value &&std::is_integral< T >::value, E >::type to_enum (T value) noexcept
     
    +template<typename APP_T , typename GRAPH_T >
    constexpr bool check_load_strategy_compatible ()
     
    +template<typename APP_T , typename GRAPH_T >
    constexpr bool check_message_strategy_valid ()
     
    +template<typename APP_T , typename GRAPH_T >
    constexpr bool check_app_fragment_consistency ()
     
    +double GetCurrentTime ()
     
    +void GetMemoryUsage (const int proc_id, const std::string &info)
     
    +template<typename... Args>
    std::string StringFormat (const std::string &format, Args... args)
     
    +std::string GetResultFilename (const std::string &prefix, const fid_t fid)
     Get the formatted result filename.
     
    template<typename T >
    void DistinctSort (std::vector< T > &vec)
     sort the target vector and eliminate the duplicated elements. More...
     
    +std::vector< std::string > split_string (const std::string &str, char delimiter)
     
    +size_t parse_size (const std::string &str)
     
    +std::map< std::string, size_t > parse_meminfo ()
     
    +size_t get_available_memory ()
     
    template<typename T >
    bool atomic_compare_and_swap (T &val, T old_val, T new_val)
     Atomic compare and swap operation. Equavalent to: More...
     
    +template<>
    bool atomic_compare_and_swap (float &val, float old_val, float new_val)
     
    +template<>
    bool atomic_compare_and_swap (double &val, double old_val, double new_val)
     
    template<typename T >
    bool atomic_min (T &a, T b)
     Atomic compare and store the minimum value. Equavalent to: More...
     
    template<typename T >
    void atomic_add (T &a, T b)
     Atomic add a value. Equavalent to: More...
     
    +template<>
    void atomic_add (float &a, float b)
     
    +template<>
    void atomic_add (double &a, double b)
     
    template<typename T >
    void atomic_sub (T &a, T b)
     Atomic sub a value. Equavalent to: More...
     
    +template<>
    void atomic_sub (float &a, float b)
     
    +template<>
    void atomic_sub (double &a, double b)
     
    +template<typename _Tp1 , typename _Tp2 >
    bool operator!= (const DefaultAllocator< _Tp1 > &, const DefaultAllocator< _Tp2 > &)
     
    +template<typename _Tp1 , typename _Tp2 >
    bool operator== (const DefaultAllocator< _Tp1 > &, const DefaultAllocator< _Tp2 > &)
     
    +size_t estimate_pool_size (size_t send_message_size, size_t recv_message_size, size_t batch_size, size_t fnum, size_t thread_num)
     
    +int varint_length (uint64_t value)
     
    +InArchiveoperator<< (InArchive &arc, const VarintEncoder &encoder)
     
    +FixedInArchiveoperator<< (FixedInArchive &arc, const VarintEncoder &encoder)
     
    +OutArchiveoperator>> (OutArchive &arc, VarintDecoder &decoder)
     
    +template<typename T >
    InArchiveoperator<< (InArchive &arc, const DeltaVarintEncoder< T > &encoder)
     
    +template<typename T >
    FixedInArchiveoperator<< (FixedInArchive &arc, const DeltaVarintEncoder< T > &encoder)
     
    +template<typename T >
    OutArchiveoperator>> (OutArchive &arc, DeltaVarintDecoder< T > &decoder)
     
    +template<typename T >
    bool operator< (Vertex< T > const &lhs, Vertex< T > const &rhs)
     
    +template<typename T >
    bool operator== (Vertex< T > const &lhs, Vertex< T > const &rhs)
     
    +template<typename VID_T >
    InArchiveoperator<< (InArchive &in_archive, const DualVertexRange< VID_T > &range)
     
    + + + + + + + +

    +Variables

    +const int kCoordinatorRank = 0
     
    +const char kSerializationVertexMapFilename [] = "vertex_map.s"
     
    +const char kSerializationFilenameFormat [] = "%s/frag_%d.s"
     
    +

    Detailed Description

    +

    Copyright 2020 Alibaba Group Holding Limited.

    +

    Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0
    +

    Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

    +

    Copyright 2022 Alibaba Group Holding Limited.

    +

    Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0
    +

    Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

    +

    Copyright 2021 Alibaba Group Holding Limited.

    +

    Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

    http://www.apache.org/licenses/LICENSE-2.0
    +

    Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

    +

    NOLINT(legal/copyright)

    +

    The file utils/gcontainer.h is based on code from libcxx,

    +

    https://github.com/llvm-mirror/libcxx/blob/master/include/vector

    +

    which has the following license:

    +

    -*- C++ -*- ===---------------------------— vector -----------------------------—===//

    +

    Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions. See https://llvm.org/LICENSE.txt for license information. SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception

    +

    ===-------------------------------------------------------------------—===//

    +

    Typedef Documentation

    + +

    ◆ VertexVector

    + +
    +
    +
    +template<typename T >
    + + + + +
    using grape::VertexVector = typedef std::vector<Vertex<T> >
    +
    + +

    A discontinuous vertices collection representation. An increasing labeled(but no need to be continuous) vertices must be provided to construct the VertexVector.

    +
    Template Parameters
    + + +
    TVertex ID type.
    +
    +
    + +
    +
    +

    Enumeration Type Documentation

    + +

    ◆ MessageStrategy

    + +
    +
    + + + + + +
    + + + + +
    enum grape::MessageStrategy
    +
    +strong
    +
    + +

    MessageStrategy specifies the method of message passing between fragments.

    +

    Assume in an edgecut distributed graph, we have an edge a->b, with vertex a on fragment_1 and b on fragment_2, and an edge a<-c with c on f_2.

    +

    for fragment_1, a is an inner_vertex and b', c' is outer_vertexs.

    + + + + +
    Enumerator
    kAlongIncomingEdgeToOuterVertex 

    from a to b;

    +
    kAlongEdgeToOuterVertex 

    from c to a;

    +
    kSyncOnOuterVertex 

    from a to b, a to c;

    +
    + +
    +
    +

    Function Documentation

    + +

    ◆ atomic_add()

    + +
    +
    +
    +template<typename T >
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    void grape::atomic_add (T & a,
    b 
    )
    +
    +inline
    +
    + +

    Atomic add a value. Equavalent to:

    +
    a += b;
    +
    Template Parameters
    + + +
    TType of the operands.
    +
    +
    +
    Parameters
    + + + +
    aObject to process.
    bValue to add.
    +
    +
    + +
    +
    + +

    ◆ atomic_compare_and_swap()

    + +
    +
    +
    +template<typename T >
    + + + + + +
    + + + + + + + + + + + + + + + + + + + + + + + + +
    bool grape::atomic_compare_and_swap (T & val,
    old_val,
    new_val 
    )
    +
    +inline
    +
    + +

    Atomic compare and swap operation. Equavalent to:

    +
    if (val == old_val) {
    +
    val = new_val;
    +
    return true;
    +
    } else {
    +
    return false;
    +
    }
    +
    Template Parameters
    + + +
    TType of the operands.
    +
    +
    +
    Parameters
    + + + + +
    valObject to process.
    old_valOld value to check.
    new_valNew value to assign.
    +
    +
    +
    Returns
    Whether the value has been changed.
    + +
    +
    + +

    ◆ atomic_min()

    + +
    +
    +
    +template<typename T >
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    bool grape::atomic_min (T & a,
    b 
    )
    +
    +inline
    +
    + +

    Atomic compare and store the minimum value. Equavalent to:

    +
    if (a > b) {
    +
    a = b;
    +
    return true;
    +
    } else {
    +
    return false;
    +
    }
    +
    Template Parameters
    + + +
    TType of the operands.
    +
    +
    +
    Parameters
    + + + +
    aObject to process.
    bValue to compare.
    +
    +
    +
    Returns
    Whether the value has been changed.
    + +
    +
    + +

    ◆ atomic_sub()

    + +
    +
    +
    +template<typename T >
    + + + + + +
    + + + + + + + + + + + + + + + + + + +
    void grape::atomic_sub (T & a,
    b 
    )
    +
    +inline
    +
    + +

    Atomic sub a value. Equavalent to:

    +
    a -= b;
    +
    Template Parameters
    + + +
    TType of the operands.
    +
    +
    +
    Parameters
    + + + +
    aObject to process.
    bValue to sub.
    +
    +
    + +
    +
    + +

    ◆ DistinctSort()

    + +
    +
    +
    +template<typename T >
    + + + + + + + + +
    void grape::DistinctSort (std::vector< T > & vec)
    +
    + +

    sort the target vector and eliminate the duplicated elements.

    +
    Template Parameters
    + + +
    T
    +
    +
    +
    Parameters
    + + +
    vecto be sorted.
    +
    +
    + +
    +
    +
    + + + + diff --git a/namespacegrape_1_1batch__shuffle__message__manager__impl.html b/namespacegrape_1_1batch__shuffle__message__manager__impl.html new file mode 100644 index 00000000..385ad85b --- /dev/null +++ b/namespacegrape_1_1batch__shuffle__message__manager__impl.html @@ -0,0 +1,105 @@ + + + + + + + +libgrape-lite: grape::batch_shuffle_message_manager_impl Namespace Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::batch_shuffle_message_manager_impl Namespace Reference
    +
    +
    + +

    A kind of collective message manager. +More...

    + + + + + + + + + + + + + + +

    +Classes

    struct  IsRange
     
    struct  ShuffleInplace
     
    struct  PodShuffle
     
    struct  ArchiveShuffle
     
    class  PostProcessBase
     
    class  PostProcess
     
    +

    Detailed Description

    +

    A kind of collective message manager.

    +

    This message manager is designed for the scenario that all mirror vertices' state need to be override with their masters' state, e.g. PageRank.

    +

    After a round, message manager will encode the inner vertices' state of a vertex array for each other fragment.

    +

    When receive a batch of messages, message manager will update the state of outer vertices in a designated vertex array.

    +
    + + + + diff --git a/namespacemembers.html b/namespacemembers.html new file mode 100644 index 00000000..25d2cb0b --- /dev/null +++ b/namespacemembers.html @@ -0,0 +1,100 @@ + + + + + + + +libgrape-lite: Namespace Members + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + +
    + +
    +
    + + +
    + +
    + +
    +
    Here is a list of all documented namespace members with links to the namespaces they belong to:
      +
    • atomic_add() +: grape +
    • +
    • atomic_compare_and_swap() +: grape +
    • +
    • atomic_min() +: grape +
    • +
    • atomic_sub() +: grape +
    • +
    • DistinctSort() +: grape +
    • +
    • GetResultFilename() +: grape +
    • +
    • LoadStrategy +: grape +
    • +
    • MessageStrategy +: grape +
    • +
    • VertexVector +: grape +
    • +
    +
    + + + + diff --git a/namespacemembers_enum.html b/namespacemembers_enum.html new file mode 100644 index 00000000..762283ba --- /dev/null +++ b/namespacemembers_enum.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: Namespace Members + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + +
    + +
    +
    + + +
    + +
    + +
      +
    • LoadStrategy +: grape +
    • +
    • MessageStrategy +: grape +
    • +
    +
    + + + + diff --git a/namespacemembers_func.html b/namespacemembers_func.html new file mode 100644 index 00000000..252e9aed --- /dev/null +++ b/namespacemembers_func.html @@ -0,0 +1,91 @@ + + + + + + + +libgrape-lite: Namespace Members + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + +
    + +
    +
    + + +
    + +
    + +
      +
    • atomic_add() +: grape +
    • +
    • atomic_compare_and_swap() +: grape +
    • +
    • atomic_min() +: grape +
    • +
    • atomic_sub() +: grape +
    • +
    • DistinctSort() +: grape +
    • +
    • GetResultFilename() +: grape +
    • +
    +
    + + + + diff --git a/namespacemembers_type.html b/namespacemembers_type.html new file mode 100644 index 00000000..eb52895d --- /dev/null +++ b/namespacemembers_type.html @@ -0,0 +1,76 @@ + + + + + + + +libgrape-lite: Namespace Members + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + +
    + +
    +
    + + +
    + +
    + +
      +
    • VertexVector +: grape +
    • +
    +
    + + + + diff --git a/namespaces.html b/namespaces.html new file mode 100644 index 00000000..a3f2ea2b --- /dev/null +++ b/namespaces.html @@ -0,0 +1,324 @@ + + + + + + + +libgrape-lite: Namespace List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + +
    + +
    +
    + + +
    + +
    + +
    +
    +
    Namespace List
    +
    +
    +
    Here is a list of all documented namespaces with brief descriptions:
    +
    [detail level 1234]
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +
     Ncub
     Ngoogle
     Ngrape
     Nstd
    +
    +
    + + + + diff --git a/nav_f.png b/nav_f.png new file mode 100644 index 0000000000000000000000000000000000000000..72a58a529ed3a9ed6aa0c51a79cf207e026deee2 GIT binary patch literal 153 zcmeAS@N?(olHy`uVBq!ia0vp^j6iI`!2~2XGqLUlQVE_ejv*C{Z|{2ZH7M}7UYxc) zn!W8uqtnIQ>_z8U literal 0 HcmV?d00001 diff --git a/nav_g.png b/nav_g.png new file mode 100644 index 0000000000000000000000000000000000000000..2093a237a94f6c83e19ec6e5fd42f7ddabdafa81 GIT binary patch literal 95 zcmeAS@N?(olHy`uVBq!ia0vp^j6lrB!3HFm1ilyoDK$?Q$B+ufw|5PB85lU25BhtE tr?otc=hd~V+ws&_A@j8Fiv!KF$B+ufw|5=67#uj90@pIL wZ=Q8~_Ju`#59=RjDrmm`tMD@M=!-l18IR?&vFVdQ&MBb@0HFXL1|%O$WD@{VPM$7~Ar*{o?;hlAFyLXmaDC0y znK1_#cQqJWPES%4Uujug^TE?jMft$}Eq^WaR~)%f)vSNs&gek&x%A9X9sM + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/all_0.js b/search/all_0.js new file mode 100644 index 00000000..5c04e098 --- /dev/null +++ b/search/all_0.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['_5f_5farray_5fbase_0',['__Array_base',['../structgrape_1_1Array_1_1____Array__base.html',1,'grape::Array< _Tp, _Alloc >::__Array_base'],['../structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1____Array__base.html',1,'grape::Array< EmptyType, _Alloc >::__Array_base']]], + ['_5fconstructtransaction_1',['_ConstructTransaction',['../structgrape_1_1Array_1_1__ConstructTransaction.html',1,'grape::Array']]] +]; diff --git a/search/all_1.html b/search/all_1.html new file mode 100644 index 00000000..9f80e904 --- /dev/null +++ b/search/all_1.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/all_1.js b/search/all_1.js new file mode 100644 index 00000000..a38c1206 --- /dev/null +++ b/search/all_1.js @@ -0,0 +1,42 @@ +var searchData= +[ + ['add_5fconst_5fref_2',['add_const_ref',['../structgrape_1_1add__const__ref.html',1,'grape']]], + ['add_5fconst_5fref_3c_20const_20t_20_26_20_3e_3',['add_const_ref< const T & >',['../structgrape_1_1add__const__ref_3_01const_01T_01_6_01_4.html',1,'grape']]], + ['add_5fconst_5fref_3c_20t_20_26_20_3e_4',['add_const_ref< T & >',['../structgrape_1_1add__const__ref_3_01T_01_6_01_4.html',1,'grape']]], + ['add_5fref_5',['add_ref',['../structgrape_1_1add__ref.html',1,'grape']]], + ['add_5fref_3c_20t_20_26_20_3e_6',['add_ref< T & >',['../structgrape_1_1add__ref_3_01T_01_6_01_4.html',1,'grape']]], + ['adjlist_7',['AdjList',['../classgrape_1_1AdjList.html',1,'grape::AdjList< VID_T, EDATA_T >'],['../structgrape_1_1mutable__csr__impl_1_1AdjList.html',1,'grape::mutable_csr_impl::AdjList< NBR_T >']]], + ['ap_5fevent_8',['ap_event',['../structgrape_1_1AutoParallelMessageManager_1_1ap__event.html',1,'grape::AutoParallelMessageManager']]], + ['archiveshuffle_9',['ArchiveShuffle',['../structgrape_1_1batch__shuffle__message__manager__impl_1_1ArchiveShuffle.html',1,'grape::batch_shuffle_message_manager_impl']]], + ['array_10',['Array',['../classgrape_1_1Array.html',1,'grape']]], + ['array_3c_20emptytype_2c_20_5falloc_20_3e_11',['Array< EmptyType, _Alloc >',['../classgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4.html',1,'grape']]], + ['array_3c_20nbr_5ft_20_2a_2c_20grape_3a_3adefaultallocator_3c_20nbr_5ft_20_2a_20_3e_20_3e_12',['Array< nbr_t *, grape::DefaultAllocator< nbr_t * > >',['../classgrape_1_1Array.html',1,'grape']]], + ['array_3c_20nbr_5ft_2c_20grape_3a_3adefaultallocator_3c_20nbr_5ft_20_3e_20_3e_13',['Array< nbr_t, grape::DefaultAllocator< nbr_t > >',['../classgrape_1_1Array.html',1,'grape']]], + ['array_3c_20t_2c_20allocator_3c_20t_20_3e_20_3e_14',['Array< T, Allocator< T > >',['../classgrape_1_1Array.html',1,'grape']]], + ['array_3c_20t_2c_20grape_3a_3aallocator_3c_20t_20_3e_20_3e_15',['Array< T, grape::Allocator< T > >',['../classgrape_1_1Array.html',1,'grape']]], + ['array_3c_20t_2c_20grape_3a_3adefaultallocator_3c_20t_20_3e_20_3e_16',['Array< T, grape::DefaultAllocator< T > >',['../classgrape_1_1Array.html',1,'grape']]], + ['array_3c_20vdata_5ft_2c_20grape_3a_3adefaultallocator_3c_20vdata_5ft_20_3e_20_3e_17',['Array< VDATA_T, grape::DefaultAllocator< VDATA_T > >',['../classgrape_1_1Array.html',1,'grape']]], + ['array_3c_20vid_5ft_2c_20grape_3a_3adefaultallocator_3c_20vid_5ft_20_3e_20_3e_18',['Array< VID_T, grape::DefaultAllocator< VID_T > >',['../classgrape_1_1Array.html',1,'grape']]], + ['arrayview_19',['ArrayView',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20char_20_3e_20',['ArrayView< char >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20fid_5ft_20_2a_20_3e_21',['ArrayView< fid_t * >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20fid_5ft_20_3e_22',['ArrayView< fid_t >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20grape_3a_3acuda_3a_3aarrayview_3c_20grape_3a_3anbr_20_2a_20_3e_20_3e_23',['ArrayView< grape::cuda::ArrayView< grape::Nbr * > >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20grape_3a_3acuda_3a_3aarrayview_3c_20vertex_3c_20vid_5ft_20_3e_20_3e_20_3e_24',['ArrayView< grape::cuda::ArrayView< Vertex< VID_T > > >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20grape_3a_3acuda_3a_3adev_3a_3ainarchive_20_3e_25',['ArrayView< grape::cuda::dev::InArchive >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20grape_3a_3aedge_20_3e_26',['ArrayView< grape::Edge >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20grape_3a_3anbr_20_2a_20_3e_27',['ArrayView< grape::Nbr * >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20grape_3a_3anbr_20_3e_28',['ArrayView< grape::Nbr >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20uint32_5ft_20_3e_29',['ArrayView< uint32_t >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20uint64_5ft_20_3e_30',['ArrayView< uint64_t >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20vdata_5ft_20_3e_31',['ArrayView< VDATA_T >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20vertexrange_3c_20vid_5ft_20_3e_20_3e_32',['ArrayView< VertexRange< VID_T > >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20vid_5ft_20_3e_33',['ArrayView< VID_T >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['atomic_5fadd_34',['atomic_add',['../namespacegrape.html#a73780b29e49190720decbb46bf5e0ba2',1,'grape']]], + ['atomic_5fcompare_5fand_5fswap_35',['atomic_compare_and_swap',['../namespacegrape.html#a59e16a262c532c450a11b6b191012b44',1,'grape']]], + ['atomic_5fmin_36',['atomic_min',['../namespacegrape.html#a4171c6f370c8f38744232ab83f8c125b',1,'grape']]], + ['atomic_5fops_2eh_37',['atomic_ops.h',['../atomic__ops_8h.html',1,'']]], + ['atomic_5fsub_38',['atomic_sub',['../namespacegrape.html#aa0c4442baf413c7820eaa4297d4aa4f3',1,'grape']]], + ['autoappbase_39',['AutoAppBase',['../classgrape_1_1AutoAppBase.html',1,'grape']]], + ['autoparallelmessagemanager_40',['AutoParallelMessageManager',['../classgrape_1_1AutoParallelMessageManager.html',1,'grape']]] +]; diff --git a/search/all_10.html b/search/all_10.html new file mode 100644 index 00000000..3bf11961 --- /dev/null +++ b/search/all_10.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/all_10.js b/search/all_10.js new file mode 100644 index 00000000..a7cdb0e1 --- /dev/null +++ b/search/all_10.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['queue_266',['Queue',['../classgrape_1_1cuda_1_1dev_1_1Queue.html',1,'grape::cuda::dev::Queue< T, SIZE_T >'],['../classgrape_1_1cuda_1_1Queue.html',1,'grape::cuda::Queue< T, SIZE_T >']]], + ['queue_3c_20t_2c_20uint32_5ft_20_3e_267',['Queue< T, uint32_t >',['../classgrape_1_1cuda_1_1dev_1_1Queue_3_01T_00_01uint32__t_01_4.html',1,'grape::cuda::dev']]], + ['queue_3c_20t_2c_20uint64_5ft_20_3e_268',['Queue< T, uint64_t >',['../classgrape_1_1cuda_1_1dev_1_1Queue_3_01T_00_01uint64__t_01_4.html',1,'grape::cuda::dev']]] +]; diff --git a/search/all_11.html b/search/all_11.html new file mode 100644 index 00000000..c9f79d28 --- /dev/null +++ b/search/all_11.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/all_11.js b/search/all_11.js new file mode 100644 index 00000000..b9c70548 --- /dev/null +++ b/search/all_11.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['rangemarker_269',['RangeMarker',['../structgrape_1_1cuda_1_1RangeMarker.html',1,'grape::cuda']]], + ['refbitset_270',['RefBitset',['../classgrape_1_1RefBitset.html',1,'grape']]], + ['registersyncbuffer_271',['RegisterSyncBuffer',['../classgrape_1_1AutoParallelMessageManager.html#a98a6d07ea27f611f9d071b417e124de8',1,'grape::AutoParallelMessageManager']]] +]; diff --git a/search/all_12.html b/search/all_12.html new file mode 100644 index 00000000..ab934722 --- /dev/null +++ b/search/all_12.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/all_12.js b/search/all_12.js new file mode 100644 index 00000000..869903bb --- /dev/null +++ b/search/all_12.js @@ -0,0 +1,48 @@ +var searchData= +[ + ['segmentedpartitioner_272',['SegmentedPartitioner',['../classgrape_1_1SegmentedPartitioner.html',1,'grape']]], + ['segmentedpartitioner_3c_20std_3a_3astring_20_3e_273',['SegmentedPartitioner< std::string >',['../classgrape_1_1SegmentedPartitioner_3_01std_1_1string_01_4.html',1,'grape']]], + ['sendmicrobufferbyfid_274',['SendMicroBufferByFid',['../classgrape_1_1ParallelMessageManagerOpt.html#a3c2e0c0177be87ead3ce70a5d5332378',1,'grape::ParallelMessageManagerOpt']]], + ['sendmsgthroughedges_275',['SendMsgThroughEdges',['../classgrape_1_1ThreadLocalMessageBufferOpt.html#a1fd1ffc7631d8b2b85c567e5fb196f95',1,'grape::ThreadLocalMessageBufferOpt::SendMsgThroughEdges()'],['../classgrape_1_1ThreadLocalMessageBuffer.html#a30a512147d98eba1cd947484fc941e74',1,'grape::ThreadLocalMessageBuffer::SendMsgThroughEdges()'],['../classgrape_1_1ParallelMessageManagerOpt.html#a9e96edbf018af253077f110fd7781d5d',1,'grape::ParallelMessageManagerOpt::SendMsgThroughEdges()'],['../classgrape_1_1ParallelMessageManager.html#aa16928487d03ed7f1ed8dad7b4f1c0cb',1,'grape::ParallelMessageManager::SendMsgThroughEdges()'],['../classgrape_1_1DefaultMessageManager.html#ab8e620279886b6a2fef63592df48e9b5',1,'grape::DefaultMessageManager::SendMsgThroughEdges()']]], + ['sendmsgthroughiedges_276',['SendMsgThroughIEdges',['../classgrape_1_1ThreadLocalMessageBufferOpt.html#a810864a22f4d6c7fe02109532bccc959',1,'grape::ThreadLocalMessageBufferOpt::SendMsgThroughIEdges()'],['../classgrape_1_1ThreadLocalMessageBuffer.html#ab446d794ec63b392ac2b85689a383104',1,'grape::ThreadLocalMessageBuffer::SendMsgThroughIEdges()'],['../classgrape_1_1ParallelMessageManagerOpt.html#a005de43c811e01ae0d519792ea45405b',1,'grape::ParallelMessageManagerOpt::SendMsgThroughIEdges()'],['../classgrape_1_1ParallelMessageManager.html#a56b201864684fd0cad31a24265e1d931',1,'grape::ParallelMessageManager::SendMsgThroughIEdges()'],['../classgrape_1_1DefaultMessageManager.html#a7e76e5f06b8cdb8fe4316a67274ea467',1,'grape::DefaultMessageManager::SendMsgThroughIEdges()']]], + ['sendmsgthroughoedges_277',['SendMsgThroughOEdges',['../classgrape_1_1ThreadLocalMessageBuffer.html#a7b9fa800cd33206ed8c017f7ce45f9c0',1,'grape::ThreadLocalMessageBuffer::SendMsgThroughOEdges()'],['../classgrape_1_1DefaultMessageManager.html#a1bdccdc457667ab0f3f8a1e4f9497635',1,'grape::DefaultMessageManager::SendMsgThroughOEdges()'],['../classgrape_1_1ParallelMessageManager.html#a5a4a791b20662e9e055bf130d0122e32',1,'grape::ParallelMessageManager::SendMsgThroughOEdges()'],['../classgrape_1_1ParallelMessageManagerOpt.html#a55bee5e7fdc260bf7f853a6ec5cb4ac8',1,'grape::ParallelMessageManagerOpt::SendMsgThroughOEdges()'],['../classgrape_1_1ThreadLocalMessageBufferOpt.html#a3cef253880f7011c4b067d0b30cfc8fe',1,'grape::ThreadLocalMessageBufferOpt::SendMsgThroughOEdges()']]], + ['sendrawmsgbyfid_278',['SendRawMsgByFid',['../classgrape_1_1ParallelMessageManager.html#a5485cde22e9f324a5d938751e801e076',1,'grape::ParallelMessageManager']]], + ['sendtofragment_279',['SendToFragment',['../classgrape_1_1ThreadLocalMessageBufferOpt.html#aadf1ceecc4d897a104a28482176a40f9',1,'grape::ThreadLocalMessageBufferOpt::SendToFragment()'],['../classgrape_1_1ThreadLocalMessageBuffer.html#ac6538a81c44cdc708ac9086973ae612c',1,'grape::ThreadLocalMessageBuffer::SendToFragment()'],['../classgrape_1_1ParallelMessageManagerOpt.html#a17b671af569eb2b14ee3f3fbc50f8ff8',1,'grape::ParallelMessageManagerOpt::SendToFragment()'],['../classgrape_1_1ParallelMessageManager.html#a16341cadb25c2931323941ad3cab70fa',1,'grape::ParallelMessageManager::SendToFragment()'],['../classgrape_1_1DefaultMessageManager.html#ad38bf6d97fc8157ffbb1e3901560330f',1,'grape::DefaultMessageManager::SendToFragment()']]], + ['serializedsize_280',['SerializedSize',['../structgrape_1_1SerializedSize.html',1,'grape']]], + ['serializedsize_3c_20deltavarintencoder_3c_20t_20_3e_20_3e_281',['SerializedSize< DeltaVarintEncoder< T > >',['../structgrape_1_1SerializedSize_3_01DeltaVarintEncoder_3_01T_01_4_01_4.html',1,'grape']]], + ['serializedsize_3c_20emptytype_20_3e_282',['SerializedSize< EmptyType >',['../structgrape_1_1SerializedSize_3_01EmptyType_01_4.html',1,'grape']]], + ['serializedsize_3c_20nonstd_3a_3astring_5fview_20_3e_283',['SerializedSize< nonstd::string_view >',['../structgrape_1_1SerializedSize_3_01nonstd_1_1string__view_01_4.html',1,'grape']]], + ['serializedsize_3c_20std_3a_3astring_20_3e_284',['SerializedSize< std::string >',['../structgrape_1_1SerializedSize_3_01std_1_1string_01_4.html',1,'grape']]], + ['serializedsize_3c_20varintencoder_20_3e_285',['SerializedSize< VarintEncoder >',['../structgrape_1_1SerializedSize_3_01VarintEncoder_01_4.html',1,'grape']]], + ['setdata_286',['SetData',['../classgrape_1_1ImmutableEdgecutFragment.html#aacabcb3e59806c655337134f67411dc1',1,'grape::ImmutableEdgecutFragment::SetData()'],['../classgrape_1_1FragmentBase.html#a8c8c2bcea79bd700fd60d8a28b5114aa',1,'grape::FragmentBase::SetData()']]], + ['setlimit_287',['SetLimit',['../classgrape_1_1BlockingQueue.html#ae3aa98f186ae4a7928f23a99ac54f357',1,'grape::BlockingQueue']]], + ['setpartialread_288',['SetPartialRead',['../classgrape_1_1LocalIOAdaptor.html#a231f334369b0dd0e7f6fcfda9fa576d9',1,'grape::LocalIOAdaptor::SetPartialRead()'],['../classgrape_1_1IOAdaptorBase.html#a36c5eaf246ca8bb5bfe7bf1f400cc6e3',1,'grape::IOAdaptorBase::SetPartialRead()']]], + ['setproducernum_289',['SetProducerNum',['../classgrape_1_1BlockingQueue.html#ae165a34da9dd1cd99bb8714ef826b517',1,'grape::BlockingQueue']]], + ['sharedarray_290',['SharedArray',['../classgrape_1_1cuda_1_1SharedArray.html',1,'grape::cuda']]], + ['sharedarray_3c_20uint32_5ft_20_3e_291',['SharedArray< uint32_t >',['../classgrape_1_1cuda_1_1SharedArray.html',1,'grape::cuda']]], + ['sharedvalue_292',['SharedValue',['../classgrape_1_1cuda_1_1SharedValue.html',1,'grape::cuda']]], + ['sharedvalue_3c_20size_5ft_20_3e_293',['SharedValue< SIZE_T >',['../classgrape_1_1cuda_1_1SharedValue.html',1,'grape::cuda']]], + ['sharedvalue_3c_20uint32_5ft_20_3e_294',['SharedValue< uint32_t >',['../classgrape_1_1cuda_1_1SharedValue.html',1,'grape::cuda']]], + ['shmhashtable_295',['ShmHashTable',['../classgrape_1_1cuda_1_1dev_1_1ShmHashTable.html',1,'grape::cuda::dev']]], + ['shufflebuffer_296',['ShuffleBuffer',['../structgrape_1_1ShuffleBuffer.html',1,'grape']]], + ['shufflebuffer_3c_20first_20_3e_297',['ShuffleBuffer< First >',['../structgrape_1_1ShuffleBuffer.html',1,'grape']]], + ['shufflebuffer_3c_20nonstd_3a_3astring_5fview_20_3e_298',['ShuffleBuffer< nonstd::string_view >',['../structgrape_1_1ShuffleBuffer_3_01nonstd_1_1string__view_01_4.html',1,'grape']]], + ['shufflebuffertuple_299',['ShuffleBufferTuple',['../structgrape_1_1ShuffleBufferTuple.html',1,'grape']]], + ['shufflebuffertuple_3c_20first_20_3e_300',['ShuffleBufferTuple< First >',['../structgrape_1_1ShuffleBufferTuple_3_01First_01_4.html',1,'grape']]], + ['shufflebuffertuple_3c_20types_2e_2e_2e_20_3e_301',['ShuffleBufferTuple< TYPES... >',['../structgrape_1_1ShuffleBufferTuple.html',1,'grape']]], + ['shufflebuffertuple_5felement_302',['ShuffleBufferTuple_element',['../structgrape_1_1ShuffleBufferTuple__element.html',1,'grape']]], + ['shufflebuffertuple_5felement_3c_200_2c_20shufflebuffertuple_3c_20first_2c_20rest_2e_2e_2e_20_3e_20_3e_303',['ShuffleBufferTuple_element< 0, ShuffleBufferTuple< First, Rest... > >',['../structgrape_1_1ShuffleBufferTuple__element_3_010_00_01ShuffleBufferTuple_3_01First_00_01Rest_8_8_8_01_4_01_4.html',1,'grape']]], + ['shufflebuffertuple_5felement_3c_20index_20_2d_201_2c_20shufflebuffertuple_3c_20tail_2e_2e_2e_20_3e_20_3e_304',['ShuffleBufferTuple_element< index - 1, ShuffleBufferTuple< Tail... > >',['../structgrape_1_1ShuffleBufferTuple__element.html',1,'grape']]], + ['shufflebuffertuple_5felement_3c_20index_2c_20shufflebuffertuple_3c_20first_2c_20tail_2e_2e_2e_20_3e_20_3e_305',['ShuffleBufferTuple_element< index, ShuffleBufferTuple< First, Tail... > >',['../structgrape_1_1ShuffleBufferTuple__element_3_01index_00_01ShuffleBufferTuple_3_01First_00_01Tail_8_8_8_01_4_01_4.html',1,'grape']]], + ['shufflein_306',['ShuffleIn',['../classgrape_1_1ShuffleIn.html',1,'grape']]], + ['shuffleinplace_307',['ShuffleInplace',['../structgrape_1_1batch__shuffle__message__manager__impl_1_1ShuffleInplace.html',1,'grape::batch_shuffle_message_manager_impl']]], + ['shuffleout_308',['ShuffleOut',['../classgrape_1_1ShuffleOut.html',1,'grape']]], + ['spinlock_309',['SpinLock',['../classgrape_1_1SpinLock.html',1,'grape']]], + ['start_310',['Start',['../classgrape_1_1DefaultMessageManager.html#a029b7d75423074c7767ac2bcee0e8a53',1,'grape::DefaultMessageManager::Start()'],['../classgrape_1_1AutoParallelMessageManager.html#a029b7d75423074c7767ac2bcee0e8a53',1,'grape::AutoParallelMessageManager::Start()'],['../classgrape_1_1MessageManagerBase.html#a293a57c2d7444b749631e99169419687',1,'grape::MessageManagerBase::Start()'],['../classgrape_1_1ParallelMessageManager.html#a15b6a113a264c7bea57f140400d3a2d1',1,'grape::ParallelMessageManager::Start()'],['../classgrape_1_1ParallelMessageManagerOpt.html#aa5cdfdb4f895fe9824edffc5132110bc',1,'grape::ParallelMessageManagerOpt::Start()'],['../classgrape_1_1BatchShuffleMessageManager.html#a8d74335c561ebc9f6eee5f64b3f24a81',1,'grape::BatchShuffleMessageManager::Start()'],['../classgrape_1_1cuda_1_1GPUMessageManager.html#abe1e4c466f1e35206c478bcfd5c5fe21',1,'grape::cuda::GPUMessageManager::Start()'],['../classgrape_1_1cuda_1_1BatchShuffleMessageManager.html#a8557cdb8bebd00a789306c2199f32f41',1,'grape::cuda::BatchShuffleMessageManager::Start()']]], + ['startaround_311',['StartARound',['../classgrape_1_1BatchShuffleMessageManager.html#afbd95f8373d24b0cfba877b15bcbca59',1,'grape::BatchShuffleMessageManager::StartARound()'],['../classgrape_1_1ParallelMessageManager.html#a36783315ecf9a1c4de73fda2e1ee29d0',1,'grape::ParallelMessageManager::StartARound()'],['../classgrape_1_1AutoParallelMessageManager.html#af3365954b4bb2dc9aafaae7586c04b9e',1,'grape::AutoParallelMessageManager::StartARound()'],['../classgrape_1_1DefaultMessageManager.html#a0657f1253391ba4400bba65ab59eddbe',1,'grape::DefaultMessageManager::StartARound()'],['../classgrape_1_1MessageManagerBase.html#abb9b409e119563c99b5332e72441d92c',1,'grape::MessageManagerBase::StartARound()'],['../classgrape_1_1cuda_1_1GPUMessageManager.html#adf660c49d4e58431d1b01056939062d6',1,'grape::cuda::GPUMessageManager::StartARound()'],['../classgrape_1_1cuda_1_1BatchShuffleMessageManager.html#a1e82809e68d4d61125e2254af4a66a65',1,'grape::cuda::BatchShuffleMessageManager::StartARound()'],['../classgrape_1_1ParallelMessageManagerOpt.html#af4302cf8daea09704f3c783c68aa8dfb',1,'grape::ParallelMessageManagerOpt::StartARound()']]], + ['stream_312',['Stream',['../classgrape_1_1cuda_1_1Stream.html',1,'grape::cuda']]], + ['stringviewvector_313',['StringViewVector',['../classgrape_1_1StringViewVector.html',1,'grape']]], + ['syncbuffer_314',['SyncBuffer',['../classgrape_1_1SyncBuffer.html',1,'grape']]], + ['syncinnervertices_315',['SyncInnerVertices',['../classgrape_1_1cuda_1_1BatchShuffleMessageManager.html#a300113cd3ec6510c450376f33645ee31',1,'grape::cuda::BatchShuffleMessageManager::SyncInnerVertices()'],['../classgrape_1_1BatchShuffleMessageManager.html#ae4f222afd9d97ce31b92223b020bd60b',1,'grape::BatchShuffleMessageManager::SyncInnerVertices()']]], + ['syncstateonoutervertex_316',['SyncStateOnOuterVertex',['../classgrape_1_1DefaultMessageManager.html#a7c8da50cccc89816e70cfd00a6ef2873',1,'grape::DefaultMessageManager::SyncStateOnOuterVertex()'],['../classgrape_1_1ParallelMessageManager.html#a0bf7dafe5e735d1ef5dca8d89287f7c7',1,'grape::ParallelMessageManager::SyncStateOnOuterVertex()'],['../classgrape_1_1ParallelMessageManagerOpt.html#ad82a801e9f3d9410cc605e28f08aa043',1,'grape::ParallelMessageManagerOpt::SyncStateOnOuterVertex()'],['../classgrape_1_1ThreadLocalMessageBuffer.html#a14e47c1d3846049c40bcca76bb23c639',1,'grape::ThreadLocalMessageBuffer::SyncStateOnOuterVertex()'],['../classgrape_1_1ThreadLocalMessageBufferOpt.html#a56ed9eade581266dd2b2f35143ea6792',1,'grape::ThreadLocalMessageBufferOpt::SyncStateOnOuterVertex()']]] +]; diff --git a/search/all_13.html b/search/all_13.html new file mode 100644 index 00000000..51172c2f --- /dev/null +++ b/search/all_13.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/all_13.js b/search/all_13.js new file mode 100644 index 00000000..9333dfbd --- /dev/null +++ b/search/all_13.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['tb_5fnp_317',['tb_np',['../structgrape_1_1cuda_1_1tb__np.html',1,'grape::cuda']]], + ['terminateinfo_318',['TerminateInfo',['../structgrape_1_1TerminateInfo.html',1,'grape']]], + ['threadlocalmessagebuffer_319',['ThreadLocalMessageBuffer',['../classgrape_1_1ThreadLocalMessageBuffer.html',1,'grape']]], + ['threadlocalmessagebufferopt_320',['ThreadLocalMessageBufferOpt',['../classgrape_1_1ThreadLocalMessageBufferOpt.html',1,'grape']]], + ['threadpool_321',['ThreadPool',['../classThreadPool.html',1,'']]], + ['toterminate_322',['ToTerminate',['../classgrape_1_1cuda_1_1BatchShuffleMessageManager.html#a308b77585f5542250ed8e9955fb209d6',1,'grape::cuda::BatchShuffleMessageManager::ToTerminate()'],['../classgrape_1_1cuda_1_1GPUMessageManager.html#aeebed0f26040dbe5ca29e3d80ea63d31',1,'grape::cuda::GPUMessageManager::ToTerminate()'],['../classgrape_1_1BatchShuffleMessageManager.html#a1f6babcaa74e62f2633f0cc164d7ef22',1,'grape::BatchShuffleMessageManager::ToTerminate()'],['../classgrape_1_1DefaultMessageManager.html#a3783d058df54533c6d5a5ec40fa03af6',1,'grape::DefaultMessageManager::ToTerminate()'],['../classgrape_1_1MessageManagerBase.html#a07b176b67cf9c664202dc6bd2f817df1',1,'grape::MessageManagerBase::ToTerminate()'],['../classgrape_1_1ParallelMessageManager.html#a97c686680d164c72ced862f8077c8fa1',1,'grape::ParallelMessageManager::ToTerminate()'],['../classgrape_1_1ParallelMessageManagerOpt.html#a5e52d93d2ec7689f3b64e4b1d55f7443',1,'grape::ParallelMessageManagerOpt::ToTerminate()'],['../classgrape_1_1AutoParallelMessageManager.html#a3783d058df54533c6d5a5ec40fa03af6',1,'grape::AutoParallelMessageManager::ToTerminate()']]], + ['traits_3c_20grape_3a_3avertex_3c_20t_20_3e_20_3e_323',['Traits< grape::Vertex< T > >',['../structcub_1_1Traits_3_01grape_1_1Vertex_3_01T_01_4_01_4.html',1,'cub']]], + ['tsvlineparser_324',['TSVLineParser',['../classgrape_1_1TSVLineParser.html',1,'grape']]], + ['tsvlineparser_3c_20typename_20frag_5ft_3a_3aoid_5ft_2c_20typename_20frag_5ft_3a_3avdata_5ft_2c_20typename_20frag_5ft_3a_3aedata_5ft_20_3e_325',['TSVLineParser< typename FRAG_T::oid_t, typename FRAG_T::vdata_t, typename FRAG_T::edata_t >',['../classgrape_1_1TSVLineParser.html',1,'grape']]] +]; diff --git a/search/all_14.html b/search/all_14.html new file mode 100644 index 00000000..afecf563 --- /dev/null +++ b/search/all_14.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/all_14.js b/search/all_14.js new file mode 100644 index 00000000..db24c390 --- /dev/null +++ b/search/all_14.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['updateoutervertices_326',['UpdateOuterVertices',['../classgrape_1_1BatchShuffleMessageManager.html#a70e4e9f99f190e90dfcbc47888607f87',1,'grape::BatchShuffleMessageManager']]], + ['updatepartialoutervertices_327',['UpdatePartialOuterVertices',['../classgrape_1_1BatchShuffleMessageManager.html#aba3cf26d43d307e41ec8058f39c9fcf7',1,'grape::BatchShuffleMessageManager']]] +]; diff --git a/search/all_15.html b/search/all_15.html new file mode 100644 index 00000000..69f382b3 --- /dev/null +++ b/search/all_15.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/all_15.js b/search/all_15.js new file mode 100644 index 00000000..80d932d7 --- /dev/null +++ b/search/all_15.js @@ -0,0 +1,29 @@ +var searchData= +[ + ['varintdecoder_328',['VarintDecoder',['../classgrape_1_1VarintDecoder.html',1,'grape']]], + ['varintencoder_329',['VarintEncoder',['../classgrape_1_1VarintEncoder.html',1,'grape']]], + ['varintutil_330',['VarintUtil',['../structgrape_1_1VarintUtil.html',1,'grape']]], + ['varintutil_3c_20uint32_5ft_20_3e_331',['VarintUtil< uint32_t >',['../structgrape_1_1VarintUtil_3_01uint32__t_01_4.html',1,'grape']]], + ['varintutil_3c_20uint64_5ft_20_3e_332',['VarintUtil< uint64_t >',['../structgrape_1_1VarintUtil_3_01uint64__t_01_4.html',1,'grape']]], + ['vertex_333',['Vertex',['../structgrape_1_1internal_1_1Vertex.html',1,'grape::internal::Vertex< VID_T, VDATA_T >'],['../classgrape_1_1Vertex.html',1,'grape::Vertex< T >']]], + ['vertex2gid_334',['Vertex2Gid',['../classgrape_1_1EdgecutFragmentBase.html#a6ab0f96d2f1a8275853da579a8c8ac6e',1,'grape::EdgecutFragmentBase::Vertex2Gid()'],['../classgrape_1_1FragmentBase.html#ab56a1bc3f0d825897696f3541a3c2080',1,'grape::FragmentBase::Vertex2Gid()']]], + ['vertex_3c_20vid_5ft_20_3e_335',['Vertex< VID_T >',['../classgrape_1_1Vertex.html',1,'grape']]], + ['vertex_3c_20vid_5ft_2c_20emptytype_20_3e_336',['Vertex< VID_T, EmptyType >',['../structgrape_1_1internal_1_1Vertex_3_01VID__T_00_01EmptyType_01_4.html',1,'grape::internal']]], + ['vertex_3c_20vid_5ft_2c_20grape_3a_3aemptytype_20_3e_337',['Vertex< VID_T, grape::EmptyType >',['../structgrape_1_1internal_1_1Vertex.html',1,'grape::internal']]], + ['vertexarray_338',['VertexArray',['../classgrape_1_1cuda_1_1dev_1_1VertexArray.html',1,'grape::cuda::dev::VertexArray< T, VID_T >'],['../classgrape_1_1cuda_1_1VertexArray.html',1,'grape::cuda::VertexArray< T, VID_T >'],['../classgrape_1_1VertexArray.html',1,'grape::VertexArray< VERTEX_SET_T, T >']]], + ['vertexarray_3c_20dualvertexrange_3c_20vid_5ft_20_3e_2c_20t_20_3e_339',['VertexArray< DualVertexRange< VID_T >, T >',['../classgrape_1_1VertexArray_3_01DualVertexRange_3_01VID__T_01_4_00_01T_01_4.html',1,'grape']]], + ['vertexarray_3c_20grape_3a_3avertexrange_3c_20vid_5ft_20_3e_2c_20t_20_3e_340',['VertexArray< grape::VertexRange< VID_T >, T >',['../classgrape_1_1VertexArray.html',1,'grape']]], + ['vertexarray_3c_20inner_5fvertices_5ft_2c_20grape_3a_3anbr_20_2a_20_3e_341',['VertexArray< inner_vertices_t, grape::Nbr * >',['../classgrape_1_1VertexArray.html',1,'grape']]], + ['vertexarray_3c_20vertex_5fset_5ft_2c_20bool_20_3e_342',['VertexArray< VERTEX_SET_T, bool >',['../classgrape_1_1VertexArray.html',1,'grape']]], + ['vertexarray_3c_20vertexrange_3c_20vid_5ft_20_3e_2c_20t_20_3e_343',['VertexArray< VertexRange< VID_T >, T >',['../classgrape_1_1VertexArray_3_01VertexRange_3_01VID__T_01_4_00_01T_01_4.html',1,'grape']]], + ['vertexdatacontext_344',['VertexDataContext',['../classgrape_1_1VertexDataContext.html',1,'grape']]], + ['vertexmapbase_345',['VertexMapBase',['../classgrape_1_1VertexMapBase.html',1,'grape']]], + ['vertexmapbase_3c_20oid_5ft_2c_20vid_5ft_2c_20hashpartitioner_3c_20oid_5ft_20_3e_20_3e_346',['VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >',['../classgrape_1_1VertexMapBase.html',1,'grape']]], + ['vertexmetadata_347',['VertexMetadata',['../structgrape_1_1cuda_1_1VertexMetadata.html',1,'grape::cuda']]], + ['vertexmetadata_3c_20vid_5ft_2c_20grape_3a_3aemptytype_20_3e_348',['VertexMetadata< VID_T, grape::EmptyType >',['../structgrape_1_1cuda_1_1VertexMetadata_3_01VID__T_00_01grape_1_1EmptyType_01_4.html',1,'grape::cuda']]], + ['vertexrange_349',['VertexRange',['../classgrape_1_1VertexRange.html',1,'grape']]], + ['vertexrange_3c_20vid_5ft_20_3e_350',['VertexRange< VID_T >',['../classgrape_1_1VertexRange.html',1,'grape']]], + ['vertexvector_351',['VertexVector',['../namespacegrape.html#afcee21302c3f265f2d504a6faf4973f5',1,'grape']]], + ['vertices_352',['Vertices',['../classgrape_1_1FragmentBase.html#ac1619f199de0313788d19dfb5c80f6a3',1,'grape::FragmentBase']]], + ['voidcontext_353',['VoidContext',['../classgrape_1_1VoidContext.html',1,'grape']]] +]; diff --git a/search/all_16.html b/search/all_16.html new file mode 100644 index 00000000..b19867ad --- /dev/null +++ b/search/all_16.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/all_16.js b/search/all_16.js new file mode 100644 index 00000000..152bd4a3 --- /dev/null +++ b/search/all_16.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['warp_5fnp_354',['warp_np',['../structgrape_1_1cuda_1_1warp__np.html',1,'grape::cuda']]], + ['worker_355',['Worker',['../classgrape_1_1Worker.html',1,'grape']]], + ['workeriterator_356',['WorkerIterator',['../classgrape_1_1sync__comm_1_1WorkerIterator.html',1,'grape::sync_comm']]], + ['worksourcearray_357',['WorkSourceArray',['../structgrape_1_1cuda_1_1WorkSourceArray.html',1,'grape::cuda']]], + ['worksourcerange_358',['WorkSourceRange',['../structgrape_1_1cuda_1_1WorkSourceRange.html',1,'grape::cuda']]] +]; diff --git a/search/all_2.html b/search/all_2.html new file mode 100644 index 00000000..02cfffc2 --- /dev/null +++ b/search/all_2.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/all_2.js b/search/all_2.js new file mode 100644 index 00000000..d636322b --- /dev/null +++ b/search/all_2.js @@ -0,0 +1,18 @@ +var searchData= +[ + ['basicfragmentloader_41',['BasicFragmentLoader',['../classgrape_1_1BasicFragmentLoader.html',1,'grape']]], + ['basicfragmentloader_3c_20fragment_5ft_2c_20io_5fadaptor_5ft_20_3e_42',['BasicFragmentLoader< fragment_t, io_adaptor_t >',['../classgrape_1_1BasicFragmentLoader.html',1,'grape']]], + ['basicfragmentmutator_43',['BasicFragmentMutator',['../classgrape_1_1BasicFragmentMutator.html',1,'grape']]], + ['batchshuffleappbase_44',['BatchShuffleAppBase',['../classgrape_1_1BatchShuffleAppBase.html',1,'grape::BatchShuffleAppBase< FRAG_T, CONTEXT_T >'],['../classgrape_1_1cuda_1_1BatchShuffleAppBase.html',1,'grape::cuda::BatchShuffleAppBase< FRAG_T, CONTEXT_T >']]], + ['batchshufflemessagemanager_45',['BatchShuffleMessageManager',['../classgrape_1_1BatchShuffleMessageManager.html',1,'grape::BatchShuffleMessageManager'],['../classgrape_1_1cuda_1_1BatchShuffleMessageManager.html',1,'grape::cuda::BatchShuffleMessageManager']]], + ['bitset_46',['Bitset',['../classgrape_1_1Bitset.html',1,'grape::Bitset'],['../classgrape_1_1cuda_1_1Bitset.html',1,'grape::cuda::Bitset< SIZE_T >'],['../classgrape_1_1cuda_1_1dev_1_1Bitset.html',1,'grape::cuda::dev::Bitset< SIZE_T >']]], + ['bitset_3c_20uint32_5ft_20_3e_47',['Bitset< uint32_t >',['../classgrape_1_1cuda_1_1dev_1_1Bitset_3_01uint32__t_01_4.html',1,'grape::cuda::dev']]], + ['bitset_3c_20uint64_5ft_20_3e_48',['Bitset< uint64_t >',['../classgrape_1_1cuda_1_1dev_1_1Bitset_3_01uint64__t_01_4.html',1,'grape::cuda::dev']]], + ['bitset_3c_20vid_5ft_20_3e_49',['Bitset< VID_T >',['../classgrape_1_1cuda_1_1Bitset.html',1,'grape::cuda']]], + ['blob_50',['Blob',['../classgrape_1_1mutable__csr__impl_1_1Blob.html',1,'grape::mutable_csr_impl']]], + ['blob_3c_20vid_5ft_2c_20grape_3a_3anbr_20_3e_51',['Blob< vid_t, grape::Nbr >',['../classgrape_1_1mutable__csr__impl_1_1Blob.html',1,'grape::mutable_csr_impl']]], + ['blockingqueue_52',['BlockingQueue',['../classgrape_1_1BlockingQueue.html',1,'grape']]], + ['blockingqueue_3c_20fid_5ft_20_3e_53',['BlockingQueue< fid_t >',['../classgrape_1_1BlockingQueue.html',1,'grape']]], + ['blockingqueue_3c_20std_3a_3apair_3c_20fid_5ft_2c_20grape_3a_3ainarchive_20_3e_20_3e_54',['BlockingQueue< std::pair< fid_t, grape::InArchive > >',['../classgrape_1_1BlockingQueue.html',1,'grape']]], + ['blockingqueue_3c_20std_3a_3apair_3c_20fid_5ft_2c_20grape_3a_3amicrobuffer_20_3e_20_3e_55',['BlockingQueue< std::pair< fid_t, grape::MicroBuffer > >',['../classgrape_1_1BlockingQueue.html',1,'grape']]] +]; diff --git a/search/all_3.html b/search/all_3.html new file mode 100644 index 00000000..39767b85 --- /dev/null +++ b/search/all_3.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/all_3.js b/search/all_3.js new file mode 100644 index 00000000..0a382a01 --- /dev/null +++ b/search/all_3.js @@ -0,0 +1,21 @@ +var searchData= +[ + ['commimpl_56',['CommImpl',['../structgrape_1_1sync__comm_1_1CommImpl.html',1,'grape::sync_comm']]], + ['commimpl_3c_20idindexer_3c_20oid_5ft_2c_20vid_5ft_20_3e_20_3e_57',['CommImpl< IdIndexer< OID_T, VID_T > >',['../structgrape_1_1sync__comm_1_1CommImpl_3_01IdIndexer_3_01OID__T_00_01VID__T_01_4_01_4.html',1,'grape::sync_comm']]], + ['commimpl_3c_20inarchive_2c_20void_20_3e_58',['CommImpl< InArchive, void >',['../structgrape_1_1sync__comm_1_1CommImpl_3_01InArchive_00_01void_01_4.html',1,'grape::sync_comm']]], + ['commimpl_3c_20outarchive_2c_20void_20_3e_59',['CommImpl< OutArchive, void >',['../structgrape_1_1sync__comm_1_1CommImpl_3_01OutArchive_00_01void_01_4.html',1,'grape::sync_comm']]], + ['commimpl_3c_20std_3a_3avector_3c_20t_20_3e_2c_20typename_20std_3a_3aenable_5fif_3c_20std_3a_3ais_5fpod_3c_20t_20_3e_3a_3avalue_20_3e_3a_3atype_20_3e_60',['CommImpl< std::vector< T >, typename std::enable_if< std::is_pod< T >::value >::type >',['../structgrape_1_1sync__comm_1_1CommImpl_3_01std_1_1vector_3_01T_01_4_00_01typename_01std_1_1enablec0367c4b99ee92a0913180271fe39555.html',1,'grape::sync_comm']]], + ['commimpl_3c_20std_3a_3avector_3c_20t_20_3e_2c_20typename_20std_3a_3aenable_5fif_3c_21std_3a_3ais_5fpod_3c_20t_20_3e_3a_3avalue_20_3e_3a_3atype_20_3e_61',['CommImpl< std::vector< T >, typename std::enable_if<!std::is_pod< T >::value >::type >',['../structgrape_1_1sync__comm_1_1CommImpl_3_01std_1_1vector_3_01T_01_4_00_01typename_01std_1_1enablefbdb3f21ced368a4a4b248c9347984b5.html',1,'grape::sync_comm']]], + ['commimpl_3c_20stringviewvector_2c_20void_20_3e_62',['CommImpl< StringViewVector, void >',['../structgrape_1_1sync__comm_1_1CommImpl_3_01StringViewVector_00_01void_01_4.html',1,'grape::sync_comm']]], + ['commimpl_3c_20t_2c_20typename_20std_3a_3aenable_5fif_3c_20std_3a_3ais_5fpod_3c_20t_20_3e_3a_3avalue_20_3e_3a_3atype_20_3e_63',['CommImpl< T, typename std::enable_if< std::is_pod< T >::value >::type >',['../structgrape_1_1sync__comm_1_1CommImpl_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__pode5fa600bd20ba7ca5d785a935cc31699.html',1,'grape::sync_comm']]], + ['commspec_64',['CommSpec',['../classgrape_1_1CommSpec.html',1,'grape']]], + ['communicator_65',['Communicator',['../classgrape_1_1Communicator.html',1,'grape::Communicator'],['../classgrape_1_1cuda_1_1Communicator.html',1,'grape::cuda::Communicator']]], + ['configure_66',['Configure',['../classgrape_1_1LocalIOAdaptor.html#afa739078d818a9edeebe15b6836938cd',1,'grape::LocalIOAdaptor::Configure()'],['../classgrape_1_1IOAdaptorBase.html#aca504d85f9686c98a4ce3e81b9d4663f',1,'grape::IOAdaptorBase::Configure()']]], + ['const_5fiterator_67',['const_iterator',['../classgrape_1_1AdjList_1_1const__iterator.html',1,'grape::AdjList< VID_T, EDATA_T >::const_iterator'],['../structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1const__iterator.html',1,'grape::Array< EmptyType, _Alloc >::const_iterator'],['../classgrape_1_1ConstAdjList_1_1const__iterator.html',1,'grape::ConstAdjList< VID_T, EDATA_T >::const_iterator'],['../classgrape_1_1FilterAdjList_1_1const__iterator.html',1,'grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iterator'],['../classgrape_1_1FilterConstAdjList_1_1const__iterator.html',1,'grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iterator']]], + ['constadjlist_68',['ConstAdjList',['../classgrape_1_1ConstAdjList.html',1,'grape']]], + ['contextbase_69',['ContextBase',['../classgrape_1_1ContextBase.html',1,'grape']]], + ['coofragment_70',['COOFragment',['../classgrape_1_1cuda_1_1COOFragment.html',1,'grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >'],['../classgrape_1_1cuda_1_1dev_1_1COOFragment.html',1,'grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >']]], + ['csredgecutfragmentbase_71',['CSREdgecutFragmentBase',['../classgrape_1_1CSREdgecutFragmentBase.html',1,'grape']]], + ['csredgecutfragmentbase_3c_20oid_5ft_2c_20vid_5ft_2c_20vdata_5ft_2c_20edata_5ft_2c_20immutableedgecutfragmenttraits_3c_20oid_5ft_2c_20vid_5ft_2c_20vdata_5ft_2c_20edata_5ft_2c_20globalvertexmap_3c_20oid_5ft_2c_20vid_5ft_20_3e_20_3e_20_3e_72',['CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >',['../classgrape_1_1CSREdgecutFragmentBase.html',1,'grape']]], + ['ctaworkscheduler_73',['CTAWorkScheduler',['../structgrape_1_1cuda_1_1CTAWorkScheduler.html',1,'grape::cuda']]] +]; diff --git a/search/all_4.html b/search/all_4.html new file mode 100644 index 00000000..fc40463c --- /dev/null +++ b/search/all_4.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/all_4.js b/search/all_4.js new file mode 100644 index 00000000..fd82e449 --- /dev/null +++ b/search/all_4.js @@ -0,0 +1,23 @@ +var searchData= +[ + ['decproducernum_74',['DecProducerNum',['../classgrape_1_1BlockingQueue.html#aee2fb4cc7668e13fb7570294ce806cfc',1,'grape::BlockingQueue']]], + ['defaultallocator_75',['DefaultAllocator',['../classgrape_1_1DefaultAllocator.html',1,'grape']]], + ['defaultmessagemanager_76',['DefaultMessageManager',['../classgrape_1_1DefaultMessageManager.html',1,'grape']]], + ['deltavarintdecoder_77',['DeltaVarintDecoder',['../classgrape_1_1DeltaVarintDecoder.html',1,'grape']]], + ['deltavarintencoder_78',['DeltaVarintEncoder',['../classgrape_1_1DeltaVarintEncoder.html',1,'grape']]], + ['demutablecsr_79',['DeMutableCSR',['../classgrape_1_1DeMutableCSR.html',1,'grape']]], + ['demutablecsr_3c_20vid_5ft_2c_20nbr_3c_20vid_5ft_2c_20edata_5ft_20_3e_20_3e_80',['DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >',['../classgrape_1_1DeMutableCSR_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4.html',1,'grape']]], + ['demutablecsrbuilder_81',['DeMutableCSRBuilder',['../classgrape_1_1DeMutableCSRBuilder.html',1,'grape']]], + ['demutablecsrbuilder_3c_20vid_5ft_2c_20nbr_3c_20vid_5ft_2c_20edata_5ft_20_3e_20_3e_82',['DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >',['../classgrape_1_1DeMutableCSRBuilder_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4.html',1,'grape']]], + ['densevertexset_83',['DenseVertexSet',['../classgrape_1_1cuda_1_1DenseVertexSet.html',1,'grape::cuda::DenseVertexSet< VID_T >'],['../classgrape_1_1cuda_1_1dev_1_1DenseVertexSet.html',1,'grape::cuda::dev::DenseVertexSet< VID_T >'],['../classgrape_1_1DenseVertexSet.html',1,'grape::DenseVertexSet< VERTEX_SET_T >']]], + ['densevertexset_3c_20dualvertexrange_3c_20vid_5ft_20_3e_20_3e_84',['DenseVertexSet< DualVertexRange< VID_T > >',['../classgrape_1_1DenseVertexSet_3_01DualVertexRange_3_01VID__T_01_4_01_4.html',1,'grape']]], + ['densevertexset_3c_20vertexrange_3c_20vid_5ft_20_3e_20_3e_85',['DenseVertexSet< VertexRange< VID_T > >',['../classgrape_1_1DenseVertexSet_3_01VertexRange_3_01VID__T_01_4_01_4.html',1,'grape']]], + ['densevertexset_3c_20vertexvector_3c_20vid_5ft_20_3e_20_3e_86',['DenseVertexSet< VertexVector< VID_T > >',['../classgrape_1_1DenseVertexSet_3_01VertexVector_3_01VID__T_01_4_01_4.html',1,'grape']]], + ['destlist_87',['DestList',['../structgrape_1_1DestList.html',1,'grape']]], + ['devicebuffer_88',['DeviceBuffer',['../classgrape_1_1cuda_1_1DeviceBuffer.html',1,'grape::cuda']]], + ['devicefragment_89',['DeviceFragment',['../classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html',1,'grape::cuda::dev']]], + ['devicewarmup_90',['DeviceWarmup',['../classgrape_1_1cuda_1_1GPUMessageManager.html#a6caef311f14eb22879abe6b6aba83a92',1,'grape::cuda::GPUMessageManager']]], + ['directed_91',['directed',['../classgrape_1_1FragmentBase.html#a3d422e4afe2c020c7f0ba07e79513c74',1,'grape::FragmentBase']]], + ['distinctsort_92',['DistinctSort',['../namespacegrape.html#ae862702300407ca67c9779f5f1d35081',1,'grape']]], + ['dualvertexrange_93',['DualVertexRange',['../classgrape_1_1DualVertexRange.html',1,'grape']]] +]; diff --git a/search/all_5.html b/search/all_5.html new file mode 100644 index 00000000..9dd9344b --- /dev/null +++ b/search/all_5.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/all_5.js b/search/all_5.js new file mode 100644 index 00000000..4b91473e --- /dev/null +++ b/search/all_5.js @@ -0,0 +1,14 @@ +var searchData= +[ + ['edge_94',['Edge',['../structgrape_1_1Edge.html',1,'grape']]], + ['edge_3c_20vid_5ft_2c_20emptytype_20_3e_95',['Edge< VID_T, EmptyType >',['../structgrape_1_1Edge_3_01VID__T_00_01EmptyType_01_4.html',1,'grape']]], + ['edge_3c_20vid_5ft_2c_20grape_3a_3aemptytype_20_3e_96',['Edge< VID_T, grape::EmptyType >',['../structgrape_1_1Edge.html',1,'grape']]], + ['edgecutfragmentbase_97',['EdgecutFragmentBase',['../classgrape_1_1EdgecutFragmentBase.html',1,'grape']]], + ['empty_5fnp_98',['empty_np',['../structgrape_1_1cuda_1_1empty__np.html',1,'grape::cuda']]], + ['emptytype_99',['EmptyType',['../structgrape_1_1EmptyType.html',1,'grape']]], + ['event_100',['Event',['../classgrape_1_1cuda_1_1Event.html',1,'grape::cuda']]], + ['eventholder_101',['EventHolder',['../classgrape_1_1cuda_1_1EventHolder.html',1,'grape::cuda']]], + ['evfragmentloader_102',['EVFragmentLoader',['../classgrape_1_1EVFragmentLoader.html',1,'grape']]], + ['evfragmentmutator_103',['EVFragmentMutator',['../classgrape_1_1EVFragmentMutator.html',1,'grape']]], + ['evfragmentrebalanceloader_104',['EVFragmentRebalanceLoader',['../classgrape_1_1EVFragmentRebalanceLoader.html',1,'grape']]] +]; diff --git a/search/all_6.html b/search/all_6.html new file mode 100644 index 00000000..f1e516d7 --- /dev/null +++ b/search/all_6.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/all_6.js b/search/all_6.js new file mode 100644 index 00000000..78e982d4 --- /dev/null +++ b/search/all_6.js @@ -0,0 +1,16 @@ +var searchData= +[ + ['fid_105',['fid',['../classgrape_1_1FragmentBase.html#ad992f0083da18eb4b3621a71137f11b8',1,'grape::FragmentBase::fid()'],['../classgrape_1_1EdgecutFragmentBase.html#ad992f0083da18eb4b3621a71137f11b8',1,'grape::EdgecutFragmentBase::fid()']]], + ['filteradjlist_106',['FilterAdjList',['../classgrape_1_1FilterAdjList.html',1,'grape']]], + ['filterconstadjlist_107',['FilterConstAdjList',['../classgrape_1_1FilterConstAdjList.html',1,'grape']]], + ['finalize_108',['Finalize',['../classgrape_1_1MessageManagerBase.html#a241c2d7cefcd577f6bae2e9dac286f4b',1,'grape::MessageManagerBase::Finalize()'],['../classgrape_1_1AutoParallelMessageManager.html#a19df6a464cb45b556f4382eeea6dbec5',1,'grape::AutoParallelMessageManager::Finalize()'],['../classgrape_1_1ParallelMessageManagerOpt.html#a22e0a42e300d2c73ba380b44254e087b',1,'grape::ParallelMessageManagerOpt::Finalize()'],['../classgrape_1_1ParallelMessageManager.html#a1dab128e2fdb464f7dbe9486d41460dc',1,'grape::ParallelMessageManager::Finalize()'],['../classgrape_1_1DefaultMessageManager.html#a19df6a464cb45b556f4382eeea6dbec5',1,'grape::DefaultMessageManager::Finalize()'],['../classgrape_1_1BatchShuffleMessageManager.html#ab660e56795ebfa5b14cc9448c25e2be6',1,'grape::BatchShuffleMessageManager::Finalize()'],['../classgrape_1_1cuda_1_1GPUMessageManager.html#a265a6769a0e7f62cf4ceaf6cea720f3f',1,'grape::cuda::GPUMessageManager::Finalize()'],['../classgrape_1_1cuda_1_1BatchShuffleMessageManager.html#affdfb3d421f12fb44430a7c2788576bc',1,'grape::cuda::BatchShuffleMessageManager::Finalize() const']]], + ['finisharound_109',['FinishARound',['../classgrape_1_1cuda_1_1BatchShuffleMessageManager.html#a600bad04c187ed3eca222faf9f015a37',1,'grape::cuda::BatchShuffleMessageManager::FinishARound()'],['../classgrape_1_1cuda_1_1GPUMessageManager.html#acaa589df476d8d29c46868609c791f1c',1,'grape::cuda::GPUMessageManager::FinishARound()'],['../classgrape_1_1AutoParallelMessageManager.html#aeb5a2fc228ba560f16bb139400e8eddc',1,'grape::AutoParallelMessageManager::FinishARound()'],['../classgrape_1_1BatchShuffleMessageManager.html#afc0562cb099f8677327cf333c081dc62',1,'grape::BatchShuffleMessageManager::FinishARound()'],['../classgrape_1_1DefaultMessageManager.html#a5fe8999ad4d90b7abff0986f69f05084',1,'grape::DefaultMessageManager::FinishARound()'],['../classgrape_1_1MessageManagerBase.html#a77317437f11efa88ce721223732e120f',1,'grape::MessageManagerBase::FinishARound()'],['../classgrape_1_1ParallelMessageManager.html#af5071360192c4c5045db60b68b90444e',1,'grape::ParallelMessageManager::FinishARound()'],['../classgrape_1_1ParallelMessageManagerOpt.html#a8d4183b606472099a3949d255a424939',1,'grape::ParallelMessageManagerOpt::FinishARound()']]], + ['fixedinarchive_110',['FixedInArchive',['../classgrape_1_1FixedInArchive.html',1,'grape']]], + ['flushmessages_111',['FlushMessages',['../classgrape_1_1ThreadLocalMessageBufferOpt.html#ac61130aa66bca68812aba5f0be266a64',1,'grape::ThreadLocalMessageBufferOpt::FlushMessages()'],['../classgrape_1_1ThreadLocalMessageBuffer.html#a69f772687f36eeed94319223aee4c641',1,'grape::ThreadLocalMessageBuffer::FlushMessages()']]], + ['fnum_112',['fnum',['../classgrape_1_1FragmentBase.html#a00635c223b0c8beed07ff4abc80ff1f5',1,'grape::FragmentBase::fnum()'],['../classgrape_1_1EdgecutFragmentBase.html#a00635c223b0c8beed07ff4abc80ff1f5',1,'grape::EdgecutFragmentBase::fnum()']]], + ['forcecontinue_113',['ForceContinue',['../classgrape_1_1cuda_1_1BatchShuffleMessageManager.html#a95b5f29a59a8138fb1535b1e8c0d0692',1,'grape::cuda::BatchShuffleMessageManager::ForceContinue()'],['../classgrape_1_1cuda_1_1GPUMessageManager.html#acf928a09e08294446f0665b30837fb6f',1,'grape::cuda::GPUMessageManager::ForceContinue()'],['../classgrape_1_1BatchShuffleMessageManager.html#ab19b6fdb1ba4dbab7f0ccc799669b765',1,'grape::BatchShuffleMessageManager::ForceContinue()'],['../classgrape_1_1DefaultMessageManager.html#a069fcda5a80e52b3a66128f5c3fa597a',1,'grape::DefaultMessageManager::ForceContinue()'],['../classgrape_1_1MessageManagerBase.html#ac562caca30e41990caaec5cf95d28701',1,'grape::MessageManagerBase::ForceContinue()'],['../classgrape_1_1ParallelMessageManager.html#ad5f23c9e3c6a6349f23379ebaf420d40',1,'grape::ParallelMessageManager::ForceContinue()'],['../classgrape_1_1ParallelMessageManagerOpt.html#aa5326cb9d16f8c9087e1aad118ac9356',1,'grape::ParallelMessageManagerOpt::ForceContinue()'],['../classgrape_1_1AutoParallelMessageManager.html#a069fcda5a80e52b3a66128f5c3fa597a',1,'grape::AutoParallelMessageManager::ForceContinue()']]], + ['forceterminate_114',['ForceTerminate',['../classgrape_1_1ParallelMessageManagerOpt.html#a854276b26e1a6117e6951d0d661b0ff3',1,'grape::ParallelMessageManagerOpt::ForceTerminate()'],['../classgrape_1_1ParallelMessageManager.html#a731c55f98118413974964db164363ff5',1,'grape::ParallelMessageManager::ForceTerminate()'],['../classgrape_1_1MessageManagerBase.html#a51255242d33783e84e45dac0e9ad0485',1,'grape::MessageManagerBase::ForceTerminate()'],['../classgrape_1_1DefaultMessageManager.html#a86376af64c1665ec209f5723bec481b4',1,'grape::DefaultMessageManager::ForceTerminate()'],['../classgrape_1_1BatchShuffleMessageManager.html#a37adc562b9c47d520aee3cf72531b402',1,'grape::BatchShuffleMessageManager::ForceTerminate()']]], + ['foreach_115',['ForEach',['../classgrape_1_1ParallelEngine.html#a01f5df37e3852d9cd40d402900615501',1,'grape::ParallelEngine::ForEach(const ITERATOR_T &begin, const ITERATOR_T &end, const INIT_FUNC_T &init_func, const ITER_FUNC_T &iter_func, const FINALIZE_FUNC_T &finalize_func, int chunk_size=1024)'],['../classgrape_1_1ParallelEngine.html#a7921e885b1a0906fc060e31a36179662',1,'grape::ParallelEngine::ForEach(const DenseVertexSet< VertexRange< VID_T >> &dense_set, const ITER_FUNC_T &iter_func, int chunk_size=1024)'],['../classgrape_1_1ParallelEngine.html#aee4b36bff462c1b2333e4c5dc0ac7311',1,'grape::ParallelEngine::ForEach(const DenseVertexSet< VertexRange< VID_T >> &dense_set, const INIT_FUNC_T &init_func, const ITER_FUNC_T &iter_func, const FINALIZE_FUNC_T &finalize_func, int chunk_size=10 *1024)'],['../classgrape_1_1ParallelEngine.html#a1bedcb27feec51617c3759d51d117712',1,'grape::ParallelEngine::ForEach(const DenseVertexSet< VertexRange< VID_T >> &dense_set, const VertexRange< VID_T > &range, const ITER_FUNC_T &iter_func, int chunk_size=1024)'],['../classgrape_1_1ParallelEngine.html#afd4a076ce692d9e42747a7321b5e42e8',1,'grape::ParallelEngine::ForEach(const DenseVertexSet< VERTEX_SET_T > &dense_set, const VertexVector< VID_T > &vertices, const ITER_FUNC_T &iter_func, int chunk_size=1024)'],['../classgrape_1_1ParallelEngine.html#a3abe327cbd6efd0ba481344dc7a802c8',1,'grape::ParallelEngine::ForEach(const VertexVector< VID_T > &vertices, const INIT_FUNC_T &init_func, const ITER_FUNC_T &iter_func, const FINALIZE_FUNC_T &finalize_func, int chunk_size=1024)'],['../classgrape_1_1ParallelEngine.html#a042836c188385e633dbd20122dbfbbec',1,'grape::ParallelEngine::ForEach(const VertexRange< VID_T > &range, const INIT_FUNC_T &init_func, const ITER_FUNC_T &iter_func, const FINALIZE_FUNC_T &finalize_func, int chunk_size=1024)'],['../classgrape_1_1ParallelEngine.html#a4ea215e07e9355805b875dd99e88af83',1,'grape::ParallelEngine::ForEach(const VertexVector< VID_T > &vertices, const ITER_FUNC_T &iter_func, int chunk_size=1024)'],['../classgrape_1_1ParallelEngine.html#aca29f2033ec83c07a8143c3471264315',1,'grape::ParallelEngine::ForEach(const VertexRange< VID_T > &range, const ITER_FUNC_T &iter_func, int chunk_size=1024)']]], + ['frag_5fshuffle_5fheader_116',['frag_shuffle_header',['../structgrape_1_1frag__shuffle__header.html',1,'grape']]], + ['fragmentbase_117',['FragmentBase',['../classgrape_1_1FragmentBase.html',1,'grape']]] +]; diff --git a/search/all_7.html b/search/all_7.html new file mode 100644 index 00000000..8ddbf6c8 --- /dev/null +++ b/search/all_7.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/all_7.js b/search/all_7.js new file mode 100644 index 00000000..35cbf042 --- /dev/null +++ b/search/all_7.js @@ -0,0 +1,43 @@ +var searchData= +[ + ['batch_5fshuffle_5fmessage_5fmanager_5fimpl_118',['batch_shuffle_message_manager_impl',['../namespacegrape_1_1batch__shuffle__message__manager__impl.html',1,'grape']]], + ['get_119',['Get',['../classgrape_1_1NonblockingQueue.html#af6a826054202c74c1074e25e8e03c860',1,'grape::NonblockingQueue::Get()'],['../classgrape_1_1BlockingQueue.html#a519988d3689a87d23ed87aebd71b5cb0',1,'grape::BlockingQueue::Get()']]], + ['get_5fbuffer_5fhelper_120',['get_buffer_helper',['../structgrape_1_1get__buffer__helper.html',1,'grape']]], + ['get_5fbuffer_5fhelper_3c_200_2c_20first_2c_20rest_2e_2e_2e_20_3e_121',['get_buffer_helper< 0, First, Rest... >',['../structgrape_1_1get__buffer__helper_3_010_00_01First_00_01Rest_8_8_8_01_4.html',1,'grape']]], + ['getdata_122',['GetData',['../classgrape_1_1ImmutableEdgecutFragment.html#a9d50ff75e2d931242131d86726b5005c',1,'grape::ImmutableEdgecutFragment::GetData()'],['../classgrape_1_1FragmentBase.html#a23797c0cf4d41cb47bb333d7afb8dc28',1,'grape::FragmentBase::GetData(const Vertex< VID_T > &v) const =0']]], + ['getedgenum_123',['GetEdgeNum',['../classgrape_1_1FragmentBase.html#aa9964e6bd6bc550a422fbe042f4ffe3e',1,'grape::FragmentBase::GetEdgeNum()'],['../classgrape_1_1CSREdgecutFragmentBase.html#a9e9e02c403555b991adfad31b9136c95',1,'grape::CSREdgecutFragmentBase::GetEdgeNum()']]], + ['getfragid_124',['GetFragId',['../classgrape_1_1ImmutableEdgecutFragment.html#a27060eb9b1fefa701763c6a6d1c4a90e',1,'grape::ImmutableEdgecutFragment::GetFragId()'],['../classgrape_1_1FragmentBase.html#a27060eb9b1fefa701763c6a6d1c4a90e',1,'grape::FragmentBase::GetFragId(const Vertex< VID_T > &u) const']]], + ['getid_125',['GetId',['../classgrape_1_1FragmentBase.html#aa8568dc5a7447c29f4ea3b717dd56f25',1,'grape::FragmentBase']]], + ['getincomingadjlist_126',['GetIncomingAdjList',['../classgrape_1_1MutableEdgecutFragment.html#ac8221d2575f65ad8db7ce8fd814359e3',1,'grape::MutableEdgecutFragment::GetIncomingAdjList(const vertex_t &v) const override'],['../classgrape_1_1MutableEdgecutFragment.html#a5783417ec349da8ff9f6443c185532cc',1,'grape::MutableEdgecutFragment::GetIncomingAdjList(const vertex_t &v) override'],['../classgrape_1_1ImmutableEdgecutFragment.html#a7ac054650b970c1312339541ca008e30',1,'grape::ImmutableEdgecutFragment::GetIncomingAdjList()'],['../classgrape_1_1CSREdgecutFragmentBase.html#a5783417ec349da8ff9f6443c185532cc',1,'grape::CSREdgecutFragmentBase::GetIncomingAdjList(const vertex_t &v) override'],['../classgrape_1_1CSREdgecutFragmentBase.html#ac8221d2575f65ad8db7ce8fd814359e3',1,'grape::CSREdgecutFragmentBase::GetIncomingAdjList(const vertex_t &v) const override'],['../classgrape_1_1FragmentBase.html#a7ac054650b970c1312339541ca008e30',1,'grape::FragmentBase::GetIncomingAdjList()']]], + ['getincominginnervertexadjlist_127',['GetIncomingInnerVertexAdjList',['../classgrape_1_1ImmutableEdgecutFragment.html#a88bda6f54a9f223e34ac17ea9492d51f',1,'grape::ImmutableEdgecutFragment::GetIncomingInnerVertexAdjList()'],['../classgrape_1_1EdgecutFragmentBase.html#ac55c64f04b4ed48cdca94a9b1d3e209d',1,'grape::EdgecutFragmentBase::GetIncomingInnerVertexAdjList(const Vertex< VID_T > &v) const =0'],['../classgrape_1_1EdgecutFragmentBase.html#a50ee9a32083e389ee47c2e934e99e55e',1,'grape::EdgecutFragmentBase::GetIncomingInnerVertexAdjList(const Vertex< VID_T > &v)=0'],['../classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html#ab17b889781da16edf08486d678fcd975',1,'grape::cuda::dev::DeviceFragment::GetIncomingInnerVertexAdjList(const vertex_t &v) const'],['../classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html#a7127ec7ef265f1c4081662c11cada794',1,'grape::cuda::dev::DeviceFragment::GetIncomingInnerVertexAdjList(const vertex_t &v)'],['../classgrape_1_1ImmutableEdgecutFragment.html#a19d194526e168264e1e3565f4b2a1a66',1,'grape::ImmutableEdgecutFragment::GetIncomingInnerVertexAdjList()']]], + ['getincomingoutervertexadjlist_128',['GetIncomingOuterVertexAdjList',['../classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html#ab68a8c04a28f0765e9d3c26d8c62b629',1,'grape::cuda::dev::DeviceFragment::GetIncomingOuterVertexAdjList(const vertex_t &v)'],['../classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html#ad06b14b6d36e184c329a1a524e05cfed',1,'grape::cuda::dev::DeviceFragment::GetIncomingOuterVertexAdjList(const vertex_t &v) const'],['../classgrape_1_1EdgecutFragmentBase.html#a3a268ed0ff3e2d913f828a7758e5e576',1,'grape::EdgecutFragmentBase::GetIncomingOuterVertexAdjList(const Vertex< VID_T > &v)=0'],['../classgrape_1_1EdgecutFragmentBase.html#a620b4f06a4d819dbc3aa180601d396f5',1,'grape::EdgecutFragmentBase::GetIncomingOuterVertexAdjList(const Vertex< VID_T > &v) const =0'],['../classgrape_1_1ImmutableEdgecutFragment.html#a1980c46f21d89449eb3b84bbfd49ef01',1,'grape::ImmutableEdgecutFragment::GetIncomingOuterVertexAdjList(const vertex_t &v) override'],['../classgrape_1_1ImmutableEdgecutFragment.html#a9cf0f71cd2c6301626369b350f90d6fe',1,'grape::ImmutableEdgecutFragment::GetIncomingOuterVertexAdjList(const vertex_t &v) const override']]], + ['getinnervertex_129',['GetInnerVertex',['../classgrape_1_1EdgecutFragmentBase.html#a96ebbedef76e2dca685e18891e4c26ec',1,'grape::EdgecutFragmentBase']]], + ['getinnervertexgid_130',['GetInnerVertexGid',['../classgrape_1_1EdgecutFragmentBase.html#af4d06814a028a51e0b5e3a2e0d97e658',1,'grape::EdgecutFragmentBase']]], + ['getinnervertexid_131',['GetInnerVertexId',['../classgrape_1_1EdgecutFragmentBase.html#a6266ee188624c4b4a3a587900dd6bf05',1,'grape::EdgecutFragmentBase']]], + ['getinnerverticesnum_132',['GetInnerVerticesNum',['../classgrape_1_1CSREdgecutFragmentBase.html#adedbc78a3bf590b079064f4b3af89040',1,'grape::CSREdgecutFragmentBase::GetInnerVerticesNum()'],['../classgrape_1_1EdgecutFragmentBase.html#adedbc78a3bf590b079064f4b3af89040',1,'grape::EdgecutFragmentBase::GetInnerVerticesNum()']]], + ['getlocalindegree_133',['GetLocalInDegree',['../classgrape_1_1FragmentBase.html#a02144ce76fc56aed7a3c5459e6337930',1,'grape::FragmentBase::GetLocalInDegree()'],['../classgrape_1_1CSREdgecutFragmentBase.html#a3dcc58dcb739731952c9ef705d4f5124',1,'grape::CSREdgecutFragmentBase::GetLocalInDegree()']]], + ['getlocaloutdegree_134',['GetLocalOutDegree',['../classgrape_1_1FragmentBase.html#a4a89d7d15e4a9b8be35e8bf73bf6e1da',1,'grape::FragmentBase::GetLocalOutDegree()'],['../classgrape_1_1CSREdgecutFragmentBase.html#a28dbfa04f1bc8552bacb00274b507d58',1,'grape::CSREdgecutFragmentBase::GetLocalOutDegree()']]], + ['getmessage_135',['GetMessage',['../classgrape_1_1DefaultMessageManager.html#a6e1c70f1d29d93161e07e68acb62cb09',1,'grape::DefaultMessageManager::GetMessage(MESSAGE_T &msg)'],['../classgrape_1_1DefaultMessageManager.html#a27ca6a074bc12882876e96768e5631a7',1,'grape::DefaultMessageManager::GetMessage(const GRAPH_T &frag, typename GRAPH_T::vertex_t &v, MESSAGE_T &msg)']]], + ['getmessageinbuffer_136',['GetMessageInBuffer',['../classgrape_1_1ParallelMessageManagerOpt.html#a7fad186fb4dad08d7b61cd847175f030',1,'grape::ParallelMessageManagerOpt::GetMessageInBuffer()'],['../classgrape_1_1ParallelMessageManager.html#aeccdccd59a635f14a3d1befa698428c7',1,'grape::ParallelMessageManager::GetMessageInBuffer()']]], + ['getmsgsize_137',['GetMsgSize',['../classgrape_1_1ParallelMessageManagerOpt.html#ad2b103008a6b5ff3871001845554a80b',1,'grape::ParallelMessageManagerOpt::GetMsgSize()'],['../classgrape_1_1ParallelMessageManager.html#a26b163ba96eb5737d46200a363955e5d',1,'grape::ParallelMessageManager::GetMsgSize()'],['../classgrape_1_1MessageManagerBase.html#a2c4cc7350fdd893763bbf534bce85784',1,'grape::MessageManagerBase::GetMsgSize()'],['../classgrape_1_1DefaultMessageManager.html#a2f7cc6525f4178ac9447a55fb8bd6815',1,'grape::DefaultMessageManager::GetMsgSize()'],['../classgrape_1_1BatchShuffleMessageManager.html#aae8310ebc57bf762e2f69566de94e733',1,'grape::BatchShuffleMessageManager::GetMsgSize()'],['../classgrape_1_1cuda_1_1GPUMessageManager.html#a948c07897ff4d0ca7c31d91f2b5e7448',1,'grape::cuda::GPUMessageManager::GetMsgSize()'],['../classgrape_1_1cuda_1_1BatchShuffleMessageManager.html#ac88e6bd25ac27e305a02a1299bb70a81',1,'grape::cuda::BatchShuffleMessageManager::GetMsgSize()'],['../classgrape_1_1AutoParallelMessageManager.html#a2f7cc6525f4178ac9447a55fb8bd6815',1,'grape::AutoParallelMessageManager::GetMsgSize()']]], + ['getoutervertexgid_138',['GetOuterVertexGid',['../classgrape_1_1EdgecutFragmentBase.html#a40e15987d15953561eb398d5b41a3f62',1,'grape::EdgecutFragmentBase::GetOuterVertexGid()'],['../classgrape_1_1ImmutableEdgecutFragment.html#ae8824be642c287a5bcfbaee047dc5b77',1,'grape::ImmutableEdgecutFragment::GetOuterVertexGid()']]], + ['getoutervertexid_139',['GetOuterVertexId',['../classgrape_1_1EdgecutFragmentBase.html#a7c772db1899b4bd8d9249919c479d67c',1,'grape::EdgecutFragmentBase']]], + ['getouterverticesnum_140',['GetOuterVerticesNum',['../classgrape_1_1EdgecutFragmentBase.html#a51f3d0376ced273d7795c8930b0bbab5',1,'grape::EdgecutFragmentBase']]], + ['getoutgoingadjlist_141',['GetOutgoingAdjList',['../classgrape_1_1CSREdgecutFragmentBase.html#a82476311a92148ae75384f9903260fbe',1,'grape::CSREdgecutFragmentBase::GetOutgoingAdjList(const vertex_t &v) override'],['../classgrape_1_1CSREdgecutFragmentBase.html#a603c1b2f0b1fda16d7cc04d69516f5f9',1,'grape::CSREdgecutFragmentBase::GetOutgoingAdjList(const vertex_t &v) const override'],['../classgrape_1_1FragmentBase.html#a38c92b5ca9841f4db0ed7afa56293835',1,'grape::FragmentBase::GetOutgoingAdjList()'],['../classgrape_1_1ImmutableEdgecutFragment.html#a38c92b5ca9841f4db0ed7afa56293835',1,'grape::ImmutableEdgecutFragment::GetOutgoingAdjList()'],['../classgrape_1_1MutableEdgecutFragment.html#a82476311a92148ae75384f9903260fbe',1,'grape::MutableEdgecutFragment::GetOutgoingAdjList(const vertex_t &v) override'],['../classgrape_1_1MutableEdgecutFragment.html#a603c1b2f0b1fda16d7cc04d69516f5f9',1,'grape::MutableEdgecutFragment::GetOutgoingAdjList(const vertex_t &v) const override']]], + ['getoutgoinginnervertexadjlist_142',['GetOutgoingInnerVertexAdjList',['../classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html#abc1ec0486466fa94ab04f52364169174',1,'grape::cuda::dev::DeviceFragment::GetOutgoingInnerVertexAdjList(const vertex_t &v)'],['../classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html#a3085128598b9221fc38cfc05eadd64ad',1,'grape::cuda::dev::DeviceFragment::GetOutgoingInnerVertexAdjList(const vertex_t &v) const'],['../classgrape_1_1EdgecutFragmentBase.html#a4c6f4d40f6c45c29d179139afdc5092a',1,'grape::EdgecutFragmentBase::GetOutgoingInnerVertexAdjList(const Vertex< VID_T > &v)=0'],['../classgrape_1_1EdgecutFragmentBase.html#ab904a6e8fc0aa13bb6d1a5b8e6d63a84',1,'grape::EdgecutFragmentBase::GetOutgoingInnerVertexAdjList(const Vertex< VID_T > &v) const =0'],['../classgrape_1_1ImmutableEdgecutFragment.html#a5fceda28e883a5e36cceeb9bb0da25a6',1,'grape::ImmutableEdgecutFragment::GetOutgoingInnerVertexAdjList(const vertex_t &v) override'],['../classgrape_1_1ImmutableEdgecutFragment.html#ae3dc23b04766b71818488db1892a72a1',1,'grape::ImmutableEdgecutFragment::GetOutgoingInnerVertexAdjList(const vertex_t &v) const override']]], + ['getoutgoingoutervertexadjlist_143',['GetOutgoingOuterVertexAdjList',['../classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html#ac7968312eb51770c632e9c797c438681',1,'grape::cuda::dev::DeviceFragment::GetOutgoingOuterVertexAdjList(const vertex_t &v)'],['../classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html#a802173559fb5d78273ec9b580f5c759f',1,'grape::cuda::dev::DeviceFragment::GetOutgoingOuterVertexAdjList(const vertex_t &v) const'],['../classgrape_1_1EdgecutFragmentBase.html#ac6d366d57a7e0a76316705f13cd4168e',1,'grape::EdgecutFragmentBase::GetOutgoingOuterVertexAdjList(const Vertex< VID_T > &v)=0'],['../classgrape_1_1EdgecutFragmentBase.html#a14d1dfa45bdf82af3a753a52e2429db3',1,'grape::EdgecutFragmentBase::GetOutgoingOuterVertexAdjList(const Vertex< VID_T > &v) const =0'],['../classgrape_1_1ImmutableEdgecutFragment.html#a28767b48b602916d6e03b5085b6d18d9',1,'grape::ImmutableEdgecutFragment::GetOutgoingOuterVertexAdjList(const vertex_t &v) override'],['../classgrape_1_1ImmutableEdgecutFragment.html#a56f6eb42d979a75e705779f9ab8120fc',1,'grape::ImmutableEdgecutFragment::GetOutgoingOuterVertexAdjList(const vertex_t &v) const override']]], + ['getresultfilename_144',['GetResultFilename',['../namespacegrape.html#ae521c713545b0375558f7492680800c8',1,'grape']]], + ['getterminateinfo_145',['GetTerminateInfo',['../classgrape_1_1BatchShuffleMessageManager.html#afcd792b65af50e629fba84c3818c11df',1,'grape::BatchShuffleMessageManager::GetTerminateInfo()'],['../classgrape_1_1DefaultMessageManager.html#afca3a62efc2016ac15e46e322ce8d8ef',1,'grape::DefaultMessageManager::GetTerminateInfo()'],['../classgrape_1_1MessageManagerBase.html#a6b6af5e60690022df47d618b647912bd',1,'grape::MessageManagerBase::GetTerminateInfo()'],['../classgrape_1_1ParallelMessageManager.html#a6bee245b56a8a7d39485585b14e61d04',1,'grape::ParallelMessageManager::GetTerminateInfo()'],['../classgrape_1_1ParallelMessageManagerOpt.html#a4f2008fec970ec83e8fb812f97a64926',1,'grape::ParallelMessageManagerOpt::GetTerminateInfo()']]], + ['gettotalverticesnum_146',['GetTotalVerticesNum',['../classgrape_1_1FragmentBase.html#a21b642597697b0a66fdd6cee7a10c259',1,'grape::FragmentBase']]], + ['getvertex_147',['GetVertex',['../classgrape_1_1FragmentBase.html#a4c8715184d1d9b9ccf9b2ae06669840d',1,'grape::FragmentBase']]], + ['getverticesnum_148',['GetVerticesNum',['../classgrape_1_1FragmentBase.html#a1789e632d507a06f18604f7be32cd91f',1,'grape::FragmentBase']]], + ['gid2vertex_149',['Gid2Vertex',['../classgrape_1_1FragmentBase.html#a7d64cd2307c5147b9cb7deb27d10d483',1,'grape::FragmentBase::Gid2Vertex()'],['../classgrape_1_1EdgecutFragmentBase.html#a7dfef6ab8c55c660023213c8a4188732',1,'grape::EdgecutFragmentBase::Gid2Vertex()']]], + ['globalvertexmap_150',['GlobalVertexMap',['../classgrape_1_1GlobalVertexMap.html',1,'grape']]], + ['globalvertexmapbuilder_151',['GlobalVertexMapBuilder',['../classgrape_1_1GlobalVertexMapBuilder.html',1,'grape']]], + ['google_152',['google',['../namespacegoogle.html',1,'']]], + ['gpuappbase_153',['GPUAppBase',['../classgrape_1_1cuda_1_1GPUAppBase.html',1,'grape::cuda']]], + ['gpubatchshuffleworker_154',['GPUBatchShuffleWorker',['../classgrape_1_1cuda_1_1GPUBatchShuffleWorker.html',1,'grape::cuda']]], + ['gpumessagemanager_155',['GPUMessageManager',['../classgrape_1_1cuda_1_1GPUMessageManager.html',1,'grape::cuda']]], + ['gpuworker_156',['GPUWorker',['../classgrape_1_1cuda_1_1GPUWorker.html',1,'grape::cuda']]], + ['grape_157',['grape',['../namespacegrape.html',1,'']]] +]; diff --git a/search/all_8.html b/search/all_8.html new file mode 100644 index 00000000..83c55ae2 --- /dev/null +++ b/search/all_8.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/all_8.js b/search/all_8.js new file mode 100644 index 00000000..c693e504 --- /dev/null +++ b/search/all_8.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['haschild_158',['HasChild',['../classgrape_1_1CSREdgecutFragmentBase.html#ae76ec9a0731fcf24e775e312d8857b9f',1,'grape::CSREdgecutFragmentBase::HasChild()'],['../classgrape_1_1FragmentBase.html#a9441c57ca70dbd694d096a939851f1dc',1,'grape::FragmentBase::HasChild()']]], + ['hash_3c_20grape_3a_3avertex_3c_20t_20_3e_20_3e_159',['hash< grape::Vertex< T > >',['../structstd_1_1hash_3_01grape_1_1Vertex_3_01T_01_4_01_4.html',1,'std']]], + ['hashpartitioner_160',['HashPartitioner',['../classgrape_1_1HashPartitioner.html',1,'grape']]], + ['hashpartitioner_3c_20std_3a_3astring_20_3e_161',['HashPartitioner< std::string >',['../classgrape_1_1HashPartitioner_3_01std_1_1string_01_4.html',1,'grape']]], + ['hasparent_162',['HasParent',['../classgrape_1_1CSREdgecutFragmentBase.html#a4007e3271137b9481d38c380cbc01bf9',1,'grape::CSREdgecutFragmentBase::HasParent()'],['../classgrape_1_1FragmentBase.html#ac514576aebd2855cc7d449d09e275b06',1,'grape::FragmentBase::HasParent()']]], + ['hostfragment_163',['HostFragment',['../classgrape_1_1cuda_1_1HostFragment.html',1,'grape::cuda']]] +]; diff --git a/search/all_9.html b/search/all_9.html new file mode 100644 index 00000000..1e263c13 --- /dev/null +++ b/search/all_9.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/all_9.js b/search/all_9.js new file mode 100644 index 00000000..125dfad2 --- /dev/null +++ b/search/all_9.js @@ -0,0 +1,44 @@ +var searchData= +[ + ['identicalhasher_164',['IdenticalHasher',['../structgrape_1_1IdenticalHasher.html',1,'grape']]], + ['identicalhasher_3c_20uint32_5ft_20_3e_165',['IdenticalHasher< uint32_t >',['../structgrape_1_1IdenticalHasher_3_01uint32__t_01_4.html',1,'grape']]], + ['identicalhasher_3c_20uint64_5ft_20_3e_166',['IdenticalHasher< uint64_t >',['../structgrape_1_1IdenticalHasher_3_01uint64__t_01_4.html',1,'grape']]], + ['idhasher_167',['IdHasher',['../structgrape_1_1IdHasher.html',1,'grape']]], + ['idhasher_3c_20uint32_5ft_20_3e_168',['IdHasher< uint32_t >',['../structgrape_1_1IdHasher_3_01uint32__t_01_4.html',1,'grape']]], + ['idhasher_3c_20uint64_5ft_20_3e_169',['IdHasher< uint64_t >',['../structgrape_1_1IdHasher_3_01uint64__t_01_4.html',1,'grape']]], + ['idindexer_170',['IdIndexer',['../classgrape_1_1IdIndexer.html',1,'grape']]], + ['idindexer_3c_20internal_5foid_5ft_2c_20vid_5ft_20_3e_171',['IdIndexer< internal_oid_t, VID_T >',['../classgrape_1_1IdIndexer.html',1,'grape']]], + ['idparser_172',['IdParser',['../classgrape_1_1IdParser.html',1,'grape']]], + ['iedests_173',['IEDests',['../classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html#a78456df2f73a76929d8d148a70adb76b',1,'grape::cuda::dev::DeviceFragment::IEDests()'],['../classgrape_1_1CSREdgecutFragmentBase.html#a23e18e56318cefdfff73081b7e829f82',1,'grape::CSREdgecutFragmentBase::IEDests()'],['../classgrape_1_1EdgecutFragmentBase.html#ae6706cbf82f4c866b7e767f668c2a48c',1,'grape::EdgecutFragmentBase::IEDests()']]], + ['ievent_174',['IEvent',['../structgrape_1_1cuda_1_1IEvent.html',1,'grape::cuda']]], + ['immutablecsr_175',['ImmutableCSR',['../classgrape_1_1ImmutableCSR.html',1,'grape']]], + ['immutablecsr_3c_20vid_5ft_2c_20fid_5ft_20_3e_176',['ImmutableCSR< VID_T, fid_t >',['../classgrape_1_1ImmutableCSR.html',1,'grape']]], + ['immutablecsrbuild_177',['ImmutableCSRBuild',['../classgrape_1_1ImmutableCSRBuild.html',1,'grape']]], + ['immutablecsrstreambuilder_178',['ImmutableCSRStreamBuilder',['../classgrape_1_1ImmutableCSRStreamBuilder.html',1,'grape']]], + ['immutableedgecutfragment_179',['ImmutableEdgecutFragment',['../classgrape_1_1ImmutableEdgecutFragment.html',1,'grape']]], + ['immutableedgecutfragment_3c_20oid_5ft_2c_20vid_5ft_2c_20vdata_5ft_2c_20edata_5ft_2c_20grape_3a_3aloadstrategy_3a_3akonlyout_2c_20globalvertexmap_3c_20oid_5ft_2c_20vid_5ft_20_3e_20_3e_180',['ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >',['../classgrape_1_1ImmutableEdgecutFragment.html',1,'grape']]], + ['immutableedgecutfragmenttraits_181',['ImmutableEdgecutFragmentTraits',['../structgrape_1_1ImmutableEdgecutFragmentTraits.html',1,'grape']]], + ['inarchive_182',['InArchive',['../classgrape_1_1cuda_1_1dev_1_1InArchive.html',1,'grape::cuda::dev::InArchive'],['../classgrape_1_1cuda_1_1InArchive.html',1,'grape::cuda::InArchive'],['../classgrape_1_1InArchive.html',1,'grape::InArchive']]], + ['inarchivegroup_183',['InArchiveGroup',['../classgrape_1_1cuda_1_1InArchiveGroup.html',1,'grape::cuda']]], + ['inceval_184',['IncEval',['../classgrape_1_1cuda_1_1GPUAppBase.html#a65266cf7e7a59f447a62071b0cde1f63',1,'grape::cuda::GPUAppBase::IncEval()'],['../classgrape_1_1cuda_1_1BatchShuffleAppBase.html#a125e514aab032e2180a508fb3c053b0e',1,'grape::cuda::BatchShuffleAppBase::IncEval()'],['../classgrape_1_1ParallelAppBase.html#a9084eb522f1e86179f0e6459e5f12cbd',1,'grape::ParallelAppBase::IncEval()'],['../classgrape_1_1BatchShuffleAppBase.html#ac8d7387a4235b98e116de1163678483f',1,'grape::BatchShuffleAppBase::IncEval()'],['../classgrape_1_1AutoAppBase.html#a609e1cb7e1da1a0519d462b4100741cc',1,'grape::AutoAppBase::IncEval()']]], + ['init_185',['Init',['../classgrape_1_1ParallelMessageManager.html#a416240884d421400ebac010b1276bd97',1,'grape::ParallelMessageManager::Init()'],['../classgrape_1_1MessageManagerBase.html#a7c19aa6dc18c709669969043543434d8',1,'grape::MessageManagerBase::Init()'],['../classgrape_1_1DefaultMessageManager.html#a372bb9e26892c2772a0fbf3c99d80458',1,'grape::DefaultMessageManager::Init()'],['../classgrape_1_1BatchShuffleMessageManager.html#a386712107c76d395a58d98ba70f2c4d3',1,'grape::BatchShuffleMessageManager::Init()'],['../classgrape_1_1ParallelMessageManagerOpt.html#a723d6284b5b34bfabbd5ac397c4bfccf',1,'grape::ParallelMessageManagerOpt::Init()'],['../classgrape_1_1FragmentBase.html#a7e9ada0e2a4eff43b1cc882fa4b06cd3',1,'grape::FragmentBase::Init()'],['../classgrape_1_1cuda_1_1GPUMessageManager.html#a12c82bc62972905252fb3f5f4aaf2782',1,'grape::cuda::GPUMessageManager::Init()'],['../classgrape_1_1cuda_1_1BatchShuffleMessageManager.html#a9e024282968e8fc79f36c2e1709b2c23',1,'grape::cuda::BatchShuffleMessageManager::Init()'],['../classgrape_1_1ThreadLocalMessageBuffer.html#a039b29c3e885eac1ac1a586ccb1adcca',1,'grape::ThreadLocalMessageBuffer::Init()'],['../classgrape_1_1ThreadLocalMessageBufferOpt.html#a8d0c39e1cc82ea4d0e9f0f9b585de8c7',1,'grape::ThreadLocalMessageBufferOpt::Init()'],['../classgrape_1_1AutoParallelMessageManager.html#a372bb9e26892c2772a0fbf3c99d80458',1,'grape::AutoParallelMessageManager::Init()']]], + ['initchannels_186',['InitChannels',['../classgrape_1_1ParallelMessageManager.html#abf18152867b7b49ceeb3c90885ded788',1,'grape::ParallelMessageManager::InitChannels()'],['../classgrape_1_1ParallelMessageManagerOpt.html#a32aa44dd037337a355ea84dfd3c9bf25',1,'grape::ParallelMessageManagerOpt::InitChannels()']]], + ['innervertexgid2vertex_187',['InnerVertexGid2Vertex',['../classgrape_1_1EdgecutFragmentBase.html#ae8fac35cdc13b64d8e95e9d6861101a7',1,'grape::EdgecutFragmentBase']]], + ['innervertices_188',['InnerVertices',['../classgrape_1_1EdgecutFragmentBase.html#a9ed7dd70540f65a0aec75db9bd791b96',1,'grape::EdgecutFragmentBase']]], + ['integer_5fsequence_189',['integer_sequence',['../structgrape_1_1integer__sequence.html',1,'grape']]], + ['integer_5fsequence_3c_20t_2c_20is_2e_2e_2e_20_3e_190',['integer_sequence< T, Is... >',['../structgrape_1_1integer__sequence.html',1,'grape']]], + ['internaloid_191',['InternalOID',['../structgrape_1_1InternalOID.html',1,'grape']]], + ['internaloid_3c_20std_3a_3astring_20_3e_192',['InternalOID< std::string >',['../structgrape_1_1InternalOID_3_01std_1_1string_01_4.html',1,'grape']]], + ['intervalrangemarker_193',['IntervalRangeMarker',['../structgrape_1_1cuda_1_1IntervalRangeMarker.html',1,'grape::cuda']]], + ['ioadaptorbase_194',['IOAdaptorBase',['../classgrape_1_1IOAdaptorBase.html',1,'grape']]], + ['ioedests_195',['IOEDests',['../classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html#abc8a1967ca31265f1a8684e86ab0dc78',1,'grape::cuda::dev::DeviceFragment::IOEDests()'],['../classgrape_1_1CSREdgecutFragmentBase.html#adb7d801b9734121aa95c234cf286c3aa',1,'grape::CSREdgecutFragmentBase::IOEDests()'],['../classgrape_1_1EdgecutFragmentBase.html#a9323530a16c92a253941d9451e9b10ae',1,'grape::EdgecutFragmentBase::IOEDests()']]], + ['isbordervertex_196',['IsBorderVertex',['../classgrape_1_1CSREdgecutFragmentBase.html#ab92629fda1e92daa7f40b856f6bf5c55',1,'grape::CSREdgecutFragmentBase']]], + ['isincomingbordervertex_197',['IsIncomingBorderVertex',['../classgrape_1_1CSREdgecutFragmentBase.html#abc9384eea073a7c486272f0daa1de075',1,'grape::CSREdgecutFragmentBase']]], + ['isinnervertex_198',['IsInnerVertex',['../classgrape_1_1EdgecutFragmentBase.html#ad7bb906e817c6cfe10a79490cb2586de',1,'grape::EdgecutFragmentBase::IsInnerVertex()'],['../classgrape_1_1CSREdgecutFragmentBase.html#ad7bb906e817c6cfe10a79490cb2586de',1,'grape::CSREdgecutFragmentBase::IsInnerVertex()'],['../classgrape_1_1MutableEdgecutFragment.html#ad7bb906e817c6cfe10a79490cb2586de',1,'grape::MutableEdgecutFragment::IsInnerVertex()']]], + ['isoutervertex_199',['IsOuterVertex',['../classgrape_1_1EdgecutFragmentBase.html#a2bfaf7cbb9b7da4733e67c8b51f51853',1,'grape::EdgecutFragmentBase::IsOuterVertex()'],['../classgrape_1_1CSREdgecutFragmentBase.html#a2bfaf7cbb9b7da4733e67c8b51f51853',1,'grape::CSREdgecutFragmentBase::IsOuterVertex(const Vertex< VID_T > &v) const']]], + ['isoutgoingbordervertex_200',['IsOutgoingBorderVertex',['../classgrape_1_1CSREdgecutFragmentBase.html#a8d8142a3b75a8ab523c3972874703a64',1,'grape::CSREdgecutFragmentBase']]], + ['isrange_201',['IsRange',['../structgrape_1_1batch__shuffle__message__manager__impl_1_1IsRange.html',1,'grape::batch_shuffle_message_manager_impl']]], + ['isyncbuffer_202',['ISyncBuffer',['../classgrape_1_1ISyncBuffer.html',1,'grape']]], + ['iterator_203',['iterator',['../classgrape_1_1AdjList_1_1iterator.html',1,'grape::AdjList< VID_T, EDATA_T >::iterator'],['../structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1iterator.html',1,'grape::Array< EmptyType, _Alloc >::iterator'],['../classgrape_1_1DualVertexRange_1_1iterator.html',1,'grape::DualVertexRange< VID_T >::iterator'],['../classgrape_1_1FilterAdjList_1_1iterator.html',1,'grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iterator'],['../classgrape_1_1VertexRange_1_1iterator.html',1,'grape::VertexRange< T >::iterator']]], + ['iteratorpair_204',['IteratorPair',['../classgrape_1_1IteratorPair.html',1,'grape']]] +]; diff --git a/search/all_a.html b/search/all_a.html new file mode 100644 index 00000000..3a6cac10 --- /dev/null +++ b/search/all_a.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/all_a.js b/search/all_a.js new file mode 100644 index 00000000..b11c7f61 --- /dev/null +++ b/search/all_a.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['kalongedgetooutervertex_205',['kAlongEdgeToOuterVertex',['../namespacegrape.html#ad40e01301e786e48610a7570c132d93caa79427df483e13f39252db6cf07e6d6b',1,'grape']]], + ['kalongincomingedgetooutervertex_206',['kAlongIncomingEdgeToOuterVertex',['../namespacegrape.html#ad40e01301e786e48610a7570c132d93ca27407bfcdec900987bb5a513e6634604',1,'grape']]], + ['keybuffer_207',['KeyBuffer',['../structgrape_1_1id__indexer__impl_1_1KeyBuffer.html',1,'grape::id_indexer_impl']]], + ['keybuffer_3c_20key_5ft_20_3e_208',['KeyBuffer< KEY_T >',['../structgrape_1_1id__indexer__impl_1_1KeyBuffer.html',1,'grape::id_indexer_impl']]], + ['keybuffer_3c_20nonstd_3a_3astring_5fview_20_3e_209',['KeyBuffer< nonstd::string_view >',['../structgrape_1_1id__indexer__impl_1_1KeyBuffer_3_01nonstd_1_1string__view_01_4.html',1,'grape::id_indexer_impl']]], + ['ksynconoutervertex_210',['kSyncOnOuterVertex',['../namespacegrape.html#ad40e01301e786e48610a7570c132d93cad6fbc9535d3da66fc48363c13f8c50d2',1,'grape']]] +]; diff --git a/search/all_b.html b/search/all_b.html new file mode 100644 index 00000000..130deb4e --- /dev/null +++ b/search/all_b.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/all_b.js b/search/all_b.js new file mode 100644 index 00000000..96d10d16 --- /dev/null +++ b/search/all_b.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['lineparserbase_211',['LineParserBase',['../classgrape_1_1LineParserBase.html',1,'grape']]], + ['lineparserforefile_212',['LineParserForEFile',['../classgrape_1_1LineParserBase.html#a53b6f4b5dc45f0dec0574e22a0d502a3',1,'grape::LineParserBase::LineParserForEFile()'],['../classgrape_1_1TSVLineParser.html#afd49a2789ef6e420cc9634b9cd48aac5',1,'grape::TSVLineParser::LineParserForEFile()']]], + ['lineparserforvfile_213',['LineParserForVFile',['../classgrape_1_1LineParserBase.html#abd90abcd17d30e4fcc0bfa369b0c3a58',1,'grape::LineParserBase::LineParserForVFile()'],['../classgrape_1_1TSVLineParser.html#a113ea3f2c03d05b809480fa15165a8ac',1,'grape::TSVLineParser::LineParserForVFile()']]], + ['loadgraphspec_214',['LoadGraphSpec',['../structgrape_1_1LoadGraphSpec.html',1,'grape']]], + ['loadstrategy_215',['LoadStrategy',['../namespacegrape.html#ac82896434bbf475bc211722dc2257fbf',1,'grape']]], + ['localioadaptor_216',['LocalIOAdaptor',['../classgrape_1_1LocalIOAdaptor.html',1,'grape']]], + ['localvertexmap_217',['LocalVertexMap',['../classgrape_1_1LocalVertexMap.html',1,'grape']]], + ['localvertexmapbuilder_218',['LocalVertexMapBuilder',['../classgrape_1_1LocalVertexMapBuilder.html',1,'grape']]] +]; diff --git a/search/all_c.html b/search/all_c.html new file mode 100644 index 00000000..3dd5af06 --- /dev/null +++ b/search/all_c.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/all_c.js b/search/all_c.js new file mode 100644 index 00000000..a63c4e9c --- /dev/null +++ b/search/all_c.js @@ -0,0 +1,25 @@ +var searchData= +[ + ['make_5finteger_5fsequence_219',['make_integer_sequence',['../structgrape_1_1make__integer__sequence.html',1,'grape']]], + ['make_5finteger_5fsequence_3c_20t_2c_200_2c_20is_2e_2e_2e_20_3e_220',['make_integer_sequence< T, 0, Is... >',['../structgrape_1_1make__integer__sequence_3_01T_00_010_00_01Is_8_8_8_01_4.html',1,'grape']]], + ['marker_221',['Marker',['../structgrape_1_1cuda_1_1Marker.html',1,'grape::cuda']]], + ['messagebuffer_222',['MessageBuffer',['../structgrape_1_1MessageBuffer.html',1,'grape']]], + ['messagebufferpool_223',['MessageBufferPool',['../classgrape_1_1MessageBufferPool.html',1,'grape']]], + ['messageinbuffer_224',['MessageInBuffer',['../classgrape_1_1MessageInBuffer.html',1,'grape']]], + ['messagemanager_225',['MessageManager',['../classgrape_1_1cuda_1_1dev_1_1MessageManager.html',1,'grape::cuda::dev']]], + ['messagemanagerbase_226',['MessageManagerBase',['../classgrape_1_1MessageManagerBase.html',1,'grape']]], + ['messagestrategy_227',['MessageStrategy',['../namespacegrape.html#ad40e01301e786e48610a7570c132d93c',1,'grape']]], + ['mflcounter_228',['MFLCounter',['../classgrape_1_1cuda_1_1dev_1_1MFLCounter.html',1,'grape::cuda::dev']]], + ['microbuffer_229',['MicroBuffer',['../structgrape_1_1MicroBuffer.html',1,'grape']]], + ['mutablecsr_230',['MutableCSR',['../classgrape_1_1MutableCSR.html',1,'grape']]], + ['mutablecsr_3c_20vid_5ft_2c_20grape_3a_3anbr_3c_20vid_5ft_2c_20edata_5ft_20_3e_20_3e_231',['MutableCSR< VID_T, grape::Nbr< VID_T, EDATA_T > >',['../classgrape_1_1MutableCSR.html',1,'grape']]], + ['mutablecsr_3c_20vid_5ft_2c_20nbr_3c_20vid_5ft_2c_20edata_5ft_20_3e_20_3e_232',['MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >',['../classgrape_1_1MutableCSR_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4.html',1,'grape']]], + ['mutablecsrbuilder_233',['MutableCSRBuilder',['../classgrape_1_1MutableCSRBuilder.html',1,'grape']]], + ['mutablecsrbuilder_3c_20vid_5ft_2c_20grape_3a_3anbr_3c_20vid_5ft_2c_20edata_5ft_20_3e_20_3e_234',['MutableCSRBuilder< VID_T, grape::Nbr< VID_T, EDATA_T > >',['../classgrape_1_1MutableCSRBuilder.html',1,'grape']]], + ['mutablecsrbuilder_3c_20vid_5ft_2c_20nbr_3c_20vid_5ft_2c_20edata_5ft_20_3e_20_3e_235',['MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >',['../classgrape_1_1MutableCSRBuilder_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4.html',1,'grape']]], + ['mutableedgecutfragment_236',['MutableEdgecutFragment',['../classgrape_1_1MutableEdgecutFragment.html',1,'grape']]], + ['mutableedgecutfragmenttraits_237',['MutableEdgecutFragmentTraits',['../structgrape_1_1MutableEdgecutFragmentTraits.html',1,'grape']]], + ['mutation_238',['Mutation',['../structgrape_1_1Mutation.html',1,'grape']]], + ['mutation_3c_20vid_5ft_2c_20vdata_5ft_2c_20edata_5ft_20_3e_239',['Mutation< vid_t, vdata_t, edata_t >',['../structgrape_1_1Mutation.html',1,'grape']]], + ['mutationcontext_240',['MutationContext',['../classgrape_1_1MutationContext.html',1,'grape']]] +]; diff --git a/search/all_d.html b/search/all_d.html new file mode 100644 index 00000000..af7f2f0f --- /dev/null +++ b/search/all_d.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/all_d.js b/search/all_d.js new file mode 100644 index 00000000..04cf6765 --- /dev/null +++ b/search/all_d.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['nbr_241',['Nbr',['../structgrape_1_1Nbr.html',1,'grape']]], + ['nbr_3c_20vid_5ft_2c_20emptytype_20_3e_242',['Nbr< VID_T, EmptyType >',['../structgrape_1_1Nbr_3_01VID__T_00_01EmptyType_01_4.html',1,'grape']]], + ['nbr_3c_20vid_5ft_2c_20grape_3a_3aemptytype_20_3e_243',['Nbr< VID_T, grape::EmptyType >',['../structgrape_1_1Nbr.html',1,'grape']]], + ['nonblockingqueue_244',['NonblockingQueue',['../classgrape_1_1NonblockingQueue.html',1,'grape']]], + ['np_5flocal_245',['np_local',['../structgrape_1_1cuda_1_1np__local.html',1,'grape::cuda']]], + ['np_5fshared_246',['np_shared',['../uniongrape_1_1cuda_1_1np__shared.html',1,'grape::cuda']]] +]; diff --git a/search/all_e.html b/search/all_e.html new file mode 100644 index 00000000..e25df423 --- /dev/null +++ b/search/all_e.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/all_e.js b/search/all_e.js new file mode 100644 index 00000000..ed2f0342 --- /dev/null +++ b/search/all_e.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['oedests_247',['OEDests',['../classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html#a254d524394f3b0a4af0dd583a1d00289',1,'grape::cuda::dev::DeviceFragment::OEDests()'],['../classgrape_1_1CSREdgecutFragmentBase.html#a902a423e1149e84364ca4ff8a7407b4e',1,'grape::CSREdgecutFragmentBase::OEDests()'],['../classgrape_1_1EdgecutFragmentBase.html#ae8548c5043d893806902bc039b1f42c9',1,'grape::EdgecutFragmentBase::OEDests()']]], + ['outarchive_248',['OutArchive',['../classgrape_1_1cuda_1_1dev_1_1OutArchive.html',1,'grape::cuda::dev::OutArchive'],['../classgrape_1_1cuda_1_1OutArchive.html',1,'grape::cuda::OutArchive'],['../classgrape_1_1OutArchive.html',1,'grape::OutArchive']]], + ['outarchivegroup_249',['OutArchiveGroup',['../classgrape_1_1cuda_1_1OutArchiveGroup.html',1,'grape::cuda']]], + ['outervertexgid2vertex_250',['OuterVertexGid2Vertex',['../classgrape_1_1EdgecutFragmentBase.html#a6c885e5ef9c6d51563bf2ee141f433a7',1,'grape::EdgecutFragmentBase']]], + ['outervertices_251',['OuterVertices',['../classgrape_1_1EdgecutFragmentBase.html#a6a28cd2608313d8d3fa25511de7a1021',1,'grape::EdgecutFragmentBase']]], + ['output_252',['Output',['../classgrape_1_1ContextBase.html#aebfb5605fa72c78e62d2931a61f1fefe',1,'grape::ContextBase']]] +]; diff --git a/search/all_f.html b/search/all_f.html new file mode 100644 index 00000000..b23da6ce --- /dev/null +++ b/search/all_f.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/all_f.js b/search/all_f.js new file mode 100644 index 00000000..cace03fa --- /dev/null +++ b/search/all_f.js @@ -0,0 +1,16 @@ +var searchData= +[ + ['parallelappbase_253',['ParallelAppBase',['../classgrape_1_1ParallelAppBase.html',1,'grape']]], + ['parallelengine_254',['ParallelEngine',['../classgrape_1_1cuda_1_1ParallelEngine.html',1,'grape::cuda::ParallelEngine'],['../classgrape_1_1ParallelEngine.html',1,'grape::ParallelEngine']]], + ['parallelenginespec_255',['ParallelEngineSpec',['../structgrape_1_1ParallelEngineSpec.html',1,'grape']]], + ['parallelmessagemanager_256',['ParallelMessageManager',['../classgrape_1_1ParallelMessageManager.html',1,'grape']]], + ['parallelmessagemanageropt_257',['ParallelMessageManagerOpt',['../classgrape_1_1ParallelMessageManagerOpt.html',1,'grape']]], + ['parallelprocess_258',['ParallelProcess',['../classgrape_1_1ParallelMessageManagerOpt.html#a2596a8bb2f4db7b2276487131ca120f2',1,'grape::ParallelMessageManagerOpt::ParallelProcess(int thread_num, const FUNC_T &func)'],['../classgrape_1_1ParallelMessageManagerOpt.html#a3b23114796b4174df6f6b9ad4c917481',1,'grape::ParallelMessageManagerOpt::ParallelProcess(int thread_num, const GRAPH_T &frag, const FUNC_T &func)'],['../classgrape_1_1ParallelMessageManager.html#a80396c0b54b1b8326bac1f8151674f46',1,'grape::ParallelMessageManager::ParallelProcess(int thread_num, const FUNC_T &func)'],['../classgrape_1_1ParallelMessageManager.html#a1f2a3548214ef2b2a26bd83a14bc8c23',1,'grape::ParallelMessageManager::ParallelProcess(int thread_num, const GRAPH_T &frag, const FUNC_T &func)']]], + ['peval_259',['PEval',['../classgrape_1_1cuda_1_1GPUAppBase.html#a56e33c523e44f19acb9dc037ba81baea',1,'grape::cuda::GPUAppBase::PEval()'],['../classgrape_1_1AutoAppBase.html#a5eee8f8b1ab47163aa4f30c209874fce',1,'grape::AutoAppBase::PEval()'],['../classgrape_1_1BatchShuffleAppBase.html#a92a9c61ffbf79f145d6272cf3997c523',1,'grape::BatchShuffleAppBase::PEval()'],['../classgrape_1_1ParallelAppBase.html#a98ac2f234e338e37198789f23e9c77a2',1,'grape::ParallelAppBase::PEval()'],['../classgrape_1_1cuda_1_1BatchShuffleAppBase.html#aa860868a3dd7e46b0998ba6296622a98',1,'grape::cuda::BatchShuffleAppBase::PEval()']]], + ['podshuffle_260',['PodShuffle',['../structgrape_1_1batch__shuffle__message__manager__impl_1_1PodShuffle.html',1,'grape::batch_shuffle_message_manager_impl']]], + ['postprocess_261',['PostProcess',['../classgrape_1_1batch__shuffle__message__manager__impl_1_1PostProcess.html',1,'grape::batch_shuffle_message_manager_impl']]], + ['postprocessbase_262',['PostProcessBase',['../classgrape_1_1batch__shuffle__message__manager__impl_1_1PostProcessBase.html',1,'grape::batch_shuffle_message_manager_impl']]], + ['prepareconf_263',['PrepareConf',['../structgrape_1_1PrepareConf.html',1,'grape']]], + ['preparetorunapp_264',['PrepareToRunApp',['../classgrape_1_1cuda_1_1HostFragment.html#ad5a604fe8f6fc60c641d14af222847df',1,'grape::cuda::HostFragment::PrepareToRunApp()'],['../classgrape_1_1CSREdgecutFragmentBase.html#a8de4f60f805c5c24b6ad62b720e77ad1',1,'grape::CSREdgecutFragmentBase::PrepareToRunApp()'],['../classgrape_1_1FragmentBase.html#a5c9260b378b79d2e5e4cc6d8471755fd',1,'grape::FragmentBase::PrepareToRunApp()'],['../classgrape_1_1ImmutableEdgecutFragment.html#a8155f12679612162b8d507b6041012b2',1,'grape::ImmutableEdgecutFragment::PrepareToRunApp()']]], + ['put_265',['Put',['../classgrape_1_1BlockingQueue.html#acbd16945158880a82b54af44c421f458',1,'grape::BlockingQueue::Put(const T &item)'],['../classgrape_1_1BlockingQueue.html#af5fee1ef355f9170001f4b7092719a7d',1,'grape::BlockingQueue::Put(T &&item)'],['../classgrape_1_1NonblockingQueue.html#acc3594febad1915b31fa401f689ba7cb',1,'grape::NonblockingQueue::Put(const T &item)'],['../classgrape_1_1NonblockingQueue.html#a78dacbc53bc933a92e3fd0112d01ca9b',1,'grape::NonblockingQueue::Put(T &&item)']]] +]; diff --git a/search/classes_0.html b/search/classes_0.html new file mode 100644 index 00000000..af8159ee --- /dev/null +++ b/search/classes_0.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/classes_0.js b/search/classes_0.js new file mode 100644 index 00000000..0e8667a7 --- /dev/null +++ b/search/classes_0.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['_5f_5farray_5fbase_359',['__Array_base',['../structgrape_1_1Array_1_1____Array__base.html',1,'grape::Array< _Tp, _Alloc >::__Array_base'],['../structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1____Array__base.html',1,'grape::Array< EmptyType, _Alloc >::__Array_base']]], + ['_5fconstructtransaction_360',['_ConstructTransaction',['../structgrape_1_1Array_1_1__ConstructTransaction.html',1,'grape::Array']]] +]; diff --git a/search/classes_1.html b/search/classes_1.html new file mode 100644 index 00000000..576e9168 --- /dev/null +++ b/search/classes_1.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/classes_1.js b/search/classes_1.js new file mode 100644 index 00000000..14bffd43 --- /dev/null +++ b/search/classes_1.js @@ -0,0 +1,37 @@ +var searchData= +[ + ['add_5fconst_5fref_361',['add_const_ref',['../structgrape_1_1add__const__ref.html',1,'grape']]], + ['add_5fconst_5fref_3c_20const_20t_20_26_20_3e_362',['add_const_ref< const T & >',['../structgrape_1_1add__const__ref_3_01const_01T_01_6_01_4.html',1,'grape']]], + ['add_5fconst_5fref_3c_20t_20_26_20_3e_363',['add_const_ref< T & >',['../structgrape_1_1add__const__ref_3_01T_01_6_01_4.html',1,'grape']]], + ['add_5fref_364',['add_ref',['../structgrape_1_1add__ref.html',1,'grape']]], + ['add_5fref_3c_20t_20_26_20_3e_365',['add_ref< T & >',['../structgrape_1_1add__ref_3_01T_01_6_01_4.html',1,'grape']]], + ['adjlist_366',['AdjList',['../classgrape_1_1AdjList.html',1,'grape::AdjList< VID_T, EDATA_T >'],['../structgrape_1_1mutable__csr__impl_1_1AdjList.html',1,'grape::mutable_csr_impl::AdjList< NBR_T >']]], + ['ap_5fevent_367',['ap_event',['../structgrape_1_1AutoParallelMessageManager_1_1ap__event.html',1,'grape::AutoParallelMessageManager']]], + ['archiveshuffle_368',['ArchiveShuffle',['../structgrape_1_1batch__shuffle__message__manager__impl_1_1ArchiveShuffle.html',1,'grape::batch_shuffle_message_manager_impl']]], + ['array_369',['Array',['../classgrape_1_1Array.html',1,'grape']]], + ['array_3c_20emptytype_2c_20_5falloc_20_3e_370',['Array< EmptyType, _Alloc >',['../classgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4.html',1,'grape']]], + ['array_3c_20nbr_5ft_20_2a_2c_20grape_3a_3adefaultallocator_3c_20nbr_5ft_20_2a_20_3e_20_3e_371',['Array< nbr_t *, grape::DefaultAllocator< nbr_t * > >',['../classgrape_1_1Array.html',1,'grape']]], + ['array_3c_20nbr_5ft_2c_20grape_3a_3adefaultallocator_3c_20nbr_5ft_20_3e_20_3e_372',['Array< nbr_t, grape::DefaultAllocator< nbr_t > >',['../classgrape_1_1Array.html',1,'grape']]], + ['array_3c_20t_2c_20allocator_3c_20t_20_3e_20_3e_373',['Array< T, Allocator< T > >',['../classgrape_1_1Array.html',1,'grape']]], + ['array_3c_20t_2c_20grape_3a_3aallocator_3c_20t_20_3e_20_3e_374',['Array< T, grape::Allocator< T > >',['../classgrape_1_1Array.html',1,'grape']]], + ['array_3c_20t_2c_20grape_3a_3adefaultallocator_3c_20t_20_3e_20_3e_375',['Array< T, grape::DefaultAllocator< T > >',['../classgrape_1_1Array.html',1,'grape']]], + ['array_3c_20vdata_5ft_2c_20grape_3a_3adefaultallocator_3c_20vdata_5ft_20_3e_20_3e_376',['Array< VDATA_T, grape::DefaultAllocator< VDATA_T > >',['../classgrape_1_1Array.html',1,'grape']]], + ['array_3c_20vid_5ft_2c_20grape_3a_3adefaultallocator_3c_20vid_5ft_20_3e_20_3e_377',['Array< VID_T, grape::DefaultAllocator< VID_T > >',['../classgrape_1_1Array.html',1,'grape']]], + ['arrayview_378',['ArrayView',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20char_20_3e_379',['ArrayView< char >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20fid_5ft_20_2a_20_3e_380',['ArrayView< fid_t * >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20fid_5ft_20_3e_381',['ArrayView< fid_t >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20grape_3a_3acuda_3a_3aarrayview_3c_20grape_3a_3anbr_20_2a_20_3e_20_3e_382',['ArrayView< grape::cuda::ArrayView< grape::Nbr * > >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20grape_3a_3acuda_3a_3aarrayview_3c_20vertex_3c_20vid_5ft_20_3e_20_3e_20_3e_383',['ArrayView< grape::cuda::ArrayView< Vertex< VID_T > > >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20grape_3a_3acuda_3a_3adev_3a_3ainarchive_20_3e_384',['ArrayView< grape::cuda::dev::InArchive >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20grape_3a_3aedge_20_3e_385',['ArrayView< grape::Edge >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20grape_3a_3anbr_20_2a_20_3e_386',['ArrayView< grape::Nbr * >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20grape_3a_3anbr_20_3e_387',['ArrayView< grape::Nbr >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20uint32_5ft_20_3e_388',['ArrayView< uint32_t >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20uint64_5ft_20_3e_389',['ArrayView< uint64_t >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20vdata_5ft_20_3e_390',['ArrayView< VDATA_T >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20vertexrange_3c_20vid_5ft_20_3e_20_3e_391',['ArrayView< VertexRange< VID_T > >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['arrayview_3c_20vid_5ft_20_3e_392',['ArrayView< VID_T >',['../classgrape_1_1cuda_1_1ArrayView.html',1,'grape::cuda']]], + ['autoappbase_393',['AutoAppBase',['../classgrape_1_1AutoAppBase.html',1,'grape']]], + ['autoparallelmessagemanager_394',['AutoParallelMessageManager',['../classgrape_1_1AutoParallelMessageManager.html',1,'grape']]] +]; diff --git a/search/classes_10.html b/search/classes_10.html new file mode 100644 index 00000000..4af2c805 --- /dev/null +++ b/search/classes_10.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/classes_10.js b/search/classes_10.js new file mode 100644 index 00000000..6902be97 --- /dev/null +++ b/search/classes_10.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['queue_546',['Queue',['../classgrape_1_1cuda_1_1dev_1_1Queue.html',1,'grape::cuda::dev::Queue< T, SIZE_T >'],['../classgrape_1_1cuda_1_1Queue.html',1,'grape::cuda::Queue< T, SIZE_T >']]], + ['queue_3c_20t_2c_20uint32_5ft_20_3e_547',['Queue< T, uint32_t >',['../classgrape_1_1cuda_1_1dev_1_1Queue_3_01T_00_01uint32__t_01_4.html',1,'grape::cuda::dev']]], + ['queue_3c_20t_2c_20uint64_5ft_20_3e_548',['Queue< T, uint64_t >',['../classgrape_1_1cuda_1_1dev_1_1Queue_3_01T_00_01uint64__t_01_4.html',1,'grape::cuda::dev']]] +]; diff --git a/search/classes_11.html b/search/classes_11.html new file mode 100644 index 00000000..ed167c84 --- /dev/null +++ b/search/classes_11.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/classes_11.js b/search/classes_11.js new file mode 100644 index 00000000..955b629f --- /dev/null +++ b/search/classes_11.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['rangemarker_549',['RangeMarker',['../structgrape_1_1cuda_1_1RangeMarker.html',1,'grape::cuda']]], + ['refbitset_550',['RefBitset',['../classgrape_1_1RefBitset.html',1,'grape']]] +]; diff --git a/search/classes_12.html b/search/classes_12.html new file mode 100644 index 00000000..90bc9f57 --- /dev/null +++ b/search/classes_12.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/classes_12.js b/search/classes_12.js new file mode 100644 index 00000000..5066414d --- /dev/null +++ b/search/classes_12.js @@ -0,0 +1,34 @@ +var searchData= +[ + ['segmentedpartitioner_551',['SegmentedPartitioner',['../classgrape_1_1SegmentedPartitioner.html',1,'grape']]], + ['segmentedpartitioner_3c_20std_3a_3astring_20_3e_552',['SegmentedPartitioner< std::string >',['../classgrape_1_1SegmentedPartitioner_3_01std_1_1string_01_4.html',1,'grape']]], + ['serializedsize_553',['SerializedSize',['../structgrape_1_1SerializedSize.html',1,'grape']]], + ['serializedsize_3c_20deltavarintencoder_3c_20t_20_3e_20_3e_554',['SerializedSize< DeltaVarintEncoder< T > >',['../structgrape_1_1SerializedSize_3_01DeltaVarintEncoder_3_01T_01_4_01_4.html',1,'grape']]], + ['serializedsize_3c_20emptytype_20_3e_555',['SerializedSize< EmptyType >',['../structgrape_1_1SerializedSize_3_01EmptyType_01_4.html',1,'grape']]], + ['serializedsize_3c_20nonstd_3a_3astring_5fview_20_3e_556',['SerializedSize< nonstd::string_view >',['../structgrape_1_1SerializedSize_3_01nonstd_1_1string__view_01_4.html',1,'grape']]], + ['serializedsize_3c_20std_3a_3astring_20_3e_557',['SerializedSize< std::string >',['../structgrape_1_1SerializedSize_3_01std_1_1string_01_4.html',1,'grape']]], + ['serializedsize_3c_20varintencoder_20_3e_558',['SerializedSize< VarintEncoder >',['../structgrape_1_1SerializedSize_3_01VarintEncoder_01_4.html',1,'grape']]], + ['sharedarray_559',['SharedArray',['../classgrape_1_1cuda_1_1SharedArray.html',1,'grape::cuda']]], + ['sharedarray_3c_20uint32_5ft_20_3e_560',['SharedArray< uint32_t >',['../classgrape_1_1cuda_1_1SharedArray.html',1,'grape::cuda']]], + ['sharedvalue_561',['SharedValue',['../classgrape_1_1cuda_1_1SharedValue.html',1,'grape::cuda']]], + ['sharedvalue_3c_20size_5ft_20_3e_562',['SharedValue< SIZE_T >',['../classgrape_1_1cuda_1_1SharedValue.html',1,'grape::cuda']]], + ['sharedvalue_3c_20uint32_5ft_20_3e_563',['SharedValue< uint32_t >',['../classgrape_1_1cuda_1_1SharedValue.html',1,'grape::cuda']]], + ['shmhashtable_564',['ShmHashTable',['../classgrape_1_1cuda_1_1dev_1_1ShmHashTable.html',1,'grape::cuda::dev']]], + ['shufflebuffer_565',['ShuffleBuffer',['../structgrape_1_1ShuffleBuffer.html',1,'grape']]], + ['shufflebuffer_3c_20first_20_3e_566',['ShuffleBuffer< First >',['../structgrape_1_1ShuffleBuffer.html',1,'grape']]], + ['shufflebuffer_3c_20nonstd_3a_3astring_5fview_20_3e_567',['ShuffleBuffer< nonstd::string_view >',['../structgrape_1_1ShuffleBuffer_3_01nonstd_1_1string__view_01_4.html',1,'grape']]], + ['shufflebuffertuple_568',['ShuffleBufferTuple',['../structgrape_1_1ShuffleBufferTuple.html',1,'grape']]], + ['shufflebuffertuple_3c_20first_20_3e_569',['ShuffleBufferTuple< First >',['../structgrape_1_1ShuffleBufferTuple_3_01First_01_4.html',1,'grape']]], + ['shufflebuffertuple_3c_20types_2e_2e_2e_20_3e_570',['ShuffleBufferTuple< TYPES... >',['../structgrape_1_1ShuffleBufferTuple.html',1,'grape']]], + ['shufflebuffertuple_5felement_571',['ShuffleBufferTuple_element',['../structgrape_1_1ShuffleBufferTuple__element.html',1,'grape']]], + ['shufflebuffertuple_5felement_3c_200_2c_20shufflebuffertuple_3c_20first_2c_20rest_2e_2e_2e_20_3e_20_3e_572',['ShuffleBufferTuple_element< 0, ShuffleBufferTuple< First, Rest... > >',['../structgrape_1_1ShuffleBufferTuple__element_3_010_00_01ShuffleBufferTuple_3_01First_00_01Rest_8_8_8_01_4_01_4.html',1,'grape']]], + ['shufflebuffertuple_5felement_3c_20index_20_2d_201_2c_20shufflebuffertuple_3c_20tail_2e_2e_2e_20_3e_20_3e_573',['ShuffleBufferTuple_element< index - 1, ShuffleBufferTuple< Tail... > >',['../structgrape_1_1ShuffleBufferTuple__element.html',1,'grape']]], + ['shufflebuffertuple_5felement_3c_20index_2c_20shufflebuffertuple_3c_20first_2c_20tail_2e_2e_2e_20_3e_20_3e_574',['ShuffleBufferTuple_element< index, ShuffleBufferTuple< First, Tail... > >',['../structgrape_1_1ShuffleBufferTuple__element_3_01index_00_01ShuffleBufferTuple_3_01First_00_01Tail_8_8_8_01_4_01_4.html',1,'grape']]], + ['shufflein_575',['ShuffleIn',['../classgrape_1_1ShuffleIn.html',1,'grape']]], + ['shuffleinplace_576',['ShuffleInplace',['../structgrape_1_1batch__shuffle__message__manager__impl_1_1ShuffleInplace.html',1,'grape::batch_shuffle_message_manager_impl']]], + ['shuffleout_577',['ShuffleOut',['../classgrape_1_1ShuffleOut.html',1,'grape']]], + ['spinlock_578',['SpinLock',['../classgrape_1_1SpinLock.html',1,'grape']]], + ['stream_579',['Stream',['../classgrape_1_1cuda_1_1Stream.html',1,'grape::cuda']]], + ['stringviewvector_580',['StringViewVector',['../classgrape_1_1StringViewVector.html',1,'grape']]], + ['syncbuffer_581',['SyncBuffer',['../classgrape_1_1SyncBuffer.html',1,'grape']]] +]; diff --git a/search/classes_13.html b/search/classes_13.html new file mode 100644 index 00000000..fadc1604 --- /dev/null +++ b/search/classes_13.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/classes_13.js b/search/classes_13.js new file mode 100644 index 00000000..d07d7c3e --- /dev/null +++ b/search/classes_13.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['tb_5fnp_582',['tb_np',['../structgrape_1_1cuda_1_1tb__np.html',1,'grape::cuda']]], + ['terminateinfo_583',['TerminateInfo',['../structgrape_1_1TerminateInfo.html',1,'grape']]], + ['threadlocalmessagebuffer_584',['ThreadLocalMessageBuffer',['../classgrape_1_1ThreadLocalMessageBuffer.html',1,'grape']]], + ['threadlocalmessagebufferopt_585',['ThreadLocalMessageBufferOpt',['../classgrape_1_1ThreadLocalMessageBufferOpt.html',1,'grape']]], + ['threadpool_586',['ThreadPool',['../classThreadPool.html',1,'']]], + ['traits_3c_20grape_3a_3avertex_3c_20t_20_3e_20_3e_587',['Traits< grape::Vertex< T > >',['../structcub_1_1Traits_3_01grape_1_1Vertex_3_01T_01_4_01_4.html',1,'cub']]], + ['tsvlineparser_588',['TSVLineParser',['../classgrape_1_1TSVLineParser.html',1,'grape']]], + ['tsvlineparser_3c_20typename_20frag_5ft_3a_3aoid_5ft_2c_20typename_20frag_5ft_3a_3avdata_5ft_2c_20typename_20frag_5ft_3a_3aedata_5ft_20_3e_589',['TSVLineParser< typename FRAG_T::oid_t, typename FRAG_T::vdata_t, typename FRAG_T::edata_t >',['../classgrape_1_1TSVLineParser.html',1,'grape']]] +]; diff --git a/search/classes_14.html b/search/classes_14.html new file mode 100644 index 00000000..ad373c80 --- /dev/null +++ b/search/classes_14.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/classes_14.js b/search/classes_14.js new file mode 100644 index 00000000..50163e72 --- /dev/null +++ b/search/classes_14.js @@ -0,0 +1,26 @@ +var searchData= +[ + ['varintdecoder_590',['VarintDecoder',['../classgrape_1_1VarintDecoder.html',1,'grape']]], + ['varintencoder_591',['VarintEncoder',['../classgrape_1_1VarintEncoder.html',1,'grape']]], + ['varintutil_592',['VarintUtil',['../structgrape_1_1VarintUtil.html',1,'grape']]], + ['varintutil_3c_20uint32_5ft_20_3e_593',['VarintUtil< uint32_t >',['../structgrape_1_1VarintUtil_3_01uint32__t_01_4.html',1,'grape']]], + ['varintutil_3c_20uint64_5ft_20_3e_594',['VarintUtil< uint64_t >',['../structgrape_1_1VarintUtil_3_01uint64__t_01_4.html',1,'grape']]], + ['vertex_595',['Vertex',['../structgrape_1_1internal_1_1Vertex.html',1,'grape::internal::Vertex< VID_T, VDATA_T >'],['../classgrape_1_1Vertex.html',1,'grape::Vertex< T >']]], + ['vertex_3c_20vid_5ft_20_3e_596',['Vertex< VID_T >',['../classgrape_1_1Vertex.html',1,'grape']]], + ['vertex_3c_20vid_5ft_2c_20emptytype_20_3e_597',['Vertex< VID_T, EmptyType >',['../structgrape_1_1internal_1_1Vertex_3_01VID__T_00_01EmptyType_01_4.html',1,'grape::internal']]], + ['vertex_3c_20vid_5ft_2c_20grape_3a_3aemptytype_20_3e_598',['Vertex< VID_T, grape::EmptyType >',['../structgrape_1_1internal_1_1Vertex.html',1,'grape::internal']]], + ['vertexarray_599',['VertexArray',['../classgrape_1_1cuda_1_1dev_1_1VertexArray.html',1,'grape::cuda::dev::VertexArray< T, VID_T >'],['../classgrape_1_1cuda_1_1VertexArray.html',1,'grape::cuda::VertexArray< T, VID_T >'],['../classgrape_1_1VertexArray.html',1,'grape::VertexArray< VERTEX_SET_T, T >']]], + ['vertexarray_3c_20dualvertexrange_3c_20vid_5ft_20_3e_2c_20t_20_3e_600',['VertexArray< DualVertexRange< VID_T >, T >',['../classgrape_1_1VertexArray_3_01DualVertexRange_3_01VID__T_01_4_00_01T_01_4.html',1,'grape']]], + ['vertexarray_3c_20grape_3a_3avertexrange_3c_20vid_5ft_20_3e_2c_20t_20_3e_601',['VertexArray< grape::VertexRange< VID_T >, T >',['../classgrape_1_1VertexArray.html',1,'grape']]], + ['vertexarray_3c_20inner_5fvertices_5ft_2c_20grape_3a_3anbr_20_2a_20_3e_602',['VertexArray< inner_vertices_t, grape::Nbr * >',['../classgrape_1_1VertexArray.html',1,'grape']]], + ['vertexarray_3c_20vertex_5fset_5ft_2c_20bool_20_3e_603',['VertexArray< VERTEX_SET_T, bool >',['../classgrape_1_1VertexArray.html',1,'grape']]], + ['vertexarray_3c_20vertexrange_3c_20vid_5ft_20_3e_2c_20t_20_3e_604',['VertexArray< VertexRange< VID_T >, T >',['../classgrape_1_1VertexArray_3_01VertexRange_3_01VID__T_01_4_00_01T_01_4.html',1,'grape']]], + ['vertexdatacontext_605',['VertexDataContext',['../classgrape_1_1VertexDataContext.html',1,'grape']]], + ['vertexmapbase_606',['VertexMapBase',['../classgrape_1_1VertexMapBase.html',1,'grape']]], + ['vertexmapbase_3c_20oid_5ft_2c_20vid_5ft_2c_20hashpartitioner_3c_20oid_5ft_20_3e_20_3e_607',['VertexMapBase< OID_T, VID_T, HashPartitioner< OID_T > >',['../classgrape_1_1VertexMapBase.html',1,'grape']]], + ['vertexmetadata_608',['VertexMetadata',['../structgrape_1_1cuda_1_1VertexMetadata.html',1,'grape::cuda']]], + ['vertexmetadata_3c_20vid_5ft_2c_20grape_3a_3aemptytype_20_3e_609',['VertexMetadata< VID_T, grape::EmptyType >',['../structgrape_1_1cuda_1_1VertexMetadata_3_01VID__T_00_01grape_1_1EmptyType_01_4.html',1,'grape::cuda']]], + ['vertexrange_610',['VertexRange',['../classgrape_1_1VertexRange.html',1,'grape']]], + ['vertexrange_3c_20vid_5ft_20_3e_611',['VertexRange< VID_T >',['../classgrape_1_1VertexRange.html',1,'grape']]], + ['voidcontext_612',['VoidContext',['../classgrape_1_1VoidContext.html',1,'grape']]] +]; diff --git a/search/classes_15.html b/search/classes_15.html new file mode 100644 index 00000000..55e6be46 --- /dev/null +++ b/search/classes_15.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/classes_15.js b/search/classes_15.js new file mode 100644 index 00000000..ad9195de --- /dev/null +++ b/search/classes_15.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['warp_5fnp_613',['warp_np',['../structgrape_1_1cuda_1_1warp__np.html',1,'grape::cuda']]], + ['worker_614',['Worker',['../classgrape_1_1Worker.html',1,'grape']]], + ['workeriterator_615',['WorkerIterator',['../classgrape_1_1sync__comm_1_1WorkerIterator.html',1,'grape::sync_comm']]], + ['worksourcearray_616',['WorkSourceArray',['../structgrape_1_1cuda_1_1WorkSourceArray.html',1,'grape::cuda']]], + ['worksourcerange_617',['WorkSourceRange',['../structgrape_1_1cuda_1_1WorkSourceRange.html',1,'grape::cuda']]] +]; diff --git a/search/classes_2.html b/search/classes_2.html new file mode 100644 index 00000000..956405e5 --- /dev/null +++ b/search/classes_2.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/classes_2.js b/search/classes_2.js new file mode 100644 index 00000000..fa2af270 --- /dev/null +++ b/search/classes_2.js @@ -0,0 +1,18 @@ +var searchData= +[ + ['basicfragmentloader_395',['BasicFragmentLoader',['../classgrape_1_1BasicFragmentLoader.html',1,'grape']]], + ['basicfragmentloader_3c_20fragment_5ft_2c_20io_5fadaptor_5ft_20_3e_396',['BasicFragmentLoader< fragment_t, io_adaptor_t >',['../classgrape_1_1BasicFragmentLoader.html',1,'grape']]], + ['basicfragmentmutator_397',['BasicFragmentMutator',['../classgrape_1_1BasicFragmentMutator.html',1,'grape']]], + ['batchshuffleappbase_398',['BatchShuffleAppBase',['../classgrape_1_1BatchShuffleAppBase.html',1,'grape::BatchShuffleAppBase< FRAG_T, CONTEXT_T >'],['../classgrape_1_1cuda_1_1BatchShuffleAppBase.html',1,'grape::cuda::BatchShuffleAppBase< FRAG_T, CONTEXT_T >']]], + ['batchshufflemessagemanager_399',['BatchShuffleMessageManager',['../classgrape_1_1BatchShuffleMessageManager.html',1,'grape::BatchShuffleMessageManager'],['../classgrape_1_1cuda_1_1BatchShuffleMessageManager.html',1,'grape::cuda::BatchShuffleMessageManager']]], + ['bitset_400',['Bitset',['../classgrape_1_1Bitset.html',1,'grape::Bitset'],['../classgrape_1_1cuda_1_1Bitset.html',1,'grape::cuda::Bitset< SIZE_T >'],['../classgrape_1_1cuda_1_1dev_1_1Bitset.html',1,'grape::cuda::dev::Bitset< SIZE_T >']]], + ['bitset_3c_20uint32_5ft_20_3e_401',['Bitset< uint32_t >',['../classgrape_1_1cuda_1_1dev_1_1Bitset_3_01uint32__t_01_4.html',1,'grape::cuda::dev']]], + ['bitset_3c_20uint64_5ft_20_3e_402',['Bitset< uint64_t >',['../classgrape_1_1cuda_1_1dev_1_1Bitset_3_01uint64__t_01_4.html',1,'grape::cuda::dev']]], + ['bitset_3c_20vid_5ft_20_3e_403',['Bitset< VID_T >',['../classgrape_1_1cuda_1_1Bitset.html',1,'grape::cuda']]], + ['blob_404',['Blob',['../classgrape_1_1mutable__csr__impl_1_1Blob.html',1,'grape::mutable_csr_impl']]], + ['blob_3c_20vid_5ft_2c_20grape_3a_3anbr_20_3e_405',['Blob< vid_t, grape::Nbr >',['../classgrape_1_1mutable__csr__impl_1_1Blob.html',1,'grape::mutable_csr_impl']]], + ['blockingqueue_406',['BlockingQueue',['../classgrape_1_1BlockingQueue.html',1,'grape']]], + ['blockingqueue_3c_20fid_5ft_20_3e_407',['BlockingQueue< fid_t >',['../classgrape_1_1BlockingQueue.html',1,'grape']]], + ['blockingqueue_3c_20std_3a_3apair_3c_20fid_5ft_2c_20grape_3a_3ainarchive_20_3e_20_3e_408',['BlockingQueue< std::pair< fid_t, grape::InArchive > >',['../classgrape_1_1BlockingQueue.html',1,'grape']]], + ['blockingqueue_3c_20std_3a_3apair_3c_20fid_5ft_2c_20grape_3a_3amicrobuffer_20_3e_20_3e_409',['BlockingQueue< std::pair< fid_t, grape::MicroBuffer > >',['../classgrape_1_1BlockingQueue.html',1,'grape']]] +]; diff --git a/search/classes_3.html b/search/classes_3.html new file mode 100644 index 00000000..d33343bc --- /dev/null +++ b/search/classes_3.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/classes_3.js b/search/classes_3.js new file mode 100644 index 00000000..31bbf564 --- /dev/null +++ b/search/classes_3.js @@ -0,0 +1,20 @@ +var searchData= +[ + ['commimpl_410',['CommImpl',['../structgrape_1_1sync__comm_1_1CommImpl.html',1,'grape::sync_comm']]], + ['commimpl_3c_20idindexer_3c_20oid_5ft_2c_20vid_5ft_20_3e_20_3e_411',['CommImpl< IdIndexer< OID_T, VID_T > >',['../structgrape_1_1sync__comm_1_1CommImpl_3_01IdIndexer_3_01OID__T_00_01VID__T_01_4_01_4.html',1,'grape::sync_comm']]], + ['commimpl_3c_20inarchive_2c_20void_20_3e_412',['CommImpl< InArchive, void >',['../structgrape_1_1sync__comm_1_1CommImpl_3_01InArchive_00_01void_01_4.html',1,'grape::sync_comm']]], + ['commimpl_3c_20outarchive_2c_20void_20_3e_413',['CommImpl< OutArchive, void >',['../structgrape_1_1sync__comm_1_1CommImpl_3_01OutArchive_00_01void_01_4.html',1,'grape::sync_comm']]], + ['commimpl_3c_20std_3a_3avector_3c_20t_20_3e_2c_20typename_20std_3a_3aenable_5fif_3c_20std_3a_3ais_5fpod_3c_20t_20_3e_3a_3avalue_20_3e_3a_3atype_20_3e_414',['CommImpl< std::vector< T >, typename std::enable_if< std::is_pod< T >::value >::type >',['../structgrape_1_1sync__comm_1_1CommImpl_3_01std_1_1vector_3_01T_01_4_00_01typename_01std_1_1enablec0367c4b99ee92a0913180271fe39555.html',1,'grape::sync_comm']]], + ['commimpl_3c_20std_3a_3avector_3c_20t_20_3e_2c_20typename_20std_3a_3aenable_5fif_3c_21std_3a_3ais_5fpod_3c_20t_20_3e_3a_3avalue_20_3e_3a_3atype_20_3e_415',['CommImpl< std::vector< T >, typename std::enable_if<!std::is_pod< T >::value >::type >',['../structgrape_1_1sync__comm_1_1CommImpl_3_01std_1_1vector_3_01T_01_4_00_01typename_01std_1_1enablefbdb3f21ced368a4a4b248c9347984b5.html',1,'grape::sync_comm']]], + ['commimpl_3c_20stringviewvector_2c_20void_20_3e_416',['CommImpl< StringViewVector, void >',['../structgrape_1_1sync__comm_1_1CommImpl_3_01StringViewVector_00_01void_01_4.html',1,'grape::sync_comm']]], + ['commimpl_3c_20t_2c_20typename_20std_3a_3aenable_5fif_3c_20std_3a_3ais_5fpod_3c_20t_20_3e_3a_3avalue_20_3e_3a_3atype_20_3e_417',['CommImpl< T, typename std::enable_if< std::is_pod< T >::value >::type >',['../structgrape_1_1sync__comm_1_1CommImpl_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__pode5fa600bd20ba7ca5d785a935cc31699.html',1,'grape::sync_comm']]], + ['commspec_418',['CommSpec',['../classgrape_1_1CommSpec.html',1,'grape']]], + ['communicator_419',['Communicator',['../classgrape_1_1Communicator.html',1,'grape::Communicator'],['../classgrape_1_1cuda_1_1Communicator.html',1,'grape::cuda::Communicator']]], + ['const_5fiterator_420',['const_iterator',['../classgrape_1_1AdjList_1_1const__iterator.html',1,'grape::AdjList< VID_T, EDATA_T >::const_iterator'],['../structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1const__iterator.html',1,'grape::Array< EmptyType, _Alloc >::const_iterator'],['../classgrape_1_1ConstAdjList_1_1const__iterator.html',1,'grape::ConstAdjList< VID_T, EDATA_T >::const_iterator'],['../classgrape_1_1FilterAdjList_1_1const__iterator.html',1,'grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::const_iterator'],['../classgrape_1_1FilterConstAdjList_1_1const__iterator.html',1,'grape::FilterConstAdjList< VID_T, EDATA_T, PRED_T >::const_iterator']]], + ['constadjlist_421',['ConstAdjList',['../classgrape_1_1ConstAdjList.html',1,'grape']]], + ['contextbase_422',['ContextBase',['../classgrape_1_1ContextBase.html',1,'grape']]], + ['coofragment_423',['COOFragment',['../classgrape_1_1cuda_1_1COOFragment.html',1,'grape::cuda::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >'],['../classgrape_1_1cuda_1_1dev_1_1COOFragment.html',1,'grape::cuda::dev::COOFragment< OID_T, VID_T, VDATA_T, EDATA_T >']]], + ['csredgecutfragmentbase_424',['CSREdgecutFragmentBase',['../classgrape_1_1CSREdgecutFragmentBase.html',1,'grape']]], + ['csredgecutfragmentbase_3c_20oid_5ft_2c_20vid_5ft_2c_20vdata_5ft_2c_20edata_5ft_2c_20immutableedgecutfragmenttraits_3c_20oid_5ft_2c_20vid_5ft_2c_20vdata_5ft_2c_20edata_5ft_2c_20globalvertexmap_3c_20oid_5ft_2c_20vid_5ft_20_3e_20_3e_20_3e_425',['CSREdgecutFragmentBase< OID_T, VID_T, VDATA_T, EDATA_T, ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, GlobalVertexMap< OID_T, VID_T > > >',['../classgrape_1_1CSREdgecutFragmentBase.html',1,'grape']]], + ['ctaworkscheduler_426',['CTAWorkScheduler',['../structgrape_1_1cuda_1_1CTAWorkScheduler.html',1,'grape::cuda']]] +]; diff --git a/search/classes_4.html b/search/classes_4.html new file mode 100644 index 00000000..8430b07f --- /dev/null +++ b/search/classes_4.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/classes_4.js b/search/classes_4.js new file mode 100644 index 00000000..dd8581db --- /dev/null +++ b/search/classes_4.js @@ -0,0 +1,19 @@ +var searchData= +[ + ['defaultallocator_427',['DefaultAllocator',['../classgrape_1_1DefaultAllocator.html',1,'grape']]], + ['defaultmessagemanager_428',['DefaultMessageManager',['../classgrape_1_1DefaultMessageManager.html',1,'grape']]], + ['deltavarintdecoder_429',['DeltaVarintDecoder',['../classgrape_1_1DeltaVarintDecoder.html',1,'grape']]], + ['deltavarintencoder_430',['DeltaVarintEncoder',['../classgrape_1_1DeltaVarintEncoder.html',1,'grape']]], + ['demutablecsr_431',['DeMutableCSR',['../classgrape_1_1DeMutableCSR.html',1,'grape']]], + ['demutablecsr_3c_20vid_5ft_2c_20nbr_3c_20vid_5ft_2c_20edata_5ft_20_3e_20_3e_432',['DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >',['../classgrape_1_1DeMutableCSR_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4.html',1,'grape']]], + ['demutablecsrbuilder_433',['DeMutableCSRBuilder',['../classgrape_1_1DeMutableCSRBuilder.html',1,'grape']]], + ['demutablecsrbuilder_3c_20vid_5ft_2c_20nbr_3c_20vid_5ft_2c_20edata_5ft_20_3e_20_3e_434',['DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >',['../classgrape_1_1DeMutableCSRBuilder_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4.html',1,'grape']]], + ['densevertexset_435',['DenseVertexSet',['../classgrape_1_1cuda_1_1DenseVertexSet.html',1,'grape::cuda::DenseVertexSet< VID_T >'],['../classgrape_1_1cuda_1_1dev_1_1DenseVertexSet.html',1,'grape::cuda::dev::DenseVertexSet< VID_T >'],['../classgrape_1_1DenseVertexSet.html',1,'grape::DenseVertexSet< VERTEX_SET_T >']]], + ['densevertexset_3c_20dualvertexrange_3c_20vid_5ft_20_3e_20_3e_436',['DenseVertexSet< DualVertexRange< VID_T > >',['../classgrape_1_1DenseVertexSet_3_01DualVertexRange_3_01VID__T_01_4_01_4.html',1,'grape']]], + ['densevertexset_3c_20vertexrange_3c_20vid_5ft_20_3e_20_3e_437',['DenseVertexSet< VertexRange< VID_T > >',['../classgrape_1_1DenseVertexSet_3_01VertexRange_3_01VID__T_01_4_01_4.html',1,'grape']]], + ['densevertexset_3c_20vertexvector_3c_20vid_5ft_20_3e_20_3e_438',['DenseVertexSet< VertexVector< VID_T > >',['../classgrape_1_1DenseVertexSet_3_01VertexVector_3_01VID__T_01_4_01_4.html',1,'grape']]], + ['destlist_439',['DestList',['../structgrape_1_1DestList.html',1,'grape']]], + ['devicebuffer_440',['DeviceBuffer',['../classgrape_1_1cuda_1_1DeviceBuffer.html',1,'grape::cuda']]], + ['devicefragment_441',['DeviceFragment',['../classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html',1,'grape::cuda::dev']]], + ['dualvertexrange_442',['DualVertexRange',['../classgrape_1_1DualVertexRange.html',1,'grape']]] +]; diff --git a/search/classes_5.html b/search/classes_5.html new file mode 100644 index 00000000..c2f1b767 --- /dev/null +++ b/search/classes_5.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/classes_5.js b/search/classes_5.js new file mode 100644 index 00000000..39ed94d6 --- /dev/null +++ b/search/classes_5.js @@ -0,0 +1,14 @@ +var searchData= +[ + ['edge_443',['Edge',['../structgrape_1_1Edge.html',1,'grape']]], + ['edge_3c_20vid_5ft_2c_20emptytype_20_3e_444',['Edge< VID_T, EmptyType >',['../structgrape_1_1Edge_3_01VID__T_00_01EmptyType_01_4.html',1,'grape']]], + ['edge_3c_20vid_5ft_2c_20grape_3a_3aemptytype_20_3e_445',['Edge< VID_T, grape::EmptyType >',['../structgrape_1_1Edge.html',1,'grape']]], + ['edgecutfragmentbase_446',['EdgecutFragmentBase',['../classgrape_1_1EdgecutFragmentBase.html',1,'grape']]], + ['empty_5fnp_447',['empty_np',['../structgrape_1_1cuda_1_1empty__np.html',1,'grape::cuda']]], + ['emptytype_448',['EmptyType',['../structgrape_1_1EmptyType.html',1,'grape']]], + ['event_449',['Event',['../classgrape_1_1cuda_1_1Event.html',1,'grape::cuda']]], + ['eventholder_450',['EventHolder',['../classgrape_1_1cuda_1_1EventHolder.html',1,'grape::cuda']]], + ['evfragmentloader_451',['EVFragmentLoader',['../classgrape_1_1EVFragmentLoader.html',1,'grape']]], + ['evfragmentmutator_452',['EVFragmentMutator',['../classgrape_1_1EVFragmentMutator.html',1,'grape']]], + ['evfragmentrebalanceloader_453',['EVFragmentRebalanceLoader',['../classgrape_1_1EVFragmentRebalanceLoader.html',1,'grape']]] +]; diff --git a/search/classes_6.html b/search/classes_6.html new file mode 100644 index 00000000..e39847ce --- /dev/null +++ b/search/classes_6.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/classes_6.js b/search/classes_6.js new file mode 100644 index 00000000..557e7c49 --- /dev/null +++ b/search/classes_6.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['filteradjlist_454',['FilterAdjList',['../classgrape_1_1FilterAdjList.html',1,'grape']]], + ['filterconstadjlist_455',['FilterConstAdjList',['../classgrape_1_1FilterConstAdjList.html',1,'grape']]], + ['fixedinarchive_456',['FixedInArchive',['../classgrape_1_1FixedInArchive.html',1,'grape']]], + ['frag_5fshuffle_5fheader_457',['frag_shuffle_header',['../structgrape_1_1frag__shuffle__header.html',1,'grape']]], + ['fragmentbase_458',['FragmentBase',['../classgrape_1_1FragmentBase.html',1,'grape']]] +]; diff --git a/search/classes_7.html b/search/classes_7.html new file mode 100644 index 00000000..a2c4d1a3 --- /dev/null +++ b/search/classes_7.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/classes_7.js b/search/classes_7.js new file mode 100644 index 00000000..c3864c99 --- /dev/null +++ b/search/classes_7.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['get_5fbuffer_5fhelper_459',['get_buffer_helper',['../structgrape_1_1get__buffer__helper.html',1,'grape']]], + ['get_5fbuffer_5fhelper_3c_200_2c_20first_2c_20rest_2e_2e_2e_20_3e_460',['get_buffer_helper< 0, First, Rest... >',['../structgrape_1_1get__buffer__helper_3_010_00_01First_00_01Rest_8_8_8_01_4.html',1,'grape']]], + ['globalvertexmap_461',['GlobalVertexMap',['../classgrape_1_1GlobalVertexMap.html',1,'grape']]], + ['globalvertexmapbuilder_462',['GlobalVertexMapBuilder',['../classgrape_1_1GlobalVertexMapBuilder.html',1,'grape']]], + ['gpuappbase_463',['GPUAppBase',['../classgrape_1_1cuda_1_1GPUAppBase.html',1,'grape::cuda']]], + ['gpubatchshuffleworker_464',['GPUBatchShuffleWorker',['../classgrape_1_1cuda_1_1GPUBatchShuffleWorker.html',1,'grape::cuda']]], + ['gpumessagemanager_465',['GPUMessageManager',['../classgrape_1_1cuda_1_1GPUMessageManager.html',1,'grape::cuda']]], + ['gpuworker_466',['GPUWorker',['../classgrape_1_1cuda_1_1GPUWorker.html',1,'grape::cuda']]] +]; diff --git a/search/classes_8.html b/search/classes_8.html new file mode 100644 index 00000000..17003e48 --- /dev/null +++ b/search/classes_8.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/classes_8.js b/search/classes_8.js new file mode 100644 index 00000000..7c2d6d62 --- /dev/null +++ b/search/classes_8.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['hash_3c_20grape_3a_3avertex_3c_20t_20_3e_20_3e_467',['hash< grape::Vertex< T > >',['../structstd_1_1hash_3_01grape_1_1Vertex_3_01T_01_4_01_4.html',1,'std']]], + ['hashpartitioner_468',['HashPartitioner',['../classgrape_1_1HashPartitioner.html',1,'grape']]], + ['hashpartitioner_3c_20std_3a_3astring_20_3e_469',['HashPartitioner< std::string >',['../classgrape_1_1HashPartitioner_3_01std_1_1string_01_4.html',1,'grape']]], + ['hostfragment_470',['HostFragment',['../classgrape_1_1cuda_1_1HostFragment.html',1,'grape::cuda']]] +]; diff --git a/search/classes_9.html b/search/classes_9.html new file mode 100644 index 00000000..b8afa8cb --- /dev/null +++ b/search/classes_9.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/classes_9.js b/search/classes_9.js new file mode 100644 index 00000000..e484a938 --- /dev/null +++ b/search/classes_9.js @@ -0,0 +1,32 @@ +var searchData= +[ + ['identicalhasher_471',['IdenticalHasher',['../structgrape_1_1IdenticalHasher.html',1,'grape']]], + ['identicalhasher_3c_20uint32_5ft_20_3e_472',['IdenticalHasher< uint32_t >',['../structgrape_1_1IdenticalHasher_3_01uint32__t_01_4.html',1,'grape']]], + ['identicalhasher_3c_20uint64_5ft_20_3e_473',['IdenticalHasher< uint64_t >',['../structgrape_1_1IdenticalHasher_3_01uint64__t_01_4.html',1,'grape']]], + ['idhasher_474',['IdHasher',['../structgrape_1_1IdHasher.html',1,'grape']]], + ['idhasher_3c_20uint32_5ft_20_3e_475',['IdHasher< uint32_t >',['../structgrape_1_1IdHasher_3_01uint32__t_01_4.html',1,'grape']]], + ['idhasher_3c_20uint64_5ft_20_3e_476',['IdHasher< uint64_t >',['../structgrape_1_1IdHasher_3_01uint64__t_01_4.html',1,'grape']]], + ['idindexer_477',['IdIndexer',['../classgrape_1_1IdIndexer.html',1,'grape']]], + ['idindexer_3c_20internal_5foid_5ft_2c_20vid_5ft_20_3e_478',['IdIndexer< internal_oid_t, VID_T >',['../classgrape_1_1IdIndexer.html',1,'grape']]], + ['idparser_479',['IdParser',['../classgrape_1_1IdParser.html',1,'grape']]], + ['ievent_480',['IEvent',['../structgrape_1_1cuda_1_1IEvent.html',1,'grape::cuda']]], + ['immutablecsr_481',['ImmutableCSR',['../classgrape_1_1ImmutableCSR.html',1,'grape']]], + ['immutablecsr_3c_20vid_5ft_2c_20fid_5ft_20_3e_482',['ImmutableCSR< VID_T, fid_t >',['../classgrape_1_1ImmutableCSR.html',1,'grape']]], + ['immutablecsrbuild_483',['ImmutableCSRBuild',['../classgrape_1_1ImmutableCSRBuild.html',1,'grape']]], + ['immutablecsrstreambuilder_484',['ImmutableCSRStreamBuilder',['../classgrape_1_1ImmutableCSRStreamBuilder.html',1,'grape']]], + ['immutableedgecutfragment_485',['ImmutableEdgecutFragment',['../classgrape_1_1ImmutableEdgecutFragment.html',1,'grape']]], + ['immutableedgecutfragment_3c_20oid_5ft_2c_20vid_5ft_2c_20vdata_5ft_2c_20edata_5ft_2c_20grape_3a_3aloadstrategy_3a_3akonlyout_2c_20globalvertexmap_3c_20oid_5ft_2c_20vid_5ft_20_3e_20_3e_486',['ImmutableEdgecutFragment< OID_T, VID_T, VDATA_T, EDATA_T, grape::LoadStrategy::kOnlyOut, GlobalVertexMap< OID_T, VID_T > >',['../classgrape_1_1ImmutableEdgecutFragment.html',1,'grape']]], + ['immutableedgecutfragmenttraits_487',['ImmutableEdgecutFragmentTraits',['../structgrape_1_1ImmutableEdgecutFragmentTraits.html',1,'grape']]], + ['inarchive_488',['InArchive',['../classgrape_1_1cuda_1_1dev_1_1InArchive.html',1,'grape::cuda::dev::InArchive'],['../classgrape_1_1cuda_1_1InArchive.html',1,'grape::cuda::InArchive'],['../classgrape_1_1InArchive.html',1,'grape::InArchive']]], + ['inarchivegroup_489',['InArchiveGroup',['../classgrape_1_1cuda_1_1InArchiveGroup.html',1,'grape::cuda']]], + ['integer_5fsequence_490',['integer_sequence',['../structgrape_1_1integer__sequence.html',1,'grape']]], + ['integer_5fsequence_3c_20t_2c_20is_2e_2e_2e_20_3e_491',['integer_sequence< T, Is... >',['../structgrape_1_1integer__sequence.html',1,'grape']]], + ['internaloid_492',['InternalOID',['../structgrape_1_1InternalOID.html',1,'grape']]], + ['internaloid_3c_20std_3a_3astring_20_3e_493',['InternalOID< std::string >',['../structgrape_1_1InternalOID_3_01std_1_1string_01_4.html',1,'grape']]], + ['intervalrangemarker_494',['IntervalRangeMarker',['../structgrape_1_1cuda_1_1IntervalRangeMarker.html',1,'grape::cuda']]], + ['ioadaptorbase_495',['IOAdaptorBase',['../classgrape_1_1IOAdaptorBase.html',1,'grape']]], + ['isrange_496',['IsRange',['../structgrape_1_1batch__shuffle__message__manager__impl_1_1IsRange.html',1,'grape::batch_shuffle_message_manager_impl']]], + ['isyncbuffer_497',['ISyncBuffer',['../classgrape_1_1ISyncBuffer.html',1,'grape']]], + ['iterator_498',['iterator',['../classgrape_1_1AdjList_1_1iterator.html',1,'grape::AdjList< VID_T, EDATA_T >::iterator'],['../structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1iterator.html',1,'grape::Array< EmptyType, _Alloc >::iterator'],['../classgrape_1_1DualVertexRange_1_1iterator.html',1,'grape::DualVertexRange< VID_T >::iterator'],['../classgrape_1_1FilterAdjList_1_1iterator.html',1,'grape::FilterAdjList< VID_T, EDATA_T, PRED_T >::iterator'],['../classgrape_1_1VertexRange_1_1iterator.html',1,'grape::VertexRange< T >::iterator']]], + ['iteratorpair_499',['IteratorPair',['../classgrape_1_1IteratorPair.html',1,'grape']]] +]; diff --git a/search/classes_a.html b/search/classes_a.html new file mode 100644 index 00000000..6788af27 --- /dev/null +++ b/search/classes_a.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/classes_a.js b/search/classes_a.js new file mode 100644 index 00000000..dffdac07 --- /dev/null +++ b/search/classes_a.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['keybuffer_500',['KeyBuffer',['../structgrape_1_1id__indexer__impl_1_1KeyBuffer.html',1,'grape::id_indexer_impl']]], + ['keybuffer_3c_20key_5ft_20_3e_501',['KeyBuffer< KEY_T >',['../structgrape_1_1id__indexer__impl_1_1KeyBuffer.html',1,'grape::id_indexer_impl']]], + ['keybuffer_3c_20nonstd_3a_3astring_5fview_20_3e_502',['KeyBuffer< nonstd::string_view >',['../structgrape_1_1id__indexer__impl_1_1KeyBuffer_3_01nonstd_1_1string__view_01_4.html',1,'grape::id_indexer_impl']]] +]; diff --git a/search/classes_b.html b/search/classes_b.html new file mode 100644 index 00000000..3fcb4985 --- /dev/null +++ b/search/classes_b.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/classes_b.js b/search/classes_b.js new file mode 100644 index 00000000..1b197d51 --- /dev/null +++ b/search/classes_b.js @@ -0,0 +1,8 @@ +var searchData= +[ + ['lineparserbase_503',['LineParserBase',['../classgrape_1_1LineParserBase.html',1,'grape']]], + ['loadgraphspec_504',['LoadGraphSpec',['../structgrape_1_1LoadGraphSpec.html',1,'grape']]], + ['localioadaptor_505',['LocalIOAdaptor',['../classgrape_1_1LocalIOAdaptor.html',1,'grape']]], + ['localvertexmap_506',['LocalVertexMap',['../classgrape_1_1LocalVertexMap.html',1,'grape']]], + ['localvertexmapbuilder_507',['LocalVertexMapBuilder',['../classgrape_1_1LocalVertexMapBuilder.html',1,'grape']]] +]; diff --git a/search/classes_c.html b/search/classes_c.html new file mode 100644 index 00000000..2f7b1f3d --- /dev/null +++ b/search/classes_c.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/classes_c.js b/search/classes_c.js new file mode 100644 index 00000000..8a387c75 --- /dev/null +++ b/search/classes_c.js @@ -0,0 +1,24 @@ +var searchData= +[ + ['make_5finteger_5fsequence_508',['make_integer_sequence',['../structgrape_1_1make__integer__sequence.html',1,'grape']]], + ['make_5finteger_5fsequence_3c_20t_2c_200_2c_20is_2e_2e_2e_20_3e_509',['make_integer_sequence< T, 0, Is... >',['../structgrape_1_1make__integer__sequence_3_01T_00_010_00_01Is_8_8_8_01_4.html',1,'grape']]], + ['marker_510',['Marker',['../structgrape_1_1cuda_1_1Marker.html',1,'grape::cuda']]], + ['messagebuffer_511',['MessageBuffer',['../structgrape_1_1MessageBuffer.html',1,'grape']]], + ['messagebufferpool_512',['MessageBufferPool',['../classgrape_1_1MessageBufferPool.html',1,'grape']]], + ['messageinbuffer_513',['MessageInBuffer',['../classgrape_1_1MessageInBuffer.html',1,'grape']]], + ['messagemanager_514',['MessageManager',['../classgrape_1_1cuda_1_1dev_1_1MessageManager.html',1,'grape::cuda::dev']]], + ['messagemanagerbase_515',['MessageManagerBase',['../classgrape_1_1MessageManagerBase.html',1,'grape']]], + ['mflcounter_516',['MFLCounter',['../classgrape_1_1cuda_1_1dev_1_1MFLCounter.html',1,'grape::cuda::dev']]], + ['microbuffer_517',['MicroBuffer',['../structgrape_1_1MicroBuffer.html',1,'grape']]], + ['mutablecsr_518',['MutableCSR',['../classgrape_1_1MutableCSR.html',1,'grape']]], + ['mutablecsr_3c_20vid_5ft_2c_20grape_3a_3anbr_3c_20vid_5ft_2c_20edata_5ft_20_3e_20_3e_519',['MutableCSR< VID_T, grape::Nbr< VID_T, EDATA_T > >',['../classgrape_1_1MutableCSR.html',1,'grape']]], + ['mutablecsr_3c_20vid_5ft_2c_20nbr_3c_20vid_5ft_2c_20edata_5ft_20_3e_20_3e_520',['MutableCSR< VID_T, Nbr< VID_T, EDATA_T > >',['../classgrape_1_1MutableCSR_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4.html',1,'grape']]], + ['mutablecsrbuilder_521',['MutableCSRBuilder',['../classgrape_1_1MutableCSRBuilder.html',1,'grape']]], + ['mutablecsrbuilder_3c_20vid_5ft_2c_20grape_3a_3anbr_3c_20vid_5ft_2c_20edata_5ft_20_3e_20_3e_522',['MutableCSRBuilder< VID_T, grape::Nbr< VID_T, EDATA_T > >',['../classgrape_1_1MutableCSRBuilder.html',1,'grape']]], + ['mutablecsrbuilder_3c_20vid_5ft_2c_20nbr_3c_20vid_5ft_2c_20edata_5ft_20_3e_20_3e_523',['MutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >',['../classgrape_1_1MutableCSRBuilder_3_01VID__T_00_01Nbr_3_01VID__T_00_01EDATA__T_01_4_01_4.html',1,'grape']]], + ['mutableedgecutfragment_524',['MutableEdgecutFragment',['../classgrape_1_1MutableEdgecutFragment.html',1,'grape']]], + ['mutableedgecutfragmenttraits_525',['MutableEdgecutFragmentTraits',['../structgrape_1_1MutableEdgecutFragmentTraits.html',1,'grape']]], + ['mutation_526',['Mutation',['../structgrape_1_1Mutation.html',1,'grape']]], + ['mutation_3c_20vid_5ft_2c_20vdata_5ft_2c_20edata_5ft_20_3e_527',['Mutation< vid_t, vdata_t, edata_t >',['../structgrape_1_1Mutation.html',1,'grape']]], + ['mutationcontext_528',['MutationContext',['../classgrape_1_1MutationContext.html',1,'grape']]] +]; diff --git a/search/classes_d.html b/search/classes_d.html new file mode 100644 index 00000000..f9011e70 --- /dev/null +++ b/search/classes_d.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/classes_d.js b/search/classes_d.js new file mode 100644 index 00000000..01ebe58c --- /dev/null +++ b/search/classes_d.js @@ -0,0 +1,9 @@ +var searchData= +[ + ['nbr_529',['Nbr',['../structgrape_1_1Nbr.html',1,'grape']]], + ['nbr_3c_20vid_5ft_2c_20emptytype_20_3e_530',['Nbr< VID_T, EmptyType >',['../structgrape_1_1Nbr_3_01VID__T_00_01EmptyType_01_4.html',1,'grape']]], + ['nbr_3c_20vid_5ft_2c_20grape_3a_3aemptytype_20_3e_531',['Nbr< VID_T, grape::EmptyType >',['../structgrape_1_1Nbr.html',1,'grape']]], + ['nonblockingqueue_532',['NonblockingQueue',['../classgrape_1_1NonblockingQueue.html',1,'grape']]], + ['np_5flocal_533',['np_local',['../structgrape_1_1cuda_1_1np__local.html',1,'grape::cuda']]], + ['np_5fshared_534',['np_shared',['../uniongrape_1_1cuda_1_1np__shared.html',1,'grape::cuda']]] +]; diff --git a/search/classes_e.html b/search/classes_e.html new file mode 100644 index 00000000..bb33dcfa --- /dev/null +++ b/search/classes_e.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/classes_e.js b/search/classes_e.js new file mode 100644 index 00000000..8cc9a720 --- /dev/null +++ b/search/classes_e.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['outarchive_535',['OutArchive',['../classgrape_1_1cuda_1_1dev_1_1OutArchive.html',1,'grape::cuda::dev::OutArchive'],['../classgrape_1_1cuda_1_1OutArchive.html',1,'grape::cuda::OutArchive'],['../classgrape_1_1OutArchive.html',1,'grape::OutArchive']]], + ['outarchivegroup_536',['OutArchiveGroup',['../classgrape_1_1cuda_1_1OutArchiveGroup.html',1,'grape::cuda']]] +]; diff --git a/search/classes_f.html b/search/classes_f.html new file mode 100644 index 00000000..d1b67daa --- /dev/null +++ b/search/classes_f.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/classes_f.js b/search/classes_f.js new file mode 100644 index 00000000..1cde76dc --- /dev/null +++ b/search/classes_f.js @@ -0,0 +1,12 @@ +var searchData= +[ + ['parallelappbase_537',['ParallelAppBase',['../classgrape_1_1ParallelAppBase.html',1,'grape']]], + ['parallelengine_538',['ParallelEngine',['../classgrape_1_1cuda_1_1ParallelEngine.html',1,'grape::cuda::ParallelEngine'],['../classgrape_1_1ParallelEngine.html',1,'grape::ParallelEngine']]], + ['parallelenginespec_539',['ParallelEngineSpec',['../structgrape_1_1ParallelEngineSpec.html',1,'grape']]], + ['parallelmessagemanager_540',['ParallelMessageManager',['../classgrape_1_1ParallelMessageManager.html',1,'grape']]], + ['parallelmessagemanageropt_541',['ParallelMessageManagerOpt',['../classgrape_1_1ParallelMessageManagerOpt.html',1,'grape']]], + ['podshuffle_542',['PodShuffle',['../structgrape_1_1batch__shuffle__message__manager__impl_1_1PodShuffle.html',1,'grape::batch_shuffle_message_manager_impl']]], + ['postprocess_543',['PostProcess',['../classgrape_1_1batch__shuffle__message__manager__impl_1_1PostProcess.html',1,'grape::batch_shuffle_message_manager_impl']]], + ['postprocessbase_544',['PostProcessBase',['../classgrape_1_1batch__shuffle__message__manager__impl_1_1PostProcessBase.html',1,'grape::batch_shuffle_message_manager_impl']]], + ['prepareconf_545',['PrepareConf',['../structgrape_1_1PrepareConf.html',1,'grape']]] +]; diff --git a/search/close.svg b/search/close.svg new file mode 100644 index 00000000..a933eea1 --- /dev/null +++ b/search/close.svg @@ -0,0 +1,31 @@ + + + + + + image/svg+xml + + + + + + + + diff --git a/search/enums_0.html b/search/enums_0.html new file mode 100644 index 00000000..141fff57 --- /dev/null +++ b/search/enums_0.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/enums_0.js b/search/enums_0.js new file mode 100644 index 00000000..c8f3adc9 --- /dev/null +++ b/search/enums_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['loadstrategy_713',['LoadStrategy',['../namespacegrape.html#ac82896434bbf475bc211722dc2257fbf',1,'grape']]] +]; diff --git a/search/enums_1.html b/search/enums_1.html new file mode 100644 index 00000000..d29f3b16 --- /dev/null +++ b/search/enums_1.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/enums_1.js b/search/enums_1.js new file mode 100644 index 00000000..918cbc1d --- /dev/null +++ b/search/enums_1.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['messagestrategy_714',['MessageStrategy',['../namespacegrape.html#ad40e01301e786e48610a7570c132d93c',1,'grape']]] +]; diff --git a/search/enumvalues_0.html b/search/enumvalues_0.html new file mode 100644 index 00000000..0d131d95 --- /dev/null +++ b/search/enumvalues_0.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/enumvalues_0.js b/search/enumvalues_0.js new file mode 100644 index 00000000..98b33896 --- /dev/null +++ b/search/enumvalues_0.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['kalongedgetooutervertex_715',['kAlongEdgeToOuterVertex',['../namespacegrape.html#ad40e01301e786e48610a7570c132d93caa79427df483e13f39252db6cf07e6d6b',1,'grape']]], + ['kalongincomingedgetooutervertex_716',['kAlongIncomingEdgeToOuterVertex',['../namespacegrape.html#ad40e01301e786e48610a7570c132d93ca27407bfcdec900987bb5a513e6634604',1,'grape']]], + ['ksynconoutervertex_717',['kSyncOnOuterVertex',['../namespacegrape.html#ad40e01301e786e48610a7570c132d93cad6fbc9535d3da66fc48363c13f8c50d2',1,'grape']]] +]; diff --git a/search/files_0.html b/search/files_0.html new file mode 100644 index 00000000..9498842a --- /dev/null +++ b/search/files_0.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/files_0.js b/search/files_0.js new file mode 100644 index 00000000..622fe6ed --- /dev/null +++ b/search/files_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['atomic_5fops_2eh_621',['atomic_ops.h',['../atomic__ops_8h.html',1,'']]] +]; diff --git a/search/functions_0.html b/search/functions_0.html new file mode 100644 index 00000000..eb4c5014 --- /dev/null +++ b/search/functions_0.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/functions_0.js b/search/functions_0.js new file mode 100644 index 00000000..de66163e --- /dev/null +++ b/search/functions_0.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['atomic_5fadd_622',['atomic_add',['../namespacegrape.html#a73780b29e49190720decbb46bf5e0ba2',1,'grape']]], + ['atomic_5fcompare_5fand_5fswap_623',['atomic_compare_and_swap',['../namespacegrape.html#a59e16a262c532c450a11b6b191012b44',1,'grape']]], + ['atomic_5fmin_624',['atomic_min',['../namespacegrape.html#a4171c6f370c8f38744232ab83f8c125b',1,'grape']]], + ['atomic_5fsub_625',['atomic_sub',['../namespacegrape.html#aa0c4442baf413c7820eaa4297d4aa4f3',1,'grape']]] +]; diff --git a/search/functions_1.html b/search/functions_1.html new file mode 100644 index 00000000..ef4088b8 --- /dev/null +++ b/search/functions_1.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/functions_1.js b/search/functions_1.js new file mode 100644 index 00000000..a52aa821 --- /dev/null +++ b/search/functions_1.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['configure_626',['Configure',['../classgrape_1_1IOAdaptorBase.html#aca504d85f9686c98a4ce3e81b9d4663f',1,'grape::IOAdaptorBase::Configure()'],['../classgrape_1_1LocalIOAdaptor.html#afa739078d818a9edeebe15b6836938cd',1,'grape::LocalIOAdaptor::Configure()']]] +]; diff --git a/search/functions_2.html b/search/functions_2.html new file mode 100644 index 00000000..ca5aa10e --- /dev/null +++ b/search/functions_2.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/functions_2.js b/search/functions_2.js new file mode 100644 index 00000000..53909bc0 --- /dev/null +++ b/search/functions_2.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['decproducernum_627',['DecProducerNum',['../classgrape_1_1BlockingQueue.html#aee2fb4cc7668e13fb7570294ce806cfc',1,'grape::BlockingQueue']]], + ['devicewarmup_628',['DeviceWarmup',['../classgrape_1_1cuda_1_1GPUMessageManager.html#a6caef311f14eb22879abe6b6aba83a92',1,'grape::cuda::GPUMessageManager']]], + ['directed_629',['directed',['../classgrape_1_1FragmentBase.html#a3d422e4afe2c020c7f0ba07e79513c74',1,'grape::FragmentBase']]], + ['distinctsort_630',['DistinctSort',['../namespacegrape.html#ae862702300407ca67c9779f5f1d35081',1,'grape']]] +]; diff --git a/search/functions_3.html b/search/functions_3.html new file mode 100644 index 00000000..d79f55b8 --- /dev/null +++ b/search/functions_3.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/functions_3.js b/search/functions_3.js new file mode 100644 index 00000000..b3a8db37 --- /dev/null +++ b/search/functions_3.js @@ -0,0 +1,11 @@ +var searchData= +[ + ['fid_631',['fid',['../classgrape_1_1EdgecutFragmentBase.html#ad992f0083da18eb4b3621a71137f11b8',1,'grape::EdgecutFragmentBase::fid()'],['../classgrape_1_1FragmentBase.html#ad992f0083da18eb4b3621a71137f11b8',1,'grape::FragmentBase::fid()']]], + ['finalize_632',['Finalize',['../classgrape_1_1cuda_1_1BatchShuffleMessageManager.html#affdfb3d421f12fb44430a7c2788576bc',1,'grape::cuda::BatchShuffleMessageManager::Finalize()'],['../classgrape_1_1cuda_1_1GPUMessageManager.html#a265a6769a0e7f62cf4ceaf6cea720f3f',1,'grape::cuda::GPUMessageManager::Finalize()'],['../classgrape_1_1BatchShuffleMessageManager.html#ab660e56795ebfa5b14cc9448c25e2be6',1,'grape::BatchShuffleMessageManager::Finalize()'],['../classgrape_1_1DefaultMessageManager.html#a19df6a464cb45b556f4382eeea6dbec5',1,'grape::DefaultMessageManager::Finalize()'],['../classgrape_1_1MessageManagerBase.html#a241c2d7cefcd577f6bae2e9dac286f4b',1,'grape::MessageManagerBase::Finalize()'],['../classgrape_1_1ParallelMessageManager.html#a1dab128e2fdb464f7dbe9486d41460dc',1,'grape::ParallelMessageManager::Finalize()'],['../classgrape_1_1ParallelMessageManagerOpt.html#a22e0a42e300d2c73ba380b44254e087b',1,'grape::ParallelMessageManagerOpt::Finalize()'],['../classgrape_1_1AutoParallelMessageManager.html#a19df6a464cb45b556f4382eeea6dbec5',1,'grape::AutoParallelMessageManager::Finalize()']]], + ['finisharound_633',['FinishARound',['../classgrape_1_1BatchShuffleMessageManager.html#afc0562cb099f8677327cf333c081dc62',1,'grape::BatchShuffleMessageManager::FinishARound()'],['../classgrape_1_1ParallelMessageManagerOpt.html#a8d4183b606472099a3949d255a424939',1,'grape::ParallelMessageManagerOpt::FinishARound()'],['../classgrape_1_1ParallelMessageManager.html#af5071360192c4c5045db60b68b90444e',1,'grape::ParallelMessageManager::FinishARound()'],['../classgrape_1_1MessageManagerBase.html#a77317437f11efa88ce721223732e120f',1,'grape::MessageManagerBase::FinishARound()'],['../classgrape_1_1DefaultMessageManager.html#a5fe8999ad4d90b7abff0986f69f05084',1,'grape::DefaultMessageManager::FinishARound()'],['../classgrape_1_1AutoParallelMessageManager.html#aeb5a2fc228ba560f16bb139400e8eddc',1,'grape::AutoParallelMessageManager::FinishARound()'],['../classgrape_1_1cuda_1_1GPUMessageManager.html#acaa589df476d8d29c46868609c791f1c',1,'grape::cuda::GPUMessageManager::FinishARound()'],['../classgrape_1_1cuda_1_1BatchShuffleMessageManager.html#a600bad04c187ed3eca222faf9f015a37',1,'grape::cuda::BatchShuffleMessageManager::FinishARound()']]], + ['flushmessages_634',['FlushMessages',['../classgrape_1_1ThreadLocalMessageBuffer.html#a69f772687f36eeed94319223aee4c641',1,'grape::ThreadLocalMessageBuffer::FlushMessages()'],['../classgrape_1_1ThreadLocalMessageBufferOpt.html#ac61130aa66bca68812aba5f0be266a64',1,'grape::ThreadLocalMessageBufferOpt::FlushMessages()']]], + ['fnum_635',['fnum',['../classgrape_1_1FragmentBase.html#a00635c223b0c8beed07ff4abc80ff1f5',1,'grape::FragmentBase::fnum()'],['../classgrape_1_1EdgecutFragmentBase.html#a00635c223b0c8beed07ff4abc80ff1f5',1,'grape::EdgecutFragmentBase::fnum()']]], + ['forcecontinue_636',['ForceContinue',['../classgrape_1_1cuda_1_1BatchShuffleMessageManager.html#a95b5f29a59a8138fb1535b1e8c0d0692',1,'grape::cuda::BatchShuffleMessageManager::ForceContinue()'],['../classgrape_1_1AutoParallelMessageManager.html#a069fcda5a80e52b3a66128f5c3fa597a',1,'grape::AutoParallelMessageManager::ForceContinue()'],['../classgrape_1_1ParallelMessageManagerOpt.html#aa5326cb9d16f8c9087e1aad118ac9356',1,'grape::ParallelMessageManagerOpt::ForceContinue()'],['../classgrape_1_1ParallelMessageManager.html#ad5f23c9e3c6a6349f23379ebaf420d40',1,'grape::ParallelMessageManager::ForceContinue()'],['../classgrape_1_1DefaultMessageManager.html#a069fcda5a80e52b3a66128f5c3fa597a',1,'grape::DefaultMessageManager::ForceContinue()'],['../classgrape_1_1BatchShuffleMessageManager.html#ab19b6fdb1ba4dbab7f0ccc799669b765',1,'grape::BatchShuffleMessageManager::ForceContinue()'],['../classgrape_1_1cuda_1_1GPUMessageManager.html#acf928a09e08294446f0665b30837fb6f',1,'grape::cuda::GPUMessageManager::ForceContinue()'],['../classgrape_1_1MessageManagerBase.html#ac562caca30e41990caaec5cf95d28701',1,'grape::MessageManagerBase::ForceContinue()']]], + ['forceterminate_637',['ForceTerminate',['../classgrape_1_1BatchShuffleMessageManager.html#a37adc562b9c47d520aee3cf72531b402',1,'grape::BatchShuffleMessageManager::ForceTerminate()'],['../classgrape_1_1DefaultMessageManager.html#a86376af64c1665ec209f5723bec481b4',1,'grape::DefaultMessageManager::ForceTerminate()'],['../classgrape_1_1MessageManagerBase.html#a51255242d33783e84e45dac0e9ad0485',1,'grape::MessageManagerBase::ForceTerminate()'],['../classgrape_1_1ParallelMessageManager.html#a731c55f98118413974964db164363ff5',1,'grape::ParallelMessageManager::ForceTerminate()'],['../classgrape_1_1ParallelMessageManagerOpt.html#a854276b26e1a6117e6951d0d661b0ff3',1,'grape::ParallelMessageManagerOpt::ForceTerminate()']]], + ['foreach_638',['ForEach',['../classgrape_1_1ParallelEngine.html#aee4b36bff462c1b2333e4c5dc0ac7311',1,'grape::ParallelEngine::ForEach(const DenseVertexSet< VertexRange< VID_T >> &dense_set, const INIT_FUNC_T &init_func, const ITER_FUNC_T &iter_func, const FINALIZE_FUNC_T &finalize_func, int chunk_size=10 *1024)'],['../classgrape_1_1ParallelEngine.html#afd4a076ce692d9e42747a7321b5e42e8',1,'grape::ParallelEngine::ForEach(const DenseVertexSet< VERTEX_SET_T > &dense_set, const VertexVector< VID_T > &vertices, const ITER_FUNC_T &iter_func, int chunk_size=1024)'],['../classgrape_1_1ParallelEngine.html#a1bedcb27feec51617c3759d51d117712',1,'grape::ParallelEngine::ForEach(const DenseVertexSet< VertexRange< VID_T >> &dense_set, const VertexRange< VID_T > &range, const ITER_FUNC_T &iter_func, int chunk_size=1024)'],['../classgrape_1_1ParallelEngine.html#a7921e885b1a0906fc060e31a36179662',1,'grape::ParallelEngine::ForEach(const DenseVertexSet< VertexRange< VID_T >> &dense_set, const ITER_FUNC_T &iter_func, int chunk_size=1024)'],['../classgrape_1_1ParallelEngine.html#a01f5df37e3852d9cd40d402900615501',1,'grape::ParallelEngine::ForEach(const ITERATOR_T &begin, const ITERATOR_T &end, const INIT_FUNC_T &init_func, const ITER_FUNC_T &iter_func, const FINALIZE_FUNC_T &finalize_func, int chunk_size=1024)'],['../classgrape_1_1ParallelEngine.html#a3abe327cbd6efd0ba481344dc7a802c8',1,'grape::ParallelEngine::ForEach(const VertexVector< VID_T > &vertices, const INIT_FUNC_T &init_func, const ITER_FUNC_T &iter_func, const FINALIZE_FUNC_T &finalize_func, int chunk_size=1024)'],['../classgrape_1_1ParallelEngine.html#a042836c188385e633dbd20122dbfbbec',1,'grape::ParallelEngine::ForEach(const VertexRange< VID_T > &range, const INIT_FUNC_T &init_func, const ITER_FUNC_T &iter_func, const FINALIZE_FUNC_T &finalize_func, int chunk_size=1024)'],['../classgrape_1_1ParallelEngine.html#a4ea215e07e9355805b875dd99e88af83',1,'grape::ParallelEngine::ForEach(const VertexVector< VID_T > &vertices, const ITER_FUNC_T &iter_func, int chunk_size=1024)'],['../classgrape_1_1ParallelEngine.html#aca29f2033ec83c07a8143c3471264315',1,'grape::ParallelEngine::ForEach(const VertexRange< VID_T > &range, const ITER_FUNC_T &iter_func, int chunk_size=1024)']]] +]; diff --git a/search/functions_4.html b/search/functions_4.html new file mode 100644 index 00000000..1657cad0 --- /dev/null +++ b/search/functions_4.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/functions_4.js b/search/functions_4.js new file mode 100644 index 00000000..fb712cf1 --- /dev/null +++ b/search/functions_4.js @@ -0,0 +1,32 @@ +var searchData= +[ + ['get_639',['Get',['../classgrape_1_1NonblockingQueue.html#af6a826054202c74c1074e25e8e03c860',1,'grape::NonblockingQueue::Get()'],['../classgrape_1_1BlockingQueue.html#a519988d3689a87d23ed87aebd71b5cb0',1,'grape::BlockingQueue::Get()']]], + ['getdata_640',['GetData',['../classgrape_1_1FragmentBase.html#a23797c0cf4d41cb47bb333d7afb8dc28',1,'grape::FragmentBase::GetData()'],['../classgrape_1_1ImmutableEdgecutFragment.html#a9d50ff75e2d931242131d86726b5005c',1,'grape::ImmutableEdgecutFragment::GetData()']]], + ['getedgenum_641',['GetEdgeNum',['../classgrape_1_1CSREdgecutFragmentBase.html#a9e9e02c403555b991adfad31b9136c95',1,'grape::CSREdgecutFragmentBase::GetEdgeNum()'],['../classgrape_1_1FragmentBase.html#aa9964e6bd6bc550a422fbe042f4ffe3e',1,'grape::FragmentBase::GetEdgeNum() const =0']]], + ['getfragid_642',['GetFragId',['../classgrape_1_1FragmentBase.html#a27060eb9b1fefa701763c6a6d1c4a90e',1,'grape::FragmentBase::GetFragId()'],['../classgrape_1_1ImmutableEdgecutFragment.html#a27060eb9b1fefa701763c6a6d1c4a90e',1,'grape::ImmutableEdgecutFragment::GetFragId()']]], + ['getid_643',['GetId',['../classgrape_1_1FragmentBase.html#aa8568dc5a7447c29f4ea3b717dd56f25',1,'grape::FragmentBase']]], + ['getincomingadjlist_644',['GetIncomingAdjList',['../classgrape_1_1ImmutableEdgecutFragment.html#a7ac054650b970c1312339541ca008e30',1,'grape::ImmutableEdgecutFragment::GetIncomingAdjList()'],['../classgrape_1_1MutableEdgecutFragment.html#ac8221d2575f65ad8db7ce8fd814359e3',1,'grape::MutableEdgecutFragment::GetIncomingAdjList(const vertex_t &v) const override'],['../classgrape_1_1MutableEdgecutFragment.html#a5783417ec349da8ff9f6443c185532cc',1,'grape::MutableEdgecutFragment::GetIncomingAdjList(const vertex_t &v) override'],['../classgrape_1_1FragmentBase.html#a7ac054650b970c1312339541ca008e30',1,'grape::FragmentBase::GetIncomingAdjList()'],['../classgrape_1_1CSREdgecutFragmentBase.html#ac8221d2575f65ad8db7ce8fd814359e3',1,'grape::CSREdgecutFragmentBase::GetIncomingAdjList(const vertex_t &v) const override'],['../classgrape_1_1CSREdgecutFragmentBase.html#a5783417ec349da8ff9f6443c185532cc',1,'grape::CSREdgecutFragmentBase::GetIncomingAdjList(const vertex_t &v) override']]], + ['getincominginnervertexadjlist_645',['GetIncomingInnerVertexAdjList',['../classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html#a7127ec7ef265f1c4081662c11cada794',1,'grape::cuda::dev::DeviceFragment::GetIncomingInnerVertexAdjList(const vertex_t &v)'],['../classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html#ab17b889781da16edf08486d678fcd975',1,'grape::cuda::dev::DeviceFragment::GetIncomingInnerVertexAdjList(const vertex_t &v) const'],['../classgrape_1_1EdgecutFragmentBase.html#a50ee9a32083e389ee47c2e934e99e55e',1,'grape::EdgecutFragmentBase::GetIncomingInnerVertexAdjList(const Vertex< VID_T > &v)=0'],['../classgrape_1_1EdgecutFragmentBase.html#ac55c64f04b4ed48cdca94a9b1d3e209d',1,'grape::EdgecutFragmentBase::GetIncomingInnerVertexAdjList(const Vertex< VID_T > &v) const =0'],['../classgrape_1_1ImmutableEdgecutFragment.html#a88bda6f54a9f223e34ac17ea9492d51f',1,'grape::ImmutableEdgecutFragment::GetIncomingInnerVertexAdjList(const vertex_t &v) override'],['../classgrape_1_1ImmutableEdgecutFragment.html#a19d194526e168264e1e3565f4b2a1a66',1,'grape::ImmutableEdgecutFragment::GetIncomingInnerVertexAdjList(const vertex_t &v) const override']]], + ['getincomingoutervertexadjlist_646',['GetIncomingOuterVertexAdjList',['../classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html#ad06b14b6d36e184c329a1a524e05cfed',1,'grape::cuda::dev::DeviceFragment::GetIncomingOuterVertexAdjList()'],['../classgrape_1_1ImmutableEdgecutFragment.html#a9cf0f71cd2c6301626369b350f90d6fe',1,'grape::ImmutableEdgecutFragment::GetIncomingOuterVertexAdjList(const vertex_t &v) const override'],['../classgrape_1_1ImmutableEdgecutFragment.html#a1980c46f21d89449eb3b84bbfd49ef01',1,'grape::ImmutableEdgecutFragment::GetIncomingOuterVertexAdjList(const vertex_t &v) override'],['../classgrape_1_1EdgecutFragmentBase.html#a3a268ed0ff3e2d913f828a7758e5e576',1,'grape::EdgecutFragmentBase::GetIncomingOuterVertexAdjList()'],['../classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html#ab68a8c04a28f0765e9d3c26d8c62b629',1,'grape::cuda::dev::DeviceFragment::GetIncomingOuterVertexAdjList()'],['../classgrape_1_1EdgecutFragmentBase.html#a620b4f06a4d819dbc3aa180601d396f5',1,'grape::EdgecutFragmentBase::GetIncomingOuterVertexAdjList(const Vertex< VID_T > &v) const =0']]], + ['getinnervertex_647',['GetInnerVertex',['../classgrape_1_1EdgecutFragmentBase.html#a96ebbedef76e2dca685e18891e4c26ec',1,'grape::EdgecutFragmentBase']]], + ['getinnervertexgid_648',['GetInnerVertexGid',['../classgrape_1_1EdgecutFragmentBase.html#af4d06814a028a51e0b5e3a2e0d97e658',1,'grape::EdgecutFragmentBase']]], + ['getinnervertexid_649',['GetInnerVertexId',['../classgrape_1_1EdgecutFragmentBase.html#a6266ee188624c4b4a3a587900dd6bf05',1,'grape::EdgecutFragmentBase']]], + ['getinnerverticesnum_650',['GetInnerVerticesNum',['../classgrape_1_1EdgecutFragmentBase.html#adedbc78a3bf590b079064f4b3af89040',1,'grape::EdgecutFragmentBase::GetInnerVerticesNum()'],['../classgrape_1_1CSREdgecutFragmentBase.html#adedbc78a3bf590b079064f4b3af89040',1,'grape::CSREdgecutFragmentBase::GetInnerVerticesNum() const']]], + ['getlocalindegree_651',['GetLocalInDegree',['../classgrape_1_1CSREdgecutFragmentBase.html#a3dcc58dcb739731952c9ef705d4f5124',1,'grape::CSREdgecutFragmentBase::GetLocalInDegree()'],['../classgrape_1_1FragmentBase.html#a02144ce76fc56aed7a3c5459e6337930',1,'grape::FragmentBase::GetLocalInDegree()']]], + ['getlocaloutdegree_652',['GetLocalOutDegree',['../classgrape_1_1CSREdgecutFragmentBase.html#a28dbfa04f1bc8552bacb00274b507d58',1,'grape::CSREdgecutFragmentBase::GetLocalOutDegree()'],['../classgrape_1_1FragmentBase.html#a4a89d7d15e4a9b8be35e8bf73bf6e1da',1,'grape::FragmentBase::GetLocalOutDegree()']]], + ['getmessage_653',['GetMessage',['../classgrape_1_1DefaultMessageManager.html#a6e1c70f1d29d93161e07e68acb62cb09',1,'grape::DefaultMessageManager::GetMessage(MESSAGE_T &msg)'],['../classgrape_1_1DefaultMessageManager.html#a27ca6a074bc12882876e96768e5631a7',1,'grape::DefaultMessageManager::GetMessage(const GRAPH_T &frag, typename GRAPH_T::vertex_t &v, MESSAGE_T &msg)']]], + ['getmessageinbuffer_654',['GetMessageInBuffer',['../classgrape_1_1ParallelMessageManager.html#aeccdccd59a635f14a3d1befa698428c7',1,'grape::ParallelMessageManager::GetMessageInBuffer()'],['../classgrape_1_1ParallelMessageManagerOpt.html#a7fad186fb4dad08d7b61cd847175f030',1,'grape::ParallelMessageManagerOpt::GetMessageInBuffer()']]], + ['getmsgsize_655',['GetMsgSize',['../classgrape_1_1cuda_1_1BatchShuffleMessageManager.html#ac88e6bd25ac27e305a02a1299bb70a81',1,'grape::cuda::BatchShuffleMessageManager::GetMsgSize()'],['../classgrape_1_1AutoParallelMessageManager.html#a2f7cc6525f4178ac9447a55fb8bd6815',1,'grape::AutoParallelMessageManager::GetMsgSize()'],['../classgrape_1_1ParallelMessageManagerOpt.html#ad2b103008a6b5ff3871001845554a80b',1,'grape::ParallelMessageManagerOpt::GetMsgSize()'],['../classgrape_1_1ParallelMessageManager.html#a26b163ba96eb5737d46200a363955e5d',1,'grape::ParallelMessageManager::GetMsgSize()'],['../classgrape_1_1DefaultMessageManager.html#a2f7cc6525f4178ac9447a55fb8bd6815',1,'grape::DefaultMessageManager::GetMsgSize()'],['../classgrape_1_1BatchShuffleMessageManager.html#aae8310ebc57bf762e2f69566de94e733',1,'grape::BatchShuffleMessageManager::GetMsgSize()'],['../classgrape_1_1cuda_1_1GPUMessageManager.html#a948c07897ff4d0ca7c31d91f2b5e7448',1,'grape::cuda::GPUMessageManager::GetMsgSize()'],['../classgrape_1_1MessageManagerBase.html#a2c4cc7350fdd893763bbf534bce85784',1,'grape::MessageManagerBase::GetMsgSize()']]], + ['getoutervertexgid_656',['GetOuterVertexGid',['../classgrape_1_1EdgecutFragmentBase.html#a40e15987d15953561eb398d5b41a3f62',1,'grape::EdgecutFragmentBase::GetOuterVertexGid()'],['../classgrape_1_1ImmutableEdgecutFragment.html#ae8824be642c287a5bcfbaee047dc5b77',1,'grape::ImmutableEdgecutFragment::GetOuterVertexGid()']]], + ['getoutervertexid_657',['GetOuterVertexId',['../classgrape_1_1EdgecutFragmentBase.html#a7c772db1899b4bd8d9249919c479d67c',1,'grape::EdgecutFragmentBase']]], + ['getouterverticesnum_658',['GetOuterVerticesNum',['../classgrape_1_1EdgecutFragmentBase.html#a51f3d0376ced273d7795c8930b0bbab5',1,'grape::EdgecutFragmentBase']]], + ['getoutgoingadjlist_659',['GetOutgoingAdjList',['../classgrape_1_1CSREdgecutFragmentBase.html#a82476311a92148ae75384f9903260fbe',1,'grape::CSREdgecutFragmentBase::GetOutgoingAdjList()'],['../classgrape_1_1MutableEdgecutFragment.html#a603c1b2f0b1fda16d7cc04d69516f5f9',1,'grape::MutableEdgecutFragment::GetOutgoingAdjList(const vertex_t &v) const override'],['../classgrape_1_1MutableEdgecutFragment.html#a82476311a92148ae75384f9903260fbe',1,'grape::MutableEdgecutFragment::GetOutgoingAdjList(const vertex_t &v) override'],['../classgrape_1_1ImmutableEdgecutFragment.html#a38c92b5ca9841f4db0ed7afa56293835',1,'grape::ImmutableEdgecutFragment::GetOutgoingAdjList()'],['../classgrape_1_1FragmentBase.html#a38c92b5ca9841f4db0ed7afa56293835',1,'grape::FragmentBase::GetOutgoingAdjList()'],['../classgrape_1_1CSREdgecutFragmentBase.html#a603c1b2f0b1fda16d7cc04d69516f5f9',1,'grape::CSREdgecutFragmentBase::GetOutgoingAdjList()']]], + ['getoutgoinginnervertexadjlist_660',['GetOutgoingInnerVertexAdjList',['../classgrape_1_1ImmutableEdgecutFragment.html#ae3dc23b04766b71818488db1892a72a1',1,'grape::ImmutableEdgecutFragment::GetOutgoingInnerVertexAdjList(const vertex_t &v) const override'],['../classgrape_1_1ImmutableEdgecutFragment.html#a5fceda28e883a5e36cceeb9bb0da25a6',1,'grape::ImmutableEdgecutFragment::GetOutgoingInnerVertexAdjList(const vertex_t &v) override'],['../classgrape_1_1EdgecutFragmentBase.html#ab904a6e8fc0aa13bb6d1a5b8e6d63a84',1,'grape::EdgecutFragmentBase::GetOutgoingInnerVertexAdjList()'],['../classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html#a3085128598b9221fc38cfc05eadd64ad',1,'grape::cuda::dev::DeviceFragment::GetOutgoingInnerVertexAdjList(const vertex_t &v) const'],['../classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html#abc1ec0486466fa94ab04f52364169174',1,'grape::cuda::dev::DeviceFragment::GetOutgoingInnerVertexAdjList(const vertex_t &v)'],['../classgrape_1_1EdgecutFragmentBase.html#a4c6f4d40f6c45c29d179139afdc5092a',1,'grape::EdgecutFragmentBase::GetOutgoingInnerVertexAdjList()']]], + ['getoutgoingoutervertexadjlist_661',['GetOutgoingOuterVertexAdjList',['../classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html#ac7968312eb51770c632e9c797c438681',1,'grape::cuda::dev::DeviceFragment::GetOutgoingOuterVertexAdjList(const vertex_t &v)'],['../classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html#a802173559fb5d78273ec9b580f5c759f',1,'grape::cuda::dev::DeviceFragment::GetOutgoingOuterVertexAdjList(const vertex_t &v) const'],['../classgrape_1_1EdgecutFragmentBase.html#ac6d366d57a7e0a76316705f13cd4168e',1,'grape::EdgecutFragmentBase::GetOutgoingOuterVertexAdjList(const Vertex< VID_T > &v)=0'],['../classgrape_1_1EdgecutFragmentBase.html#a14d1dfa45bdf82af3a753a52e2429db3',1,'grape::EdgecutFragmentBase::GetOutgoingOuterVertexAdjList(const Vertex< VID_T > &v) const =0'],['../classgrape_1_1ImmutableEdgecutFragment.html#a28767b48b602916d6e03b5085b6d18d9',1,'grape::ImmutableEdgecutFragment::GetOutgoingOuterVertexAdjList(const vertex_t &v) override'],['../classgrape_1_1ImmutableEdgecutFragment.html#a56f6eb42d979a75e705779f9ab8120fc',1,'grape::ImmutableEdgecutFragment::GetOutgoingOuterVertexAdjList(const vertex_t &v) const override']]], + ['getresultfilename_662',['GetResultFilename',['../namespacegrape.html#ae521c713545b0375558f7492680800c8',1,'grape']]], + ['getterminateinfo_663',['GetTerminateInfo',['../classgrape_1_1DefaultMessageManager.html#afca3a62efc2016ac15e46e322ce8d8ef',1,'grape::DefaultMessageManager::GetTerminateInfo()'],['../classgrape_1_1MessageManagerBase.html#a6b6af5e60690022df47d618b647912bd',1,'grape::MessageManagerBase::GetTerminateInfo()'],['../classgrape_1_1ParallelMessageManager.html#a6bee245b56a8a7d39485585b14e61d04',1,'grape::ParallelMessageManager::GetTerminateInfo()'],['../classgrape_1_1ParallelMessageManagerOpt.html#a4f2008fec970ec83e8fb812f97a64926',1,'grape::ParallelMessageManagerOpt::GetTerminateInfo()'],['../classgrape_1_1BatchShuffleMessageManager.html#afcd792b65af50e629fba84c3818c11df',1,'grape::BatchShuffleMessageManager::GetTerminateInfo()']]], + ['gettotalverticesnum_664',['GetTotalVerticesNum',['../classgrape_1_1FragmentBase.html#a21b642597697b0a66fdd6cee7a10c259',1,'grape::FragmentBase']]], + ['getvertex_665',['GetVertex',['../classgrape_1_1FragmentBase.html#a4c8715184d1d9b9ccf9b2ae06669840d',1,'grape::FragmentBase']]], + ['getverticesnum_666',['GetVerticesNum',['../classgrape_1_1FragmentBase.html#a1789e632d507a06f18604f7be32cd91f',1,'grape::FragmentBase']]], + ['gid2vertex_667',['Gid2Vertex',['../classgrape_1_1EdgecutFragmentBase.html#a7dfef6ab8c55c660023213c8a4188732',1,'grape::EdgecutFragmentBase::Gid2Vertex()'],['../classgrape_1_1FragmentBase.html#a7d64cd2307c5147b9cb7deb27d10d483',1,'grape::FragmentBase::Gid2Vertex()']]] +]; diff --git a/search/functions_5.html b/search/functions_5.html new file mode 100644 index 00000000..9301d6b9 --- /dev/null +++ b/search/functions_5.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/functions_5.js b/search/functions_5.js new file mode 100644 index 00000000..c040945a --- /dev/null +++ b/search/functions_5.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['haschild_668',['HasChild',['../classgrape_1_1CSREdgecutFragmentBase.html#ae76ec9a0731fcf24e775e312d8857b9f',1,'grape::CSREdgecutFragmentBase::HasChild()'],['../classgrape_1_1FragmentBase.html#a9441c57ca70dbd694d096a939851f1dc',1,'grape::FragmentBase::HasChild()']]], + ['hasparent_669',['HasParent',['../classgrape_1_1CSREdgecutFragmentBase.html#a4007e3271137b9481d38c380cbc01bf9',1,'grape::CSREdgecutFragmentBase::HasParent()'],['../classgrape_1_1FragmentBase.html#ac514576aebd2855cc7d449d09e275b06',1,'grape::FragmentBase::HasParent()']]] +]; diff --git a/search/functions_6.html b/search/functions_6.html new file mode 100644 index 00000000..9c4f5fc6 --- /dev/null +++ b/search/functions_6.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/functions_6.js b/search/functions_6.js new file mode 100644 index 00000000..59cf8795 --- /dev/null +++ b/search/functions_6.js @@ -0,0 +1,15 @@ +var searchData= +[ + ['iedests_670',['IEDests',['../classgrape_1_1CSREdgecutFragmentBase.html#a23e18e56318cefdfff73081b7e829f82',1,'grape::CSREdgecutFragmentBase::IEDests()'],['../classgrape_1_1EdgecutFragmentBase.html#ae6706cbf82f4c866b7e767f668c2a48c',1,'grape::EdgecutFragmentBase::IEDests()'],['../classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html#a78456df2f73a76929d8d148a70adb76b',1,'grape::cuda::dev::DeviceFragment::IEDests()']]], + ['inceval_671',['IncEval',['../classgrape_1_1AutoAppBase.html#a609e1cb7e1da1a0519d462b4100741cc',1,'grape::AutoAppBase::IncEval()'],['../classgrape_1_1BatchShuffleAppBase.html#ac8d7387a4235b98e116de1163678483f',1,'grape::BatchShuffleAppBase::IncEval()'],['../classgrape_1_1ParallelAppBase.html#a9084eb522f1e86179f0e6459e5f12cbd',1,'grape::ParallelAppBase::IncEval()'],['../classgrape_1_1cuda_1_1BatchShuffleAppBase.html#a125e514aab032e2180a508fb3c053b0e',1,'grape::cuda::BatchShuffleAppBase::IncEval()'],['../classgrape_1_1cuda_1_1GPUAppBase.html#a65266cf7e7a59f447a62071b0cde1f63',1,'grape::cuda::GPUAppBase::IncEval()']]], + ['init_672',['Init',['../classgrape_1_1ThreadLocalMessageBufferOpt.html#a8d0c39e1cc82ea4d0e9f0f9b585de8c7',1,'grape::ThreadLocalMessageBufferOpt::Init()'],['../classgrape_1_1AutoParallelMessageManager.html#a372bb9e26892c2772a0fbf3c99d80458',1,'grape::AutoParallelMessageManager::Init()'],['../classgrape_1_1ThreadLocalMessageBuffer.html#a039b29c3e885eac1ac1a586ccb1adcca',1,'grape::ThreadLocalMessageBuffer::Init()'],['../classgrape_1_1ParallelMessageManagerOpt.html#a723d6284b5b34bfabbd5ac397c4bfccf',1,'grape::ParallelMessageManagerOpt::Init()'],['../classgrape_1_1ParallelMessageManager.html#a416240884d421400ebac010b1276bd97',1,'grape::ParallelMessageManager::Init()'],['../classgrape_1_1DefaultMessageManager.html#a372bb9e26892c2772a0fbf3c99d80458',1,'grape::DefaultMessageManager::Init()'],['../classgrape_1_1BatchShuffleMessageManager.html#a386712107c76d395a58d98ba70f2c4d3',1,'grape::BatchShuffleMessageManager::Init()'],['../classgrape_1_1FragmentBase.html#a7e9ada0e2a4eff43b1cc882fa4b06cd3',1,'grape::FragmentBase::Init()'],['../classgrape_1_1cuda_1_1GPUMessageManager.html#a12c82bc62972905252fb3f5f4aaf2782',1,'grape::cuda::GPUMessageManager::Init()'],['../classgrape_1_1cuda_1_1BatchShuffleMessageManager.html#a9e024282968e8fc79f36c2e1709b2c23',1,'grape::cuda::BatchShuffleMessageManager::Init()'],['../classgrape_1_1MessageManagerBase.html#a7c19aa6dc18c709669969043543434d8',1,'grape::MessageManagerBase::Init()']]], + ['initchannels_673',['InitChannels',['../classgrape_1_1ParallelMessageManager.html#abf18152867b7b49ceeb3c90885ded788',1,'grape::ParallelMessageManager::InitChannels()'],['../classgrape_1_1ParallelMessageManagerOpt.html#a32aa44dd037337a355ea84dfd3c9bf25',1,'grape::ParallelMessageManagerOpt::InitChannels()']]], + ['innervertexgid2vertex_674',['InnerVertexGid2Vertex',['../classgrape_1_1EdgecutFragmentBase.html#ae8fac35cdc13b64d8e95e9d6861101a7',1,'grape::EdgecutFragmentBase']]], + ['innervertices_675',['InnerVertices',['../classgrape_1_1EdgecutFragmentBase.html#a9ed7dd70540f65a0aec75db9bd791b96',1,'grape::EdgecutFragmentBase']]], + ['ioedests_676',['IOEDests',['../classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html#abc8a1967ca31265f1a8684e86ab0dc78',1,'grape::cuda::dev::DeviceFragment::IOEDests()'],['../classgrape_1_1EdgecutFragmentBase.html#a9323530a16c92a253941d9451e9b10ae',1,'grape::EdgecutFragmentBase::IOEDests()'],['../classgrape_1_1CSREdgecutFragmentBase.html#adb7d801b9734121aa95c234cf286c3aa',1,'grape::CSREdgecutFragmentBase::IOEDests(const vertex_t &v) const override']]], + ['isbordervertex_677',['IsBorderVertex',['../classgrape_1_1CSREdgecutFragmentBase.html#ab92629fda1e92daa7f40b856f6bf5c55',1,'grape::CSREdgecutFragmentBase']]], + ['isincomingbordervertex_678',['IsIncomingBorderVertex',['../classgrape_1_1CSREdgecutFragmentBase.html#abc9384eea073a7c486272f0daa1de075',1,'grape::CSREdgecutFragmentBase']]], + ['isinnervertex_679',['IsInnerVertex',['../classgrape_1_1EdgecutFragmentBase.html#ad7bb906e817c6cfe10a79490cb2586de',1,'grape::EdgecutFragmentBase::IsInnerVertex()'],['../classgrape_1_1CSREdgecutFragmentBase.html#ad7bb906e817c6cfe10a79490cb2586de',1,'grape::CSREdgecutFragmentBase::IsInnerVertex()'],['../classgrape_1_1MutableEdgecutFragment.html#ad7bb906e817c6cfe10a79490cb2586de',1,'grape::MutableEdgecutFragment::IsInnerVertex()']]], + ['isoutervertex_680',['IsOuterVertex',['../classgrape_1_1EdgecutFragmentBase.html#a2bfaf7cbb9b7da4733e67c8b51f51853',1,'grape::EdgecutFragmentBase::IsOuterVertex()'],['../classgrape_1_1CSREdgecutFragmentBase.html#a2bfaf7cbb9b7da4733e67c8b51f51853',1,'grape::CSREdgecutFragmentBase::IsOuterVertex(const Vertex< VID_T > &v) const']]], + ['isoutgoingbordervertex_681',['IsOutgoingBorderVertex',['../classgrape_1_1CSREdgecutFragmentBase.html#a8d8142a3b75a8ab523c3972874703a64',1,'grape::CSREdgecutFragmentBase']]] +]; diff --git a/search/functions_7.html b/search/functions_7.html new file mode 100644 index 00000000..46b5c0f6 --- /dev/null +++ b/search/functions_7.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/functions_7.js b/search/functions_7.js new file mode 100644 index 00000000..26007d37 --- /dev/null +++ b/search/functions_7.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['lineparserforefile_682',['LineParserForEFile',['../classgrape_1_1LineParserBase.html#a53b6f4b5dc45f0dec0574e22a0d502a3',1,'grape::LineParserBase::LineParserForEFile()'],['../classgrape_1_1TSVLineParser.html#afd49a2789ef6e420cc9634b9cd48aac5',1,'grape::TSVLineParser::LineParserForEFile()']]], + ['lineparserforvfile_683',['LineParserForVFile',['../classgrape_1_1LineParserBase.html#abd90abcd17d30e4fcc0bfa369b0c3a58',1,'grape::LineParserBase::LineParserForVFile()'],['../classgrape_1_1TSVLineParser.html#a113ea3f2c03d05b809480fa15165a8ac',1,'grape::TSVLineParser::LineParserForVFile()']]] +]; diff --git a/search/functions_8.html b/search/functions_8.html new file mode 100644 index 00000000..31a1d950 --- /dev/null +++ b/search/functions_8.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/functions_8.js b/search/functions_8.js new file mode 100644 index 00000000..0979c91d --- /dev/null +++ b/search/functions_8.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['oedests_684',['OEDests',['../classgrape_1_1cuda_1_1dev_1_1DeviceFragment.html#a254d524394f3b0a4af0dd583a1d00289',1,'grape::cuda::dev::DeviceFragment::OEDests()'],['../classgrape_1_1CSREdgecutFragmentBase.html#a902a423e1149e84364ca4ff8a7407b4e',1,'grape::CSREdgecutFragmentBase::OEDests()'],['../classgrape_1_1EdgecutFragmentBase.html#ae8548c5043d893806902bc039b1f42c9',1,'grape::EdgecutFragmentBase::OEDests(const Vertex< VID_T > &v) const =0']]], + ['outervertexgid2vertex_685',['OuterVertexGid2Vertex',['../classgrape_1_1EdgecutFragmentBase.html#a6c885e5ef9c6d51563bf2ee141f433a7',1,'grape::EdgecutFragmentBase']]], + ['outervertices_686',['OuterVertices',['../classgrape_1_1EdgecutFragmentBase.html#a6a28cd2608313d8d3fa25511de7a1021',1,'grape::EdgecutFragmentBase']]], + ['output_687',['Output',['../classgrape_1_1ContextBase.html#aebfb5605fa72c78e62d2931a61f1fefe',1,'grape::ContextBase']]] +]; diff --git a/search/functions_9.html b/search/functions_9.html new file mode 100644 index 00000000..9a8e4290 --- /dev/null +++ b/search/functions_9.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/functions_9.js b/search/functions_9.js new file mode 100644 index 00000000..8c70e5af --- /dev/null +++ b/search/functions_9.js @@ -0,0 +1,7 @@ +var searchData= +[ + ['parallelprocess_688',['ParallelProcess',['../classgrape_1_1ParallelMessageManager.html#a80396c0b54b1b8326bac1f8151674f46',1,'grape::ParallelMessageManager::ParallelProcess()'],['../classgrape_1_1ParallelMessageManagerOpt.html#a3b23114796b4174df6f6b9ad4c917481',1,'grape::ParallelMessageManagerOpt::ParallelProcess(int thread_num, const GRAPH_T &frag, const FUNC_T &func)'],['../classgrape_1_1ParallelMessageManagerOpt.html#a2596a8bb2f4db7b2276487131ca120f2',1,'grape::ParallelMessageManagerOpt::ParallelProcess(int thread_num, const FUNC_T &func)'],['../classgrape_1_1ParallelMessageManager.html#a1f2a3548214ef2b2a26bd83a14bc8c23',1,'grape::ParallelMessageManager::ParallelProcess()']]], + ['peval_689',['PEval',['../classgrape_1_1cuda_1_1GPUAppBase.html#a56e33c523e44f19acb9dc037ba81baea',1,'grape::cuda::GPUAppBase::PEval()'],['../classgrape_1_1cuda_1_1BatchShuffleAppBase.html#aa860868a3dd7e46b0998ba6296622a98',1,'grape::cuda::BatchShuffleAppBase::PEval()'],['../classgrape_1_1ParallelAppBase.html#a98ac2f234e338e37198789f23e9c77a2',1,'grape::ParallelAppBase::PEval()'],['../classgrape_1_1BatchShuffleAppBase.html#a92a9c61ffbf79f145d6272cf3997c523',1,'grape::BatchShuffleAppBase::PEval()'],['../classgrape_1_1AutoAppBase.html#a5eee8f8b1ab47163aa4f30c209874fce',1,'grape::AutoAppBase::PEval()']]], + ['preparetorunapp_690',['PrepareToRunApp',['../classgrape_1_1cuda_1_1HostFragment.html#ad5a604fe8f6fc60c641d14af222847df',1,'grape::cuda::HostFragment::PrepareToRunApp()'],['../classgrape_1_1CSREdgecutFragmentBase.html#a8de4f60f805c5c24b6ad62b720e77ad1',1,'grape::CSREdgecutFragmentBase::PrepareToRunApp()'],['../classgrape_1_1FragmentBase.html#a5c9260b378b79d2e5e4cc6d8471755fd',1,'grape::FragmentBase::PrepareToRunApp()'],['../classgrape_1_1ImmutableEdgecutFragment.html#a8155f12679612162b8d507b6041012b2',1,'grape::ImmutableEdgecutFragment::PrepareToRunApp()']]], + ['put_691',['Put',['../classgrape_1_1BlockingQueue.html#acbd16945158880a82b54af44c421f458',1,'grape::BlockingQueue::Put(const T &item)'],['../classgrape_1_1BlockingQueue.html#af5fee1ef355f9170001f4b7092719a7d',1,'grape::BlockingQueue::Put(T &&item)'],['../classgrape_1_1NonblockingQueue.html#acc3594febad1915b31fa401f689ba7cb',1,'grape::NonblockingQueue::Put(const T &item)'],['../classgrape_1_1NonblockingQueue.html#a78dacbc53bc933a92e3fd0112d01ca9b',1,'grape::NonblockingQueue::Put(T &&item)']]] +]; diff --git a/search/functions_a.html b/search/functions_a.html new file mode 100644 index 00000000..5ecc152c --- /dev/null +++ b/search/functions_a.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/functions_a.js b/search/functions_a.js new file mode 100644 index 00000000..8be93d95 --- /dev/null +++ b/search/functions_a.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['registersyncbuffer_692',['RegisterSyncBuffer',['../classgrape_1_1AutoParallelMessageManager.html#a98a6d07ea27f611f9d071b417e124de8',1,'grape::AutoParallelMessageManager']]] +]; diff --git a/search/functions_b.html b/search/functions_b.html new file mode 100644 index 00000000..e301fedd --- /dev/null +++ b/search/functions_b.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/functions_b.js b/search/functions_b.js new file mode 100644 index 00000000..7a2452e7 --- /dev/null +++ b/search/functions_b.js @@ -0,0 +1,17 @@ +var searchData= +[ + ['sendmicrobufferbyfid_693',['SendMicroBufferByFid',['../classgrape_1_1ParallelMessageManagerOpt.html#a3c2e0c0177be87ead3ce70a5d5332378',1,'grape::ParallelMessageManagerOpt']]], + ['sendmsgthroughedges_694',['SendMsgThroughEdges',['../classgrape_1_1DefaultMessageManager.html#ab8e620279886b6a2fef63592df48e9b5',1,'grape::DefaultMessageManager::SendMsgThroughEdges()'],['../classgrape_1_1ThreadLocalMessageBufferOpt.html#a1fd1ffc7631d8b2b85c567e5fb196f95',1,'grape::ThreadLocalMessageBufferOpt::SendMsgThroughEdges()'],['../classgrape_1_1ThreadLocalMessageBuffer.html#a30a512147d98eba1cd947484fc941e74',1,'grape::ThreadLocalMessageBuffer::SendMsgThroughEdges()'],['../classgrape_1_1ParallelMessageManager.html#aa16928487d03ed7f1ed8dad7b4f1c0cb',1,'grape::ParallelMessageManager::SendMsgThroughEdges()'],['../classgrape_1_1ParallelMessageManagerOpt.html#a9e96edbf018af253077f110fd7781d5d',1,'grape::ParallelMessageManagerOpt::SendMsgThroughEdges()']]], + ['sendmsgthroughiedges_695',['SendMsgThroughIEdges',['../classgrape_1_1DefaultMessageManager.html#a7e76e5f06b8cdb8fe4316a67274ea467',1,'grape::DefaultMessageManager::SendMsgThroughIEdges()'],['../classgrape_1_1ParallelMessageManager.html#a56b201864684fd0cad31a24265e1d931',1,'grape::ParallelMessageManager::SendMsgThroughIEdges()'],['../classgrape_1_1ParallelMessageManagerOpt.html#a005de43c811e01ae0d519792ea45405b',1,'grape::ParallelMessageManagerOpt::SendMsgThroughIEdges()'],['../classgrape_1_1ThreadLocalMessageBuffer.html#ab446d794ec63b392ac2b85689a383104',1,'grape::ThreadLocalMessageBuffer::SendMsgThroughIEdges()'],['../classgrape_1_1ThreadLocalMessageBufferOpt.html#a810864a22f4d6c7fe02109532bccc959',1,'grape::ThreadLocalMessageBufferOpt::SendMsgThroughIEdges(const GRAPH_T &frag, const typename GRAPH_T::vertex_t &v, const MESSAGE_T &msg)']]], + ['sendmsgthroughoedges_696',['SendMsgThroughOEdges',['../classgrape_1_1ThreadLocalMessageBufferOpt.html#a3cef253880f7011c4b067d0b30cfc8fe',1,'grape::ThreadLocalMessageBufferOpt::SendMsgThroughOEdges()'],['../classgrape_1_1ThreadLocalMessageBuffer.html#a7b9fa800cd33206ed8c017f7ce45f9c0',1,'grape::ThreadLocalMessageBuffer::SendMsgThroughOEdges()'],['../classgrape_1_1ParallelMessageManagerOpt.html#a55bee5e7fdc260bf7f853a6ec5cb4ac8',1,'grape::ParallelMessageManagerOpt::SendMsgThroughOEdges()'],['../classgrape_1_1ParallelMessageManager.html#a5a4a791b20662e9e055bf130d0122e32',1,'grape::ParallelMessageManager::SendMsgThroughOEdges()'],['../classgrape_1_1DefaultMessageManager.html#a1bdccdc457667ab0f3f8a1e4f9497635',1,'grape::DefaultMessageManager::SendMsgThroughOEdges()']]], + ['sendrawmsgbyfid_697',['SendRawMsgByFid',['../classgrape_1_1ParallelMessageManager.html#a5485cde22e9f324a5d938751e801e076',1,'grape::ParallelMessageManager']]], + ['sendtofragment_698',['SendToFragment',['../classgrape_1_1DefaultMessageManager.html#ad38bf6d97fc8157ffbb1e3901560330f',1,'grape::DefaultMessageManager::SendToFragment()'],['../classgrape_1_1ParallelMessageManager.html#a16341cadb25c2931323941ad3cab70fa',1,'grape::ParallelMessageManager::SendToFragment()'],['../classgrape_1_1ParallelMessageManagerOpt.html#a17b671af569eb2b14ee3f3fbc50f8ff8',1,'grape::ParallelMessageManagerOpt::SendToFragment()'],['../classgrape_1_1ThreadLocalMessageBuffer.html#ac6538a81c44cdc708ac9086973ae612c',1,'grape::ThreadLocalMessageBuffer::SendToFragment()'],['../classgrape_1_1ThreadLocalMessageBufferOpt.html#aadf1ceecc4d897a104a28482176a40f9',1,'grape::ThreadLocalMessageBufferOpt::SendToFragment()']]], + ['setdata_699',['SetData',['../classgrape_1_1FragmentBase.html#a8c8c2bcea79bd700fd60d8a28b5114aa',1,'grape::FragmentBase::SetData()'],['../classgrape_1_1ImmutableEdgecutFragment.html#aacabcb3e59806c655337134f67411dc1',1,'grape::ImmutableEdgecutFragment::SetData()']]], + ['setlimit_700',['SetLimit',['../classgrape_1_1BlockingQueue.html#ae3aa98f186ae4a7928f23a99ac54f357',1,'grape::BlockingQueue']]], + ['setpartialread_701',['SetPartialRead',['../classgrape_1_1IOAdaptorBase.html#a36c5eaf246ca8bb5bfe7bf1f400cc6e3',1,'grape::IOAdaptorBase::SetPartialRead()'],['../classgrape_1_1LocalIOAdaptor.html#a231f334369b0dd0e7f6fcfda9fa576d9',1,'grape::LocalIOAdaptor::SetPartialRead()']]], + ['setproducernum_702',['SetProducerNum',['../classgrape_1_1BlockingQueue.html#ae165a34da9dd1cd99bb8714ef826b517',1,'grape::BlockingQueue']]], + ['start_703',['Start',['../classgrape_1_1cuda_1_1BatchShuffleMessageManager.html#a8557cdb8bebd00a789306c2199f32f41',1,'grape::cuda::BatchShuffleMessageManager::Start()'],['../classgrape_1_1cuda_1_1GPUMessageManager.html#abe1e4c466f1e35206c478bcfd5c5fe21',1,'grape::cuda::GPUMessageManager::Start()'],['../classgrape_1_1BatchShuffleMessageManager.html#a8d74335c561ebc9f6eee5f64b3f24a81',1,'grape::BatchShuffleMessageManager::Start()'],['../classgrape_1_1DefaultMessageManager.html#a029b7d75423074c7767ac2bcee0e8a53',1,'grape::DefaultMessageManager::Start()'],['../classgrape_1_1MessageManagerBase.html#a293a57c2d7444b749631e99169419687',1,'grape::MessageManagerBase::Start()'],['../classgrape_1_1ParallelMessageManager.html#a15b6a113a264c7bea57f140400d3a2d1',1,'grape::ParallelMessageManager::Start()'],['../classgrape_1_1ParallelMessageManagerOpt.html#aa5cdfdb4f895fe9824edffc5132110bc',1,'grape::ParallelMessageManagerOpt::Start()'],['../classgrape_1_1AutoParallelMessageManager.html#a029b7d75423074c7767ac2bcee0e8a53',1,'grape::AutoParallelMessageManager::Start() override']]], + ['startaround_704',['StartARound',['../classgrape_1_1AutoParallelMessageManager.html#af3365954b4bb2dc9aafaae7586c04b9e',1,'grape::AutoParallelMessageManager::StartARound()'],['../classgrape_1_1ParallelMessageManagerOpt.html#af4302cf8daea09704f3c783c68aa8dfb',1,'grape::ParallelMessageManagerOpt::StartARound()'],['../classgrape_1_1ParallelMessageManager.html#a36783315ecf9a1c4de73fda2e1ee29d0',1,'grape::ParallelMessageManager::StartARound()'],['../classgrape_1_1MessageManagerBase.html#abb9b409e119563c99b5332e72441d92c',1,'grape::MessageManagerBase::StartARound()'],['../classgrape_1_1DefaultMessageManager.html#a0657f1253391ba4400bba65ab59eddbe',1,'grape::DefaultMessageManager::StartARound()'],['../classgrape_1_1BatchShuffleMessageManager.html#afbd95f8373d24b0cfba877b15bcbca59',1,'grape::BatchShuffleMessageManager::StartARound()'],['../classgrape_1_1cuda_1_1GPUMessageManager.html#adf660c49d4e58431d1b01056939062d6',1,'grape::cuda::GPUMessageManager::StartARound()'],['../classgrape_1_1cuda_1_1BatchShuffleMessageManager.html#a1e82809e68d4d61125e2254af4a66a65',1,'grape::cuda::BatchShuffleMessageManager::StartARound()']]], + ['syncinnervertices_705',['SyncInnerVertices',['../classgrape_1_1cuda_1_1BatchShuffleMessageManager.html#a300113cd3ec6510c450376f33645ee31',1,'grape::cuda::BatchShuffleMessageManager::SyncInnerVertices()'],['../classgrape_1_1BatchShuffleMessageManager.html#ae4f222afd9d97ce31b92223b020bd60b',1,'grape::BatchShuffleMessageManager::SyncInnerVertices()']]], + ['syncstateonoutervertex_706',['SyncStateOnOuterVertex',['../classgrape_1_1DefaultMessageManager.html#a7c8da50cccc89816e70cfd00a6ef2873',1,'grape::DefaultMessageManager::SyncStateOnOuterVertex()'],['../classgrape_1_1ParallelMessageManager.html#a0bf7dafe5e735d1ef5dca8d89287f7c7',1,'grape::ParallelMessageManager::SyncStateOnOuterVertex()'],['../classgrape_1_1ParallelMessageManagerOpt.html#ad82a801e9f3d9410cc605e28f08aa043',1,'grape::ParallelMessageManagerOpt::SyncStateOnOuterVertex()'],['../classgrape_1_1ThreadLocalMessageBuffer.html#a14e47c1d3846049c40bcca76bb23c639',1,'grape::ThreadLocalMessageBuffer::SyncStateOnOuterVertex()'],['../classgrape_1_1ThreadLocalMessageBufferOpt.html#a56ed9eade581266dd2b2f35143ea6792',1,'grape::ThreadLocalMessageBufferOpt::SyncStateOnOuterVertex()']]] +]; diff --git a/search/functions_c.html b/search/functions_c.html new file mode 100644 index 00000000..c4f32687 --- /dev/null +++ b/search/functions_c.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/functions_c.js b/search/functions_c.js new file mode 100644 index 00000000..80722358 --- /dev/null +++ b/search/functions_c.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['toterminate_707',['ToTerminate',['../classgrape_1_1cuda_1_1BatchShuffleMessageManager.html#a308b77585f5542250ed8e9955fb209d6',1,'grape::cuda::BatchShuffleMessageManager::ToTerminate()'],['../classgrape_1_1cuda_1_1GPUMessageManager.html#aeebed0f26040dbe5ca29e3d80ea63d31',1,'grape::cuda::GPUMessageManager::ToTerminate()'],['../classgrape_1_1BatchShuffleMessageManager.html#a1f6babcaa74e62f2633f0cc164d7ef22',1,'grape::BatchShuffleMessageManager::ToTerminate()'],['../classgrape_1_1DefaultMessageManager.html#a3783d058df54533c6d5a5ec40fa03af6',1,'grape::DefaultMessageManager::ToTerminate()'],['../classgrape_1_1MessageManagerBase.html#a07b176b67cf9c664202dc6bd2f817df1',1,'grape::MessageManagerBase::ToTerminate()'],['../classgrape_1_1ParallelMessageManager.html#a97c686680d164c72ced862f8077c8fa1',1,'grape::ParallelMessageManager::ToTerminate()'],['../classgrape_1_1ParallelMessageManagerOpt.html#a5e52d93d2ec7689f3b64e4b1d55f7443',1,'grape::ParallelMessageManagerOpt::ToTerminate()'],['../classgrape_1_1AutoParallelMessageManager.html#a3783d058df54533c6d5a5ec40fa03af6',1,'grape::AutoParallelMessageManager::ToTerminate()']]] +]; diff --git a/search/functions_d.html b/search/functions_d.html new file mode 100644 index 00000000..7a1ed065 --- /dev/null +++ b/search/functions_d.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/functions_d.js b/search/functions_d.js new file mode 100644 index 00000000..fec1a46e --- /dev/null +++ b/search/functions_d.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['updateoutervertices_708',['UpdateOuterVertices',['../classgrape_1_1BatchShuffleMessageManager.html#a70e4e9f99f190e90dfcbc47888607f87',1,'grape::BatchShuffleMessageManager']]], + ['updatepartialoutervertices_709',['UpdatePartialOuterVertices',['../classgrape_1_1BatchShuffleMessageManager.html#aba3cf26d43d307e41ec8058f39c9fcf7',1,'grape::BatchShuffleMessageManager']]] +]; diff --git a/search/functions_e.html b/search/functions_e.html new file mode 100644 index 00000000..22d2a6bf --- /dev/null +++ b/search/functions_e.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/functions_e.js b/search/functions_e.js new file mode 100644 index 00000000..ed7d3619 --- /dev/null +++ b/search/functions_e.js @@ -0,0 +1,5 @@ +var searchData= +[ + ['vertex2gid_710',['Vertex2Gid',['../classgrape_1_1EdgecutFragmentBase.html#a6ab0f96d2f1a8275853da579a8c8ac6e',1,'grape::EdgecutFragmentBase::Vertex2Gid()'],['../classgrape_1_1FragmentBase.html#ab56a1bc3f0d825897696f3541a3c2080',1,'grape::FragmentBase::Vertex2Gid(const Vertex< VID_T > &v) const =0']]], + ['vertices_711',['Vertices',['../classgrape_1_1FragmentBase.html#ac1619f199de0313788d19dfb5c80f6a3',1,'grape::FragmentBase']]] +]; diff --git a/search/mag_sel.svg b/search/mag_sel.svg new file mode 100644 index 00000000..03626f64 --- /dev/null +++ b/search/mag_sel.svg @@ -0,0 +1,74 @@ + + + + + + + + image/svg+xml + + + + + + + + + + + diff --git a/search/namespaces_0.html b/search/namespaces_0.html new file mode 100644 index 00000000..21db2c3a --- /dev/null +++ b/search/namespaces_0.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/namespaces_0.js b/search/namespaces_0.js new file mode 100644 index 00000000..292b93f6 --- /dev/null +++ b/search/namespaces_0.js @@ -0,0 +1,6 @@ +var searchData= +[ + ['batch_5fshuffle_5fmessage_5fmanager_5fimpl_618',['batch_shuffle_message_manager_impl',['../namespacegrape_1_1batch__shuffle__message__manager__impl.html',1,'grape']]], + ['google_619',['google',['../namespacegoogle.html',1,'']]], + ['grape_620',['grape',['../namespacegrape.html',1,'']]] +]; diff --git a/search/nomatches.html b/search/nomatches.html new file mode 100644 index 00000000..2b9360b6 --- /dev/null +++ b/search/nomatches.html @@ -0,0 +1,13 @@ + + + + + + + + +
    +
    No Matches
    +
    + + diff --git a/search/search.css b/search/search.css new file mode 100644 index 00000000..9074198f --- /dev/null +++ b/search/search.css @@ -0,0 +1,257 @@ +/*---------------- Search Box */ + +#MSearchBox { + white-space : nowrap; + background: white; + border-radius: 0.65em; + box-shadow: inset 0.5px 0.5px 3px 0px #555; + z-index: 102; +} + +#MSearchBox .left { + display: inline-block; + vertical-align: middle; + height: 1.4em; +} + +#MSearchSelect { + display: inline-block; + vertical-align: middle; + height: 1.4em; + padding: 0 0 0 0.3em; + margin: 0; +} + +#MSearchField { + display: inline-block; + vertical-align: middle; + width: 7.5em; + height: 1.1em; + margin: 0 0.15em; + padding: 0; + line-height: 1em; + border:none; + color: #909090; + outline: none; + font-family: Arial, Verdana, sans-serif; + -webkit-border-radius: 0px; + border-radius: 0px; + background: none; +} + + +#MSearchBox .right { + display: inline-block; + vertical-align: middle; + width: 1.4em; + height: 1.4em; +} + +#MSearchClose { + display: none; + font-size: inherit; + background : none; + border: none; + margin: 0; + padding: 0; + outline: none; + +} + +#MSearchCloseImg { + height: 1.4em; + padding: 0.3em; + margin: 0; +} + +.MSearchBoxActive #MSearchField { + color: #000000; +} + +#main-menu > li:last-child { + /* This
  • object is the parent of the search bar */ + display: flex; + justify-content: center; + align-items: center; + height: 36px; + margin-right: 1em; +} + +/*---------------- Search filter selection */ + +#MSearchSelectWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #90A5CE; + background-color: #F9FAFC; + z-index: 10001; + padding-top: 4px; + padding-bottom: 4px; + -moz-border-radius: 4px; + -webkit-border-top-left-radius: 4px; + -webkit-border-top-right-radius: 4px; + -webkit-border-bottom-left-radius: 4px; + -webkit-border-bottom-right-radius: 4px; + -webkit-box-shadow: 5px 5px 5px rgba(0, 0, 0, 0.15); +} + +.SelectItem { + font: 8pt Arial, Verdana, sans-serif; + padding-left: 2px; + padding-right: 12px; + border: 0px; +} + +span.SelectionMark { + margin-right: 4px; + font-family: monospace; + outline-style: none; + text-decoration: none; +} + +a.SelectItem { + display: block; + outline-style: none; + color: #000000; + text-decoration: none; + padding-left: 6px; + padding-right: 12px; +} + +a.SelectItem:focus, +a.SelectItem:active { + color: #000000; + outline-style: none; + text-decoration: none; +} + +a.SelectItem:hover { + color: #FFFFFF; + background-color: #3D578C; + outline-style: none; + text-decoration: none; + cursor: pointer; + display: block; +} + +/*---------------- Search results window */ + +iframe#MSearchResults { + width: 60ex; + height: 15em; +} + +#MSearchResultsWindow { + display: none; + position: absolute; + left: 0; top: 0; + border: 1px solid #000; + background-color: #EEF1F7; + z-index:10000; +} + +/* ----------------------------------- */ + + +#SRIndex { + clear:both; + padding-bottom: 15px; +} + +.SREntry { + font-size: 10pt; + padding-left: 1ex; +} + +.SRPage .SREntry { + font-size: 8pt; + padding: 1px 5px; +} + +body.SRPage { + margin: 5px 2px; +} + +.SRChildren { + padding-left: 3ex; padding-bottom: .5em +} + +.SRPage .SRChildren { + display: none; +} + +.SRSymbol { + font-weight: bold; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRScope { + display: block; + color: #425E97; + font-family: Arial, Verdana, sans-serif; + text-decoration: none; + outline: none; +} + +a.SRSymbol:focus, a.SRSymbol:active, +a.SRScope:focus, a.SRScope:active { + text-decoration: underline; +} + +span.SRScope { + padding-left: 4px; + font-family: Arial, Verdana, sans-serif; +} + +.SRPage .SRStatus { + padding: 2px 5px; + font-size: 8pt; + font-style: italic; + font-family: Arial, Verdana, sans-serif; +} + +.SRResult { + display: none; +} + +div.searchresults { + margin-left: 10px; + margin-right: 10px; +} + +/*---------------- External search page results */ + +.searchresult { + background-color: #F0F3F8; +} + +.pages b { + color: white; + padding: 5px 5px 3px 5px; + background-image: url("../tab_a.png"); + background-repeat: repeat-x; + text-shadow: 0 1px 1px #000000; +} + +.pages { + line-height: 17px; + margin-left: 4px; + text-decoration: none; +} + +.hl { + font-weight: bold; +} + +#searchresults { + margin-bottom: 20px; +} + +.searchpages { + margin-top: 10px; +} + diff --git a/search/search.js b/search/search.js new file mode 100644 index 00000000..fb226f73 --- /dev/null +++ b/search/search.js @@ -0,0 +1,816 @@ +/* + @licstart The following is the entire license notice for the JavaScript code in this file. + + The MIT License (MIT) + + Copyright (C) 1997-2020 by Dimitri van Heesch + + Permission is hereby granted, free of charge, to any person obtaining a copy of this software + and associated documentation files (the "Software"), to deal in the Software without restriction, + including without limitation the rights to use, copy, modify, merge, publish, distribute, + sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is + furnished to do so, subject to the following conditions: + + The above copyright notice and this permission notice shall be included in all copies or + substantial portions of the Software. + + THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING + BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND + NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, + DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, + OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE. + + @licend The above is the entire license notice for the JavaScript code in this file + */ +function convertToId(search) +{ + var result = ''; + for (i=0;i do a search + { + this.Search(); + } + } + + this.OnSearchSelectKey = function(evt) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==40 && this.searchIndex0) // Up + { + this.searchIndex--; + this.OnSelectItem(this.searchIndex); + } + else if (e.keyCode==13 || e.keyCode==27) + { + this.OnSelectItem(this.searchIndex); + this.CloseSelectionWindow(); + this.DOMSearchField().focus(); + } + return false; + } + + // --------- Actions + + // Closes the results window. + this.CloseResultsWindow = function() + { + this.DOMPopupSearchResultsWindow().style.display = 'none'; + this.DOMSearchClose().style.display = 'none'; + this.Activate(false); + } + + this.CloseSelectionWindow = function() + { + this.DOMSearchSelectWindow().style.display = 'none'; + } + + // Performs a search. + this.Search = function() + { + this.keyTimeout = 0; + + // strip leading whitespace + var searchValue = this.DOMSearchField().value.replace(/^ +/, ""); + + var code = searchValue.toLowerCase().charCodeAt(0); + var idxChar = searchValue.substr(0, 1).toLowerCase(); + if ( 0xD800 <= code && code <= 0xDBFF && searchValue > 1) // surrogate pair + { + idxChar = searchValue.substr(0, 2); + } + + var resultsPage; + var resultsPageWithSearch; + var hasResultsPage; + + var idx = indexSectionsWithContent[this.searchIndex].indexOf(idxChar); + if (idx!=-1) + { + var hexCode=idx.toString(16); + resultsPage = this.resultsPath + '/' + indexSectionNames[this.searchIndex] + '_' + hexCode + this.extension; + resultsPageWithSearch = resultsPage+'?'+escape(searchValue); + hasResultsPage = true; + } + else // nothing available for this search term + { + resultsPage = this.resultsPath + '/nomatches' + this.extension; + resultsPageWithSearch = resultsPage; + hasResultsPage = false; + } + + window.frames.MSearchResults.location = resultsPageWithSearch; + var domPopupSearchResultsWindow = this.DOMPopupSearchResultsWindow(); + + if (domPopupSearchResultsWindow.style.display!='block') + { + var domSearchBox = this.DOMSearchBox(); + this.DOMSearchClose().style.display = 'inline-block'; + if (this.insideFrame) + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + domPopupSearchResultsWindow.style.position = 'relative'; + domPopupSearchResultsWindow.style.display = 'block'; + var width = document.body.clientWidth - 8; // the -8 is for IE :-( + domPopupSearchResultsWindow.style.width = width + 'px'; + domPopupSearchResults.style.width = width + 'px'; + } + else + { + var domPopupSearchResults = this.DOMPopupSearchResults(); + var left = getXPos(domSearchBox) + 150; // domSearchBox.offsetWidth; + var top = getYPos(domSearchBox) + 20; // domSearchBox.offsetHeight + 1; + domPopupSearchResultsWindow.style.display = 'block'; + left -= domPopupSearchResults.offsetWidth; + domPopupSearchResultsWindow.style.top = top + 'px'; + domPopupSearchResultsWindow.style.left = left + 'px'; + } + } + + this.lastSearchValue = searchValue; + this.lastResultsPage = resultsPage; + } + + // -------- Activation Functions + + // Activates or deactivates the search panel, resetting things to + // their default values if necessary. + this.Activate = function(isActive) + { + if (isActive || // open it + this.DOMPopupSearchResultsWindow().style.display == 'block' + ) + { + this.DOMSearchBox().className = 'MSearchBoxActive'; + + var searchField = this.DOMSearchField(); + + if (searchField.value == this.searchLabel) // clear "Search" term upon entry + { + searchField.value = ''; + this.searchActive = true; + } + } + else if (!isActive) // directly remove the panel + { + this.DOMSearchBox().className = 'MSearchBoxInactive'; + this.DOMSearchField().value = this.searchLabel; + this.searchActive = false; + this.lastSearchValue = '' + this.lastResultsPage = ''; + } + } +} + +// ----------------------------------------------------------------------- + +// The class that handles everything on the search results page. +function SearchResults(name) +{ + // The number of matches from the last run of . + this.lastMatchCount = 0; + this.lastKey = 0; + this.repeatOn = false; + + // Toggles the visibility of the passed element ID. + this.FindChildElement = function(id) + { + var parentElement = document.getElementById(id); + var element = parentElement.firstChild; + + while (element && element!=parentElement) + { + if (element.nodeName.toLowerCase() == 'div' && element.className == 'SRChildren') + { + return element; + } + + if (element.nodeName.toLowerCase() == 'div' && element.hasChildNodes()) + { + element = element.firstChild; + } + else if (element.nextSibling) + { + element = element.nextSibling; + } + else + { + do + { + element = element.parentNode; + } + while (element && element!=parentElement && !element.nextSibling); + + if (element && element!=parentElement) + { + element = element.nextSibling; + } + } + } + } + + this.Toggle = function(id) + { + var element = this.FindChildElement(id); + if (element) + { + if (element.style.display == 'block') + { + element.style.display = 'none'; + } + else + { + element.style.display = 'block'; + } + } + } + + // Searches for the passed string. If there is no parameter, + // it takes it from the URL query. + // + // Always returns true, since other documents may try to call it + // and that may or may not be possible. + this.Search = function(search) + { + if (!search) // get search word from URL + { + search = window.location.search; + search = search.substring(1); // Remove the leading '?' + search = unescape(search); + } + + search = search.replace(/^ +/, ""); // strip leading spaces + search = search.replace(/ +$/, ""); // strip trailing spaces + search = search.toLowerCase(); + search = convertToId(search); + + var resultRows = document.getElementsByTagName("div"); + var matches = 0; + + var i = 0; + while (i < resultRows.length) + { + var row = resultRows.item(i); + if (row.className == "SRResult") + { + var rowMatchName = row.id.toLowerCase(); + rowMatchName = rowMatchName.replace(/^sr\d*_/, ''); // strip 'sr123_' + + if (search.length<=rowMatchName.length && + rowMatchName.substr(0, search.length)==search) + { + row.style.display = 'block'; + matches++; + } + else + { + row.style.display = 'none'; + } + } + i++; + } + document.getElementById("Searching").style.display='none'; + if (matches == 0) // no results + { + document.getElementById("NoMatches").style.display='block'; + } + else // at least one result + { + document.getElementById("NoMatches").style.display='none'; + } + this.lastMatchCount = matches; + return true; + } + + // return the first item with index index or higher that is visible + this.NavNext = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index++; + } + return focusItem; + } + + this.NavPrev = function(index) + { + var focusItem; + while (1) + { + var focusName = 'Item'+index; + focusItem = document.getElementById(focusName); + if (focusItem && focusItem.parentNode.parentNode.style.display=='block') + { + break; + } + else if (!focusItem) // last element + { + break; + } + focusItem=null; + index--; + } + return focusItem; + } + + this.ProcessKeys = function(e) + { + if (e.type == "keydown") + { + this.repeatOn = false; + this.lastKey = e.keyCode; + } + else if (e.type == "keypress") + { + if (!this.repeatOn) + { + if (this.lastKey) this.repeatOn = true; + return false; // ignore first keypress after keydown + } + } + else if (e.type == "keyup") + { + this.lastKey = 0; + this.repeatOn = false; + } + return this.lastKey!=0; + } + + this.Nav = function(evt,itemIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + var newIndex = itemIndex-1; + var focusItem = this.NavPrev(newIndex); + if (focusItem) + { + var child = this.FindChildElement(focusItem.parentNode.parentNode.id); + if (child && child.style.display == 'block') // children visible + { + var n=0; + var tmpElem; + while (1) // search for last child + { + tmpElem = document.getElementById('Item'+newIndex+'_c'+n); + if (tmpElem) + { + focusItem = tmpElem; + } + else // found it! + { + break; + } + n++; + } + } + } + if (focusItem) + { + focusItem.focus(); + } + else // return focus to search field + { + parent.document.getElementById("MSearchField").focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = itemIndex+1; + var focusItem; + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem && elem.style.display == 'block') // children visible + { + focusItem = document.getElementById('Item'+itemIndex+'_c0'); + } + if (!focusItem) focusItem = this.NavNext(newIndex); + if (focusItem) focusItem.focus(); + } + else if (this.lastKey==39) // Right + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'block'; + } + else if (this.lastKey==37) // Left + { + var item = document.getElementById('Item'+itemIndex); + var elem = this.FindChildElement(item.parentNode.parentNode.id); + if (elem) elem.style.display = 'none'; + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } + + this.NavChild = function(evt,itemIndex,childIndex) + { + var e = (evt) ? evt : window.event; // for IE + if (e.keyCode==13) return true; + if (!this.ProcessKeys(e)) return false; + + if (this.lastKey==38) // Up + { + if (childIndex>0) + { + var newIndex = childIndex-1; + document.getElementById('Item'+itemIndex+'_c'+newIndex).focus(); + } + else // already at first child, jump to parent + { + document.getElementById('Item'+itemIndex).focus(); + } + } + else if (this.lastKey==40) // Down + { + var newIndex = childIndex+1; + var elem = document.getElementById('Item'+itemIndex+'_c'+newIndex); + if (!elem) // last child, jump to parent next parent + { + elem = this.NavNext(itemIndex+1); + } + if (elem) + { + elem.focus(); + } + } + else if (this.lastKey==27) // Escape + { + parent.searchBox.CloseResultsWindow(); + parent.document.getElementById("MSearchField").focus(); + } + else if (this.lastKey==13) // Enter + { + return true; + } + return false; + } +} + +function setKeyActions(elem,action) +{ + elem.setAttribute('onkeydown',action); + elem.setAttribute('onkeypress',action); + elem.setAttribute('onkeyup',action); +} + +function setClassAttr(elem,attr) +{ + elem.setAttribute('class',attr); + elem.setAttribute('className',attr); +} + +function createResults() +{ + var results = document.getElementById("SRResults"); + for (var e=0; e(R!W8j_r#qQ#gnr4kAxdU#F0+OBry$Z+ z_0PMi;P|#{d%mw(dnw=jM%@$onTJa%@6Nm3`;2S#nwtVFJI#`U@2Q@@JCCctagvF- z8H=anvo~dTmJ2YA%wA6IHRv%{vxvUm|R)kgZeo zmX%Zb;mpflGZdXCTAgit`||AFzkI#z&(3d4(htA?U2FOL4WF6wY&TB#n3n*I4+hl| z*NBpo#FA92vEu822WQ%mvv4FO#qs` BFGc_W literal 0 HcmV?d00001 diff --git a/search/search_r.png b/search/search_r.png new file mode 100644 index 0000000000000000000000000000000000000000..1af5d21ee13e070d7600f1c4657fde843b953a69 GIT binary patch literal 553 zcmeAS@N?(olHy`uVBq!ia0vp^LO?9c!2%@BXHTsJQY`6?zK#qG8~eHcB(ehe3dtTp zz6=bxGZ+|(`xqD=STHa&U1eaXVrO7DwS|Gf*oA>XrmV$GYcEhOQT(QLuS{~ooZ2P@v=Xc@RKW@Irliv8_;wroU0*)0O?temdsA~70jrdux+`@W7 z-N(<(C)L?hOO?KV{>8(jC{hpKsws)#Fh zvsO>IB+gb@b+rGWaO&!a9Z{!U+fV*s7TS>fdt&j$L%^U@Epd$~Nl7e8wMs5Z1yT$~ z28I^8hDN#u<{^fLRz?<9hUVG^237_Jy7tbuQ8eV{r(~v8;?@w8^gA7>fx*+&&t;uc GLK6VEQpiUD literal 0 HcmV?d00001 diff --git a/search/searchdata.js b/search/searchdata.js new file mode 100644 index 00000000..8d7b799e --- /dev/null +++ b/search/searchdata.js @@ -0,0 +1,36 @@ +var indexSectionsWithContent = +{ + 0: "_abcdefghiklmnopqrstuvw", + 1: "_abcdefghiklmnopqrstvw", + 2: "g", + 3: "a", + 4: "acdfghiloprstuv", + 5: "v", + 6: "lm", + 7: "k" +}; + +var indexSectionNames = +{ + 0: "all", + 1: "classes", + 2: "namespaces", + 3: "files", + 4: "functions", + 5: "typedefs", + 6: "enums", + 7: "enumvalues" +}; + +var indexSectionLabels = +{ + 0: "All", + 1: "Classes", + 2: "Namespaces", + 3: "Files", + 4: "Functions", + 5: "Typedefs", + 6: "Enumerations", + 7: "Enumerator" +}; + diff --git a/search/typedefs_0.html b/search/typedefs_0.html new file mode 100644 index 00000000..a4684c4a --- /dev/null +++ b/search/typedefs_0.html @@ -0,0 +1,37 @@ + + + + + + + + + + +
    +
    Loading...
    +
    + +
    Searching...
    +
    No Matches
    + +
    + + diff --git a/search/typedefs_0.js b/search/typedefs_0.js new file mode 100644 index 00000000..5a2c2e25 --- /dev/null +++ b/search/typedefs_0.js @@ -0,0 +1,4 @@ +var searchData= +[ + ['vertexvector_712',['VertexVector',['../namespacegrape.html#afcee21302c3f265f2d504a6faf4973f5',1,'grape']]] +]; diff --git a/splitbar.png b/splitbar.png new file mode 100644 index 0000000000000000000000000000000000000000..fe895f2c58179b471a22d8320b39a4bd7312ec8e GIT binary patch literal 314 zcmeAS@N?(olHy`uVBq!ia0vp^Yzz!63>-{AmhX=Jf(#6djGiuzAr*{o?=JLmPLyc> z_*`QK&+BH@jWrYJ7>r6%keRM@)Qyv8R=enp0jiI>aWlGyB58O zFVR20d+y`K7vDw(hJF3;>dD*3-?v=<8M)@x|EEGLnJsniYK!2U1 Y!`|5biEc?d1`HDhPgg&ebxsLQ02F6;9RL6T literal 0 HcmV?d00001 diff --git a/structcub_1_1Traits_3_01grape_1_1Vertex_3_01T_01_4_01_4.html b/structcub_1_1Traits_3_01grape_1_1Vertex_3_01T_01_4_01_4.html new file mode 100644 index 00000000..5dfda026 --- /dev/null +++ b/structcub_1_1Traits_3_01grape_1_1Vertex_3_01T_01_4_01_4.html @@ -0,0 +1,85 @@ + + + + + + + +libgrape-lite: cub::Traits< grape::Vertex< T > > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    cub::Traits< grape::Vertex< T > > Struct Template Reference
    +
    +
    +
    +Inheritance diagram for cub::Traits< grape::Vertex< T > >:
    +
    +
    + +
    +
    + + + + diff --git a/structcub_1_1Traits_3_01grape_1_1Vertex_3_01T_01_4_01_4.png b/structcub_1_1Traits_3_01grape_1_1Vertex_3_01T_01_4_01_4.png new file mode 100644 index 0000000000000000000000000000000000000000..fe454769f7fec47dfd14204585adfc72262ddea7 GIT binary patch literal 898 zcmeAS@N?(olHy`uVBq!ia0y~yVB`R@12~w00N*K+CSI6;r@N4;mq=7`LeTeo?1?FUgyZue?@+h)^mkzwU2Ad-T5v#XzWsS z@3^XISoCl0AA$Lo7W`2D-xn>_E)%~p>}t!Ejx8JZy>=9HT^caMzw((xv!|Zpk_^kv zj><=uUOj9OJ6)vxS18zLox>aLFUx{Ie0|F;u*=wS`pri<-kOt~PetFHlD}E(f}C@| z?58H@mD&Iubk+- zt0`Lbhm3Zy9|Il{TT(M)~vB@`;!g5^}e%AAXWDd+N&YW0RsL@3@Hpu|N&BztO2aKX zj2;GsBmp)?ha(Eu6h2aK?C99wroeC@3$EzI{>BTodtXfZx&Fi5?_%8IY~k(<4dGv2 zEBKxJF;`*VkDb>Y-W-{IuWac8iDkbwy|s)F%D$fZa)UlwY02j6+qVcZDBWj!q_DyM z+y0*+e6ZKfz4Xe zAEmB~`rq*Au0j;YY1eCyvuqy*%sDRR{=8&gQu&X J%Q~loCIHR3hG75z literal 0 HcmV?d00001 diff --git a/structgrape_1_1Array_1_1__ConstructTransaction-members.html b/structgrape_1_1Array_1_1__ConstructTransaction-members.html new file mode 100644 index 00000000..41d39619 --- /dev/null +++ b/structgrape_1_1Array_1_1__ConstructTransaction-members.html @@ -0,0 +1,89 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::Array< _Tp, _Alloc >::_ConstructTransaction Member List
    +
    + + + + + diff --git a/structgrape_1_1Array_1_1__ConstructTransaction.html b/structgrape_1_1Array_1_1__ConstructTransaction.html new file mode 100644 index 00000000..525bb9a1 --- /dev/null +++ b/structgrape_1_1Array_1_1__ConstructTransaction.html @@ -0,0 +1,112 @@ + + + + + + + +libgrape-lite: grape::Array< _Tp, _Alloc >::_ConstructTransaction Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::Array< _Tp, _Alloc >::_ConstructTransaction Struct Reference
    +
    +
    + + + + +

    +Public Member Functions

    _ConstructTransaction (__Array_base &__v, size_type __n)
     
    + + + + + + + +

    +Public Attributes

    +__Array_base__v_
     
    +pointer __pos_
     
    +const_pointer const __new_end_
     
    + + + + + +

    +Private Member Functions

    _ConstructTransaction (_ConstructTransaction const &)=delete
     
    +_ConstructTransactionoperator= (_ConstructTransaction const &)=delete
     
    +
    + + + + diff --git a/structgrape_1_1Array_1_1____Array__base-members.html b/structgrape_1_1Array_1_1____Array__base-members.html new file mode 100644 index 00000000..5e76b9b2 --- /dev/null +++ b/structgrape_1_1Array_1_1____Array__base-members.html @@ -0,0 +1,89 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::Array< _Tp, _Alloc >::__Array_base Member List
    +
    + + + + + diff --git a/structgrape_1_1Array_1_1____Array__base.html b/structgrape_1_1Array_1_1____Array__base.html new file mode 100644 index 00000000..b6658fea --- /dev/null +++ b/structgrape_1_1Array_1_1____Array__base.html @@ -0,0 +1,114 @@ + + + + + + + +libgrape-lite: grape::Array< _Tp, _Alloc >::__Array_base Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::Array< _Tp, _Alloc >::__Array_base Struct Reference
    +
    +
    +
    +Inheritance diagram for grape::Array< _Tp, _Alloc >::__Array_base:
    +
    +
    + +
    + + + + + + + + + + +

    +Public Member Functions

    __Array_base (const _Alloc &__a) noexcept
     
    __Array_base (_Alloc &&__a) noexcept
     
    +size_type size () const noexcept
     
    +bool empty () const noexcept
     
    + + + + + +

    +Public Attributes

    +pointer __begin_
     
    +pointer __end_
     
    +
    + + + + diff --git a/structgrape_1_1Array_1_1____Array__base.png b/structgrape_1_1Array_1_1____Array__base.png new file mode 100644 index 0000000000000000000000000000000000000000..0fd77ac35009a5d80e964afdc8341e583821110b GIT binary patch literal 687 zcmeAS@N?(olHy`uVBq!ia0y~yU}Ocd12~w0qJ|OKbj2>zr*+mR0!azs1#xDk%wAY~FoGMhb+Tr25 zhNZmBS4{t!+01|Aad`&!^4}u!LeBr}uzY09m3ujJnL+%l$HljHJuICSck4vzktY&+ z`zN1WZKKiQlX$Ky&bEAcu+CDSjX@Ia=lP0TewO~+=6X-b_5Io{<)7o(uY`#$y0&QT z$5n@=mkAdwH#w*rbYf-yqul7|uj}%DysGYY%F$&ojrChzz zJ9m?!r;XrLA(o5~XRU_(mtosVlo)nRfd+UEIF|k~JX*RiPSIbl6_~mhJYD@<);T3K F0RTs*EN=h+ literal 0 HcmV?d00001 diff --git a/structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1____Array__base-members.html b/structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1____Array__base-members.html new file mode 100644 index 00000000..8290a382 --- /dev/null +++ b/structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1____Array__base-members.html @@ -0,0 +1,85 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::Array< EmptyType, _Alloc >::__Array_base Member List
    +
    +
    + +

    This is the complete list of members for grape::Array< EmptyType, _Alloc >::__Array_base, including all inherited members.

    + + + + +
    __Array_base() noexcept (defined in grape::Array< EmptyType, _Alloc >::__Array_base)grape::Array< EmptyType, _Alloc >::__Array_baseinline
    __Array_base(const _Alloc &__a) noexcept (defined in grape::Array< EmptyType, _Alloc >::__Array_base)grape::Array< EmptyType, _Alloc >::__Array_baseinlineexplicit
    __Array_base(_Alloc &&__a) noexcept (defined in grape::Array< EmptyType, _Alloc >::__Array_base)grape::Array< EmptyType, _Alloc >::__Array_baseinlineexplicit
    + + + + diff --git a/structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1____Array__base.html b/structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1____Array__base.html new file mode 100644 index 00000000..460bea3f --- /dev/null +++ b/structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1____Array__base.html @@ -0,0 +1,98 @@ + + + + + + + +libgrape-lite: grape::Array< EmptyType, _Alloc >::__Array_base Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::Array< EmptyType, _Alloc >::__Array_base Struct Reference
    +
    +
    +
    +Inheritance diagram for grape::Array< EmptyType, _Alloc >::__Array_base:
    +
    +
    + +
    + + + + + + +

    +Public Member Functions

    __Array_base (const _Alloc &__a) noexcept
     
    __Array_base (_Alloc &&__a) noexcept
     
    +
    + + + + diff --git a/structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1____Array__base.png b/structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1____Array__base.png new file mode 100644 index 0000000000000000000000000000000000000000..909ad7553411252c0ce3df35d32673d2c722959f GIT binary patch literal 868 zcmeAS@N?(olHy`uVBq!ia0y~yVAKP$12~w0pprYw<$@HSCrx`N-etGMY&ldL!W%HM> z7V`zlT>r9b)wKW9>?eK6-#L5T^2NT_>q;j_{WjjE^74MMb?kn7pc=Nf+azKqeVMj% z-4{JiDT$KQ^eIdBpY|=Wwf+<9_OlnE6q%a(l_wtV{c35O(-E`Qxq zEBoP8-OfAnQfF7rUn#qHzs~O`zrEIQ_62|4)%L#OTgIXJt#_H`hs~e({q^mSGiM8~ zU1#?tXW!xCZ;Q(#tKUm8`pwQYG!c3H@U_P2B9d|g@` zTdn8(^xUoguRojbdUihXZ*%!u>&Lr9ZR%(DCe}3X zT4Yy$Wb(bMQ!191%w2nbTEjDmlC$NwtbYv->stl4Gqw!890&3Yx)4J%hYW0 + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::Array< EmptyType, _Alloc >::const_iterator Member List
    +
    +
    + +

    This is the complete list of members for grape::Array< EmptyType, _Alloc >::const_iterator, including all inherited members.

    + + + + + + + + + + + + + +
    const_iterator() noexcept=default (defined in grape::Array< EmptyType, _Alloc >::const_iterator)grape::Array< EmptyType, _Alloc >::const_iterator
    const_iterator(EmptyType *val, size_t index) noexcept (defined in grape::Array< EmptyType, _Alloc >::const_iterator)grape::Array< EmptyType, _Alloc >::const_iteratorinlineexplicit
    index_ (defined in grape::Array< EmptyType, _Alloc >::const_iterator)grape::Array< EmptyType, _Alloc >::const_iteratorprivate
    operator!= (defined in grape::Array< EmptyType, _Alloc >::const_iterator)grape::Array< EmptyType, _Alloc >::const_iteratorfriend
    operator*() const noexcept (defined in grape::Array< EmptyType, _Alloc >::const_iterator)grape::Array< EmptyType, _Alloc >::const_iteratorinline
    operator++() noexcept (defined in grape::Array< EmptyType, _Alloc >::const_iterator)grape::Array< EmptyType, _Alloc >::const_iteratorinline
    operator++(int) noexcept (defined in grape::Array< EmptyType, _Alloc >::const_iterator)grape::Array< EmptyType, _Alloc >::const_iteratorinline
    operator--() noexcept (defined in grape::Array< EmptyType, _Alloc >::const_iterator)grape::Array< EmptyType, _Alloc >::const_iteratorinline
    operator--(int) noexcept (defined in grape::Array< EmptyType, _Alloc >::const_iterator)grape::Array< EmptyType, _Alloc >::const_iteratorinline
    operator->() const noexcept (defined in grape::Array< EmptyType, _Alloc >::const_iterator)grape::Array< EmptyType, _Alloc >::const_iteratorinline
    operator== (defined in grape::Array< EmptyType, _Alloc >::const_iterator)grape::Array< EmptyType, _Alloc >::const_iteratorfriend
    val_ (defined in grape::Array< EmptyType, _Alloc >::const_iterator)grape::Array< EmptyType, _Alloc >::const_iteratorprivate
    + + + + diff --git a/structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1const__iterator.html b/structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1const__iterator.html new file mode 100644 index 00000000..480e5459 --- /dev/null +++ b/structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1const__iterator.html @@ -0,0 +1,127 @@ + + + + + + + +libgrape-lite: grape::Array< EmptyType, _Alloc >::const_iterator Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::Array< EmptyType, _Alloc >::const_iterator Struct Reference
    +
    +
    + + + + + + + + + + + + + + + + +

    +Public Member Functions

    const_iterator (EmptyType *val, size_t index) noexcept
     
    +const_reference operator* () const noexcept
     
    +const_pointer operator-> () const noexcept
     
    +const_iterator & operator++ () noexcept
     
    +const_iterator operator++ (int) noexcept
     
    +const_iterator & operator-- () noexcept
     
    +const_iterator operator-- (int) noexcept
     
    + + + + + +

    +Private Attributes

    +EmptyTypeval_
     
    +size_t index_
     
    + + + + + +

    +Friends

    +bool operator== (const const_iterator &lhs, const const_iterator &rhs)
     
    +bool operator!= (const const_iterator &lhs, const const_iterator &rhs)
     
    +
    + + + + diff --git a/structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1iterator-members.html b/structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1iterator-members.html new file mode 100644 index 00000000..ebf100eb --- /dev/null +++ b/structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1iterator-members.html @@ -0,0 +1,94 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::Array< EmptyType, _Alloc >::iterator Member List
    +
    +
    + +

    This is the complete list of members for grape::Array< EmptyType, _Alloc >::iterator, including all inherited members.

    + + + + + + + + + + + + + +
    index_ (defined in grape::Array< EmptyType, _Alloc >::iterator)grape::Array< EmptyType, _Alloc >::iteratorprivate
    iterator() noexcept=default (defined in grape::Array< EmptyType, _Alloc >::iterator)grape::Array< EmptyType, _Alloc >::iterator
    iterator(EmptyType *val, size_t index) noexcept (defined in grape::Array< EmptyType, _Alloc >::iterator)grape::Array< EmptyType, _Alloc >::iteratorinlineexplicit
    operator!= (defined in grape::Array< EmptyType, _Alloc >::iterator)grape::Array< EmptyType, _Alloc >::iteratorfriend
    operator*() noexcept (defined in grape::Array< EmptyType, _Alloc >::iterator)grape::Array< EmptyType, _Alloc >::iteratorinline
    operator++() noexcept (defined in grape::Array< EmptyType, _Alloc >::iterator)grape::Array< EmptyType, _Alloc >::iteratorinline
    operator++(int) noexcept (defined in grape::Array< EmptyType, _Alloc >::iterator)grape::Array< EmptyType, _Alloc >::iteratorinline
    operator--() noexcept (defined in grape::Array< EmptyType, _Alloc >::iterator)grape::Array< EmptyType, _Alloc >::iteratorinline
    operator--(int) noexcept (defined in grape::Array< EmptyType, _Alloc >::iterator)grape::Array< EmptyType, _Alloc >::iteratorinline
    operator->() noexcept (defined in grape::Array< EmptyType, _Alloc >::iterator)grape::Array< EmptyType, _Alloc >::iteratorinline
    operator== (defined in grape::Array< EmptyType, _Alloc >::iterator)grape::Array< EmptyType, _Alloc >::iteratorfriend
    val_ (defined in grape::Array< EmptyType, _Alloc >::iterator)grape::Array< EmptyType, _Alloc >::iteratorprivate
    + + + + diff --git a/structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1iterator.html b/structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1iterator.html new file mode 100644 index 00000000..2738395e --- /dev/null +++ b/structgrape_1_1Array_3_01EmptyType_00_01__Alloc_01_4_1_1iterator.html @@ -0,0 +1,127 @@ + + + + + + + +libgrape-lite: grape::Array< EmptyType, _Alloc >::iterator Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::Array< EmptyType, _Alloc >::iterator Struct Reference
    +
    +
    + + + + + + + + + + + + + + + + +

    +Public Member Functions

    iterator (EmptyType *val, size_t index) noexcept
     
    +reference operator* () noexcept
     
    +pointer operator-> () noexcept
     
    +iterator & operator++ () noexcept
     
    +iterator operator++ (int) noexcept
     
    +iterator & operator-- () noexcept
     
    +iterator operator-- (int) noexcept
     
    + + + + + +

    +Private Attributes

    +EmptyTypeval_
     
    +size_t index_
     
    + + + + + +

    +Friends

    +bool operator== (const iterator &lhs, const iterator &rhs)
     
    +bool operator!= (const iterator &lhs, const iterator &rhs)
     
    +
    + + + + diff --git a/structgrape_1_1AutoParallelMessageManager_1_1ap__event-members.html b/structgrape_1_1AutoParallelMessageManager_1_1ap__event-members.html new file mode 100644 index 00000000..858698d3 --- /dev/null +++ b/structgrape_1_1AutoParallelMessageManager_1_1ap__event-members.html @@ -0,0 +1,87 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::AutoParallelMessageManager< FRAG_T >::ap_event Member List
    +
    + + + + + diff --git a/structgrape_1_1AutoParallelMessageManager_1_1ap__event.html b/structgrape_1_1AutoParallelMessageManager_1_1ap__event.html new file mode 100644 index 00000000..d8a5c87d --- /dev/null +++ b/structgrape_1_1AutoParallelMessageManager_1_1ap__event.html @@ -0,0 +1,105 @@ + + + + + + + +libgrape-lite: grape::AutoParallelMessageManager< FRAG_T >::ap_event Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::AutoParallelMessageManager< FRAG_T >::ap_event Struct Reference
    +
    +
    + + + + +

    +Public Member Functions

    ap_event (const FRAG_T &f, ISyncBuffer *b, MessageStrategy m, int e)
     
    + + + + + + + + + +

    +Public Attributes

    +const FRAG_T & fragment
     
    +ISyncBufferbuffer
     
    +MessageStrategy message_strategy
     
    +int event_id
     
    +
    + + + + diff --git a/structgrape_1_1DestList-members.html b/structgrape_1_1DestList-members.html new file mode 100644 index 00000000..0df203c0 --- /dev/null +++ b/structgrape_1_1DestList-members.html @@ -0,0 +1,87 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::DestList Member List
    +
    +
    + +

    This is the complete list of members for grape::DestList, including all inherited members.

    + + + + + + +
    begin (defined in grape::DestList)grape::DestList
    DestList(const fid_t *begin_, const fid_t *end_) (defined in grape::DestList)grape::DestListinline
    Empty() (defined in grape::DestList)grape::DestListinline
    end (defined in grape::DestList)grape::DestList
    NotEmpty() (defined in grape::DestList)grape::DestListinline
    + + + + diff --git a/structgrape_1_1DestList.html b/structgrape_1_1DestList.html new file mode 100644 index 00000000..b0c4fb4e --- /dev/null +++ b/structgrape_1_1DestList.html @@ -0,0 +1,112 @@ + + + + + + + +libgrape-lite: grape::DestList Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::DestList Struct Reference
    +
    +
    + +

    Destination list for message exchange. A message may need to be sent to all the fragments in the DestList. + More...

    + +

    #include <adj_list.h>

    + + + + + + + + +

    +Public Member Functions

    +DEV_HOST DestList (const fid_t *begin_, const fid_t *end_)
     
    +DEV_HOST_INLINE bool Empty ()
     
    +DEV_HOST_INLINE bool NotEmpty ()
     
    + + + + + +

    +Public Attributes

    +const fid_t * begin
     
    +const fid_t * end
     
    +

    Detailed Description

    +

    Destination list for message exchange. A message may need to be sent to all the fragments in the DestList.

    +
    + + + + diff --git a/structgrape_1_1Edge-members.html b/structgrape_1_1Edge-members.html new file mode 100644 index 00000000..08d4ec5b --- /dev/null +++ b/structgrape_1_1Edge-members.html @@ -0,0 +1,96 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::Edge< VID_T, EDATA_T > Member List
    +
    +
    + +

    This is the complete list of members for grape::Edge< VID_T, EDATA_T >, including all inherited members.

    + + + + + + + + + + + + + + + +
    dst (defined in grape::Edge< VID_T, EDATA_T >)grape::Edge< VID_T, EDATA_T >
    edata (defined in grape::Edge< VID_T, EDATA_T >)grape::Edge< VID_T, EDATA_T >
    Edge() (defined in grape::Edge< VID_T, EDATA_T >)grape::Edge< VID_T, EDATA_T >inline
    Edge(const VID_T &src, const VID_T &dst) (defined in grape::Edge< VID_T, EDATA_T >)grape::Edge< VID_T, EDATA_T >inline
    Edge(const VID_T &src, const VID_T &dst, const EDATA_T &edata) (defined in grape::Edge< VID_T, EDATA_T >)grape::Edge< VID_T, EDATA_T >inline
    Edge(const Edge &e) (defined in grape::Edge< VID_T, EDATA_T >)grape::Edge< VID_T, EDATA_T >inline
    Edge(const VID_T &src, const VID_T &dst, EDATA_T &&edata) (defined in grape::Edge< VID_T, EDATA_T >)grape::Edge< VID_T, EDATA_T >inline
    Edge(Edge &&e) noexcept (defined in grape::Edge< VID_T, EDATA_T >)grape::Edge< VID_T, EDATA_T >inline
    operator!=(const Edge &other) const (defined in grape::Edge< VID_T, EDATA_T >)grape::Edge< VID_T, EDATA_T >inline
    operator=(const Edge &other) (defined in grape::Edge< VID_T, EDATA_T >)grape::Edge< VID_T, EDATA_T >inline
    operator=(Edge &&other) (defined in grape::Edge< VID_T, EDATA_T >)grape::Edge< VID_T, EDATA_T >inline
    operator==(const Edge &other) const (defined in grape::Edge< VID_T, EDATA_T >)grape::Edge< VID_T, EDATA_T >inline
    src (defined in grape::Edge< VID_T, EDATA_T >)grape::Edge< VID_T, EDATA_T >
    ~Edge() (defined in grape::Edge< VID_T, EDATA_T >)grape::Edge< VID_T, EDATA_T >inline
    + + + + diff --git a/structgrape_1_1Edge.html b/structgrape_1_1Edge.html new file mode 100644 index 00000000..feeaada2 --- /dev/null +++ b/structgrape_1_1Edge.html @@ -0,0 +1,143 @@ + + + + + + + +libgrape-lite: grape::Edge< VID_T, EDATA_T > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::Edge< VID_T, EDATA_T > Struct Template Reference
    +
    +
    + +

    Edge representation. + More...

    + +

    #include <edge.h>

    + + + + + + + + + + + + + + + + + + + + +

    +Public Member Functions

    +DEV_HOST Edge (const VID_T &src, const VID_T &dst)
     
    +DEV_HOST Edge (const VID_T &src, const VID_T &dst, const EDATA_T &edata)
     
    +DEV_HOST Edge (const Edge &e)
     
    +DEV_HOST Edge (const VID_T &src, const VID_T &dst, EDATA_T &&edata)
     
    +DEV_HOST Edge (Edge &&e) noexcept
     
    +DEV_HOST Edgeoperator= (const Edge &other)
     
    +DEV_HOST Edgeoperator= (Edge &&other)
     
    +DEV_HOST bool operator== (const Edge &other) const
     
    +DEV_HOST bool operator!= (const Edge &other) const
     
    + + + + + + + +

    +Public Attributes

    +VID_T src
     
    +VID_T dst
     
    +EDATA_T edata
     
    +

    Detailed Description

    +

    template<typename VID_T, typename EDATA_T>
    +struct grape::Edge< VID_T, EDATA_T >

    + +

    Edge representation.

    +
    Template Parameters
    + + + +
    VID_T
    EDATA_T
    +
    +
    +
    + + + + diff --git a/structgrape_1_1Edge_3_01VID__T_00_01EmptyType_01_4-members.html b/structgrape_1_1Edge_3_01VID__T_00_01EmptyType_01_4-members.html new file mode 100644 index 00000000..35b7136c --- /dev/null +++ b/structgrape_1_1Edge_3_01VID__T_00_01EmptyType_01_4-members.html @@ -0,0 +1,93 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::Edge< VID_T, EmptyType > Member List
    +
    +
    + +

    This is the complete list of members for grape::Edge< VID_T, EmptyType >, including all inherited members.

    + + + + + + + + + + + + +
    dst (defined in grape::Edge< VID_T, EmptyType >)grape::Edge< VID_T, EmptyType >
    edata (defined in grape::Edge< VID_T, EmptyType >)grape::Edge< VID_T, EmptyType >
    Edge() (defined in grape::Edge< VID_T, EmptyType >)grape::Edge< VID_T, EmptyType >inline
    Edge(const VID_T &src, const VID_T &dst) (defined in grape::Edge< VID_T, EmptyType >)grape::Edge< VID_T, EmptyType >inline
    Edge(const VID_T &src, const VID_T &dst, const EmptyType &edata) (defined in grape::Edge< VID_T, EmptyType >)grape::Edge< VID_T, EmptyType >inline
    Edge(const Edge &e) (defined in grape::Edge< VID_T, EmptyType >)grape::Edge< VID_T, EmptyType >inline
    operator!=(const Edge &other) const (defined in grape::Edge< VID_T, EmptyType >)grape::Edge< VID_T, EmptyType >inline
    operator=(const Edge &other) (defined in grape::Edge< VID_T, EmptyType >)grape::Edge< VID_T, EmptyType >inline
    operator==(const Edge &other) const (defined in grape::Edge< VID_T, EmptyType >)grape::Edge< VID_T, EmptyType >inline
    src (defined in grape::Edge< VID_T, EmptyType >)grape::Edge< VID_T, EmptyType >
    ~Edge() (defined in grape::Edge< VID_T, EmptyType >)grape::Edge< VID_T, EmptyType >inline
    + + + + diff --git a/structgrape_1_1Edge_3_01VID__T_00_01EmptyType_01_4.html b/structgrape_1_1Edge_3_01VID__T_00_01EmptyType_01_4.html new file mode 100644 index 00000000..809b5eb5 --- /dev/null +++ b/structgrape_1_1Edge_3_01VID__T_00_01EmptyType_01_4.html @@ -0,0 +1,136 @@ + + + + + + + +libgrape-lite: grape::Edge< VID_T, EmptyType > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::Edge< VID_T, EmptyType > Struct Template Reference
    +
    +
    + +

    Partial specialization for Edge with EmptyType on edge_data. + More...

    + +

    #include <edge.h>

    + + + + + + + + + + + + + + +

    +Public Member Functions

    +DEV_HOST Edge (const VID_T &src, const VID_T &dst)
     
    +DEV_HOST Edge (const VID_T &src, const VID_T &dst, const EmptyType &edata)
     
    +DEV_HOST Edge (const Edge &e)
     
    +DEV_HOST Edgeoperator= (const Edge &other)
     
    +DEV_HOST bool operator== (const Edge &other) const
     
    +DEV_HOST bool operator!= (const Edge &other) const
     
    + + + + + + + + + +

    +Public Attributes

    +VID_T src
     
    +union grape::Edge< VID_T, EmptyType >:: { ... }  
     
    +VID_T dst
     
    +EmptyType edata
     
    +

    Detailed Description

    +

    template<typename VID_T>
    +struct grape::Edge< VID_T, EmptyType >

    + +

    Partial specialization for Edge with EmptyType on edge_data.

    +
    Template Parameters
    + + +
    VID_T
    +
    +
    +
    + + + + diff --git a/structgrape_1_1EmptyType.html b/structgrape_1_1EmptyType.html new file mode 100644 index 00000000..080b5548 --- /dev/null +++ b/structgrape_1_1EmptyType.html @@ -0,0 +1,86 @@ + + + + + + + +libgrape-lite: grape::EmptyType Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::EmptyType Struct Reference
    +
    +
    + +

    EmptyType is the placeholder of VDATA_T and EDATA_T for graphs without data on vertices and edges. + More...

    + +

    #include <types.h>

    +

    Detailed Description

    +

    EmptyType is the placeholder of VDATA_T and EDATA_T for graphs without data on vertices and edges.

    +
    + + + + diff --git a/structgrape_1_1IdHasher.html b/structgrape_1_1IdHasher.html new file mode 100644 index 00000000..7701a4dd --- /dev/null +++ b/structgrape_1_1IdHasher.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: grape::IdHasher< T > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::IdHasher< T > Struct Template Reference
    +
    +
    +
    + + + + diff --git a/structgrape_1_1IdHasher_3_01uint32__t_01_4-members.html b/structgrape_1_1IdHasher_3_01uint32__t_01_4-members.html new file mode 100644 index 00000000..953dd85f --- /dev/null +++ b/structgrape_1_1IdHasher_3_01uint32__t_01_4-members.html @@ -0,0 +1,83 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::IdHasher< uint32_t > Member List
    +
    +
    + +

    This is the complete list of members for grape::IdHasher< uint32_t >, including all inherited members.

    + + +
    hash(uint32_t x) (defined in grape::IdHasher< uint32_t >)grape::IdHasher< uint32_t >inlinestatic
    + + + + diff --git a/structgrape_1_1IdHasher_3_01uint32__t_01_4.html b/structgrape_1_1IdHasher_3_01uint32__t_01_4.html new file mode 100644 index 00000000..7075fe64 --- /dev/null +++ b/structgrape_1_1IdHasher_3_01uint32__t_01_4.html @@ -0,0 +1,89 @@ + + + + + + + +libgrape-lite: grape::IdHasher< uint32_t > Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::IdHasher< uint32_t > Struct Reference
    +
    +
    + + + + +

    +Static Public Member Functions

    +static uint32_t hash (uint32_t x)
     
    +
    + + + + diff --git a/structgrape_1_1IdHasher_3_01uint64__t_01_4-members.html b/structgrape_1_1IdHasher_3_01uint64__t_01_4-members.html new file mode 100644 index 00000000..1fcfe273 --- /dev/null +++ b/structgrape_1_1IdHasher_3_01uint64__t_01_4-members.html @@ -0,0 +1,83 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::IdHasher< uint64_t > Member List
    +
    +
    + +

    This is the complete list of members for grape::IdHasher< uint64_t >, including all inherited members.

    + + +
    hash(uint64_t x) (defined in grape::IdHasher< uint64_t >)grape::IdHasher< uint64_t >inlinestatic
    + + + + diff --git a/structgrape_1_1IdHasher_3_01uint64__t_01_4.html b/structgrape_1_1IdHasher_3_01uint64__t_01_4.html new file mode 100644 index 00000000..d102eb7e --- /dev/null +++ b/structgrape_1_1IdHasher_3_01uint64__t_01_4.html @@ -0,0 +1,89 @@ + + + + + + + +libgrape-lite: grape::IdHasher< uint64_t > Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::IdHasher< uint64_t > Struct Reference
    +
    +
    + + + + +

    +Static Public Member Functions

    +static uint64_t hash (uint64_t x)
     
    +
    + + + + diff --git a/structgrape_1_1IdenticalHasher.html b/structgrape_1_1IdenticalHasher.html new file mode 100644 index 00000000..6d3956ae --- /dev/null +++ b/structgrape_1_1IdenticalHasher.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: grape::IdenticalHasher< T > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::IdenticalHasher< T > Struct Template Reference
    +
    +
    +
    + + + + diff --git a/structgrape_1_1IdenticalHasher_3_01uint32__t_01_4-members.html b/structgrape_1_1IdenticalHasher_3_01uint32__t_01_4-members.html new file mode 100644 index 00000000..be23c96a --- /dev/null +++ b/structgrape_1_1IdenticalHasher_3_01uint32__t_01_4-members.html @@ -0,0 +1,83 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::IdenticalHasher< uint32_t > Member List
    +
    +
    + +

    This is the complete list of members for grape::IdenticalHasher< uint32_t >, including all inherited members.

    + + +
    hash(uint32_t x) (defined in grape::IdenticalHasher< uint32_t >)grape::IdenticalHasher< uint32_t >inlinestatic
    + + + + diff --git a/structgrape_1_1IdenticalHasher_3_01uint32__t_01_4.html b/structgrape_1_1IdenticalHasher_3_01uint32__t_01_4.html new file mode 100644 index 00000000..d429fcbe --- /dev/null +++ b/structgrape_1_1IdenticalHasher_3_01uint32__t_01_4.html @@ -0,0 +1,89 @@ + + + + + + + +libgrape-lite: grape::IdenticalHasher< uint32_t > Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::IdenticalHasher< uint32_t > Struct Reference
    +
    +
    + + + + +

    +Static Public Member Functions

    +static uint32_t hash (uint32_t x)
     
    +
    + + + + diff --git a/structgrape_1_1IdenticalHasher_3_01uint64__t_01_4-members.html b/structgrape_1_1IdenticalHasher_3_01uint64__t_01_4-members.html new file mode 100644 index 00000000..abb49279 --- /dev/null +++ b/structgrape_1_1IdenticalHasher_3_01uint64__t_01_4-members.html @@ -0,0 +1,83 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::IdenticalHasher< uint64_t > Member List
    +
    +
    + +

    This is the complete list of members for grape::IdenticalHasher< uint64_t >, including all inherited members.

    + + +
    hash(uint64_t x) (defined in grape::IdenticalHasher< uint64_t >)grape::IdenticalHasher< uint64_t >inlinestatic
    + + + + diff --git a/structgrape_1_1IdenticalHasher_3_01uint64__t_01_4.html b/structgrape_1_1IdenticalHasher_3_01uint64__t_01_4.html new file mode 100644 index 00000000..42d2f16b --- /dev/null +++ b/structgrape_1_1IdenticalHasher_3_01uint64__t_01_4.html @@ -0,0 +1,89 @@ + + + + + + + +libgrape-lite: grape::IdenticalHasher< uint64_t > Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::IdenticalHasher< uint64_t > Struct Reference
    +
    +
    + + + + +

    +Static Public Member Functions

    +static uint64_t hash (uint64_t x)
     
    +
    + + + + diff --git a/structgrape_1_1ImmutableEdgecutFragmentTraits-members.html b/structgrape_1_1ImmutableEdgecutFragmentTraits-members.html new file mode 100644 index 00000000..86ff9f09 --- /dev/null +++ b/structgrape_1_1ImmutableEdgecutFragmentTraits-members.html @@ -0,0 +1,92 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T > Member List
    +
    +
    + +

    This is the complete list of members for grape::ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >, including all inherited members.

    + + + + + + + + + + + +
    csr_builder_t typedef (defined in grape::ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >)grape::ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >
    csr_t typedef (defined in grape::ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >)grape::ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >
    fragment_adj_list_t typedef (defined in grape::ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >)grape::ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >
    fragment_const_adj_list_t typedef (defined in grape::ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >)grape::ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >
    inner_vertices_t typedef (defined in grape::ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >)grape::ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >
    mirror_vertices_t typedef (defined in grape::ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >)grape::ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >
    outer_vertices_t typedef (defined in grape::ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >)grape::ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >
    sub_vertices_t typedef (defined in grape::ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >)grape::ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >
    vertex_map_t typedef (defined in grape::ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >)grape::ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >
    vertices_t typedef (defined in grape::ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >)grape::ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >
    + + + + diff --git a/structgrape_1_1ImmutableEdgecutFragmentTraits.html b/structgrape_1_1ImmutableEdgecutFragmentTraits.html new file mode 100644 index 00000000..034df621 --- /dev/null +++ b/structgrape_1_1ImmutableEdgecutFragmentTraits.html @@ -0,0 +1,116 @@ + + + + + + + +libgrape-lite: grape::ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::ImmutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T > Struct Template Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + +

    +Public Types

    +using inner_vertices_t = VertexRange< VID_T >
     
    +using outer_vertices_t = VertexRange< VID_T >
     
    +using vertices_t = VertexRange< VID_T >
     
    +using sub_vertices_t = VertexRange< VID_T >
     
    +using fragment_adj_list_t = AdjList< VID_T, EDATA_T >
     
    +using fragment_const_adj_list_t = ConstAdjList< VID_T, EDATA_T >
     
    +using csr_t = ImmutableCSR< VID_T, Nbr< VID_T, EDATA_T > >
     
    +using csr_builder_t = ImmutableCSRBuild< VID_T, Nbr< VID_T, EDATA_T > >
     
    +using mirror_vertices_t = std::vector< Vertex< VID_T > >
     
    +using vertex_map_t = VERTEX_MAP_T
     
    +
    + + + + diff --git a/structgrape_1_1InternalOID-members.html b/structgrape_1_1InternalOID-members.html new file mode 100644 index 00000000..755c7af4 --- /dev/null +++ b/structgrape_1_1InternalOID-members.html @@ -0,0 +1,85 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::InternalOID< T > Member List
    +
    +
    + +

    This is the complete list of members for grape::InternalOID< T >, including all inherited members.

    + + + + +
    FromInternal(const type &val) (defined in grape::InternalOID< T >)grape::InternalOID< T >inlinestatic
    ToInternal(const T &val) (defined in grape::InternalOID< T >)grape::InternalOID< T >inlinestatic
    type typedef (defined in grape::InternalOID< T >)grape::InternalOID< T >
    + + + + diff --git a/structgrape_1_1InternalOID.html b/structgrape_1_1InternalOID.html new file mode 100644 index 00000000..0b55a7aa --- /dev/null +++ b/structgrape_1_1InternalOID.html @@ -0,0 +1,99 @@ + + + + + + + +libgrape-lite: grape::InternalOID< T > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::InternalOID< T > Struct Template Reference
    +
    +
    + + + + +

    +Public Types

    +using type = T
     
    + + + + + +

    +Static Public Member Functions

    +static type ToInternal (const T &val)
     
    +static T FromInternal (const type &val)
     
    +
    + + + + diff --git a/structgrape_1_1InternalOID_3_01std_1_1string_01_4-members.html b/structgrape_1_1InternalOID_3_01std_1_1string_01_4-members.html new file mode 100644 index 00000000..e8b4c63c --- /dev/null +++ b/structgrape_1_1InternalOID_3_01std_1_1string_01_4-members.html @@ -0,0 +1,85 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::InternalOID< std::string > Member List
    +
    +
    + +

    This is the complete list of members for grape::InternalOID< std::string >, including all inherited members.

    + + + + +
    FromInternal(const type &val) (defined in grape::InternalOID< std::string >)grape::InternalOID< std::string >inlinestatic
    ToInternal(const std::string &val) (defined in grape::InternalOID< std::string >)grape::InternalOID< std::string >inlinestatic
    type typedef (defined in grape::InternalOID< std::string >)grape::InternalOID< std::string >
    + + + + diff --git a/structgrape_1_1InternalOID_3_01std_1_1string_01_4.html b/structgrape_1_1InternalOID_3_01std_1_1string_01_4.html new file mode 100644 index 00000000..908febbb --- /dev/null +++ b/structgrape_1_1InternalOID_3_01std_1_1string_01_4.html @@ -0,0 +1,99 @@ + + + + + + + +libgrape-lite: grape::InternalOID< std::string > Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::InternalOID< std::string > Struct Reference
    +
    +
    + + + + +

    +Public Types

    +using type = nonstd::string_view
     
    + + + + + +

    +Static Public Member Functions

    +static type ToInternal (const std::string &val)
     
    +static std::string FromInternal (const type &val)
     
    +
    + + + + diff --git a/structgrape_1_1LoadGraphSpec-members.html b/structgrape_1_1LoadGraphSpec-members.html new file mode 100644 index 00000000..5ffdf0ce --- /dev/null +++ b/structgrape_1_1LoadGraphSpec-members.html @@ -0,0 +1,93 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::LoadGraphSpec Member List
    +
    +
    + +

    This is the complete list of members for grape::LoadGraphSpec, including all inherited members.

    + + + + + + + + + + + + +
    deserialization_prefix (defined in grape::LoadGraphSpec)grape::LoadGraphSpec
    deserialize (defined in grape::LoadGraphSpec)grape::LoadGraphSpec
    directed (defined in grape::LoadGraphSpec)grape::LoadGraphSpec
    rebalance (defined in grape::LoadGraphSpec)grape::LoadGraphSpec
    rebalance_vertex_factor (defined in grape::LoadGraphSpec)grape::LoadGraphSpec
    serialization_prefix (defined in grape::LoadGraphSpec)grape::LoadGraphSpec
    serialize (defined in grape::LoadGraphSpec)grape::LoadGraphSpec
    set_deserialize(bool flag, const std::string &prefix) (defined in grape::LoadGraphSpec)grape::LoadGraphSpecinline
    set_directed(bool val=true) (defined in grape::LoadGraphSpec)grape::LoadGraphSpecinline
    set_rebalance(bool flag, int weight) (defined in grape::LoadGraphSpec)grape::LoadGraphSpecinline
    set_serialize(bool flag, const std::string &prefix) (defined in grape::LoadGraphSpec)grape::LoadGraphSpecinline
    + + + + diff --git a/structgrape_1_1LoadGraphSpec.html b/structgrape_1_1LoadGraphSpec.html new file mode 100644 index 00000000..911e8348 --- /dev/null +++ b/structgrape_1_1LoadGraphSpec.html @@ -0,0 +1,130 @@ + + + + + + + +libgrape-lite: grape::LoadGraphSpec Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::LoadGraphSpec Struct Reference
    +
    +
    + +

    LoadGraphSpec determines the specification to load a graph. + More...

    + +

    #include <basic_fragment_loader.h>

    + + + + + + + + + + +

    +Public Member Functions

    +void set_directed (bool val=true)
     
    +void set_rebalance (bool flag, int weight)
     
    +void set_serialize (bool flag, const std::string &prefix)
     
    +void set_deserialize (bool flag, const std::string &prefix)
     
    + + + + + + + + + + + + + + + +

    +Public Attributes

    +bool directed
     
    +bool rebalance
     
    +int rebalance_vertex_factor
     
    +bool serialize
     
    +std::string serialization_prefix
     
    +bool deserialize
     
    +std::string deserialization_prefix
     
    +

    Detailed Description

    +

    LoadGraphSpec determines the specification to load a graph.

    +
    + + + + diff --git a/structgrape_1_1MessageBuffer-members.html b/structgrape_1_1MessageBuffer-members.html new file mode 100644 index 00000000..8b5a5be2 --- /dev/null +++ b/structgrape_1_1MessageBuffer-members.html @@ -0,0 +1,103 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::MessageBuffer Member List
    +
    +
    + +

    This is the complete list of members for grape::MessageBuffer, including all inherited members.

    + + + + + + + + + + + + + + + + + + + + + + +
    allocate(size_type __n) (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
    buffer (defined in grape::MessageBuffer)grape::MessageBuffer
    deallocate(pointer __p, size_type) (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
    DefaultAllocator() noexcept (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
    DefaultAllocator(const DefaultAllocator &) noexcept (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
    DefaultAllocator(DefaultAllocator &&) noexcept (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
    init(size_t sz) (defined in grape::MessageBuffer)grape::MessageBufferinline
    MessageBuffer() (defined in grape::MessageBuffer)grape::MessageBufferinline
    MessageBuffer(MessageBuffer &&rhs) (defined in grape::MessageBuffer)grape::MessageBufferinline
    operator=(MessageBuffer &&rhs) (defined in grape::MessageBuffer)grape::MessageBufferinline
    operator=(const DefaultAllocator &) noexcept (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
    operator=(DefaultAllocator &&) noexcept (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
    pointer typedef (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >
    reset() (defined in grape::MessageBuffer)grape::MessageBufferinline
    set0() (defined in grape::MessageBuffer)grape::MessageBufferinline
    size (defined in grape::MessageBuffer)grape::MessageBuffer
    size_type typedef (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >
    swap(MessageBuffer &rhs) (defined in grape::MessageBuffer)grape::MessageBufferinline
    value_type typedef (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >
    ~DefaultAllocator() noexcept (defined in grape::DefaultAllocator< _Tp >)grape::DefaultAllocator< _Tp >inline
    ~MessageBuffer() (defined in grape::MessageBuffer)grape::MessageBufferinline
    + + + + diff --git a/structgrape_1_1MessageBuffer.html b/structgrape_1_1MessageBuffer.html new file mode 100644 index 00000000..87fb7c2a --- /dev/null +++ b/structgrape_1_1MessageBuffer.html @@ -0,0 +1,155 @@ + + + + + + + +libgrape-lite: grape::MessageBuffer Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::MessageBuffer Struct Reference
    +
    +
    +
    +Inheritance diagram for grape::MessageBuffer:
    +
    +
    + + +grape::DefaultAllocator< _Tp > + +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Public Member Functions

    MessageBuffer (MessageBuffer &&rhs)
     
    +MessageBufferoperator= (MessageBuffer &&rhs)
     
    +void init (size_t sz)
     
    +void reset ()
     
    +void set0 ()
     
    +void swap (MessageBuffer &rhs)
     
    - Public Member Functions inherited from grape::DefaultAllocator< _Tp >
    DefaultAllocator (const DefaultAllocator &) noexcept
     
    DefaultAllocator (DefaultAllocator &&) noexcept
     
    +DefaultAllocatoroperator= (const DefaultAllocator &) noexcept
     
    +DefaultAllocatoroperator= (DefaultAllocator &&) noexcept
     
    +pointer allocate (size_type __n)
     
    +void deallocate (pointer __p, size_type)
     
    + + + + + +

    +Public Attributes

    +char * buffer
     
    +size_t size
     
    + + + + + + + + +

    +Additional Inherited Members

    - Public Types inherited from grape::DefaultAllocator< _Tp >
    +using pointer = _Tp *
     
    +using size_type = size_t
     
    +using value_type = _Tp
     
    +
    + + + + diff --git a/structgrape_1_1MessageBuffer.png b/structgrape_1_1MessageBuffer.png new file mode 100644 index 0000000000000000000000000000000000000000..e5d0dede310dec654b2ccaa03fd70e15e9267a89 GIT binary patch literal 779 zcmeAS@N?(olHy`uVBq!ia0vp^2Y@($gBeIxq;!=5DTx4|5ZC|z{{xvX-h3_XKQsZz z0^+IHSyqsh7P;+Z^^3Z3;gx8+7h<|rw>KE>$bk_IMT={Z#VzsV_h@%~>szp2^T z3w2yw>|UgI|7PgDU)L#9sIl!oXTtqc+y55!?%u;j6tb2=i9%rK{}iRQ7v!cYDeaGq<<;R%hzs{->gdqX zU>6XasR<%h$|l_2mYc}#sjzSHVx&94Lge%8fKD!{kard zrn)jjg!3^N1cNX?Q;NH}%rUb??-w)Zz4B~$@zRf>J#%Y)|GTzgP6gB3kEOQf$R9fz zxF!cK58>Cf>9=ZSrER*;Cqn>eXs5otwYxOzh{ySEruc%a-7`Jw9+} z7Q-!(jr`A~ESMR7IBsWrG|892bkClXmZCmfrTp{eHauebv1B*HS-x#Emwj^GzNGGT zt{}hPgDm^qq0C$dRLYM3bmd)f^LX%zvV~U^`uekUr#*8P?`mA7HznBM?=ta9p#|T+ zhU@pc-~U^l^`KK?Uu8JsoL5O)Tixy-zwn#sM_hO?$Aj=wj10hJ#gO*uuN%l3 literal 0 HcmV?d00001 diff --git a/structgrape_1_1MicroBuffer-members.html b/structgrape_1_1MicroBuffer-members.html new file mode 100644 index 00000000..5e0cfc3b --- /dev/null +++ b/structgrape_1_1MicroBuffer-members.html @@ -0,0 +1,87 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::MicroBuffer Member List
    +
    +
    + +

    This is the complete list of members for grape::MicroBuffer, including all inherited members.

    + + + + + + +
    buffer (defined in grape::MicroBuffer)grape::MicroBuffer
    MicroBuffer() (defined in grape::MicroBuffer)grape::MicroBufferinline
    MicroBuffer(char *buffer, size_t size) (defined in grape::MicroBuffer)grape::MicroBufferinline
    size (defined in grape::MicroBuffer)grape::MicroBuffer
    ~MicroBuffer()=default (defined in grape::MicroBuffer)grape::MicroBuffer
    + + + + diff --git a/structgrape_1_1MicroBuffer.html b/structgrape_1_1MicroBuffer.html new file mode 100644 index 00000000..9b2f1f4e --- /dev/null +++ b/structgrape_1_1MicroBuffer.html @@ -0,0 +1,99 @@ + + + + + + + +libgrape-lite: grape::MicroBuffer Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::MicroBuffer Struct Reference
    +
    +
    + + + + +

    +Public Member Functions

    MicroBuffer (char *buffer, size_t size)
     
    + + + + + +

    +Public Attributes

    +char * buffer
     
    +size_t size
     
    +
    + + + + diff --git a/structgrape_1_1MutableEdgecutFragmentTraits-members.html b/structgrape_1_1MutableEdgecutFragmentTraits-members.html new file mode 100644 index 00000000..c03da942 --- /dev/null +++ b/structgrape_1_1MutableEdgecutFragmentTraits-members.html @@ -0,0 +1,92 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T > Member List
    +
    +
    + +

    This is the complete list of members for grape::MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >, including all inherited members.

    + + + + + + + + + + + +
    csr_builder_t typedef (defined in grape::MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >)grape::MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >
    csr_t typedef (defined in grape::MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >)grape::MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >
    fragment_adj_list_t typedef (defined in grape::MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >)grape::MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >
    fragment_const_adj_list_t typedef (defined in grape::MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >)grape::MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >
    inner_vertices_t typedef (defined in grape::MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >)grape::MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >
    mirror_vertices_t typedef (defined in grape::MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >)grape::MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >
    outer_vertices_t typedef (defined in grape::MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >)grape::MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >
    sub_vertices_t typedef (defined in grape::MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >)grape::MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >
    vertex_map_t typedef (defined in grape::MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >)grape::MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >
    vertices_t typedef (defined in grape::MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >)grape::MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T >
    + + + + diff --git a/structgrape_1_1MutableEdgecutFragmentTraits.html b/structgrape_1_1MutableEdgecutFragmentTraits.html new file mode 100644 index 00000000..b3d85748 --- /dev/null +++ b/structgrape_1_1MutableEdgecutFragmentTraits.html @@ -0,0 +1,116 @@ + + + + + + + +libgrape-lite: grape::MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::MutableEdgecutFragmentTraits< OID_T, VID_T, VDATA_T, EDATA_T, VERTEX_MAP_T > Struct Template Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + +

    +Public Types

    +using inner_vertices_t = VertexRange< VID_T >
     
    +using outer_vertices_t = VertexRange< VID_T >
     
    +using vertices_t = DualVertexRange< VID_T >
     
    +using sub_vertices_t = VertexVector< VID_T >
     
    +using fragment_adj_list_t = FilterAdjList< VID_T, EDATA_T, std::function< bool(const Nbr< VID_T, EDATA_T > &)> >
     
    +using fragment_const_adj_list_t = FilterConstAdjList< VID_T, EDATA_T, std::function< bool(const Nbr< VID_T, EDATA_T > &)> >
     
    +using csr_t = DeMutableCSR< VID_T, Nbr< VID_T, EDATA_T > >
     
    +using csr_builder_t = DeMutableCSRBuilder< VID_T, Nbr< VID_T, EDATA_T > >
     
    +using vertex_map_t = VERTEX_MAP_T
     
    +using mirror_vertices_t = std::vector< Vertex< VID_T > >
     
    +
    + + + + diff --git a/structgrape_1_1Mutation-members.html b/structgrape_1_1Mutation-members.html new file mode 100644 index 00000000..b463fca9 --- /dev/null +++ b/structgrape_1_1Mutation-members.html @@ -0,0 +1,88 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::Mutation< ID_T, VDATA_T, EDATA_T > Member List
    +
    + + + + + diff --git a/structgrape_1_1Mutation.html b/structgrape_1_1Mutation.html new file mode 100644 index 00000000..cee8bc90 --- /dev/null +++ b/structgrape_1_1Mutation.html @@ -0,0 +1,104 @@ + + + + + + + +libgrape-lite: grape::Mutation< ID_T, VDATA_T, EDATA_T > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::Mutation< ID_T, VDATA_T, EDATA_T > Struct Template Reference
    +
    +
    + + + + + + + + + + + + + + +

    +Public Attributes

    +std::vector< internal::Vertex< ID_T, VDATA_T > > vertices_to_add
     
    +std::vector< ID_T > vertices_to_remove
     
    +std::vector< Edge< ID_T, EDATA_T > > edges_to_add
     
    +std::vector< std::pair< ID_T, ID_T > > edges_to_remove
     
    +std::vector< internal::Vertex< ID_T, VDATA_T > > vertices_to_update
     
    +std::vector< Edge< ID_T, EDATA_T > > edges_to_update
     
    +
    + + + + diff --git a/structgrape_1_1Nbr-members.html b/structgrape_1_1Nbr-members.html new file mode 100644 index 00000000..b0f8c52e --- /dev/null +++ b/structgrape_1_1Nbr-members.html @@ -0,0 +1,98 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::Nbr< VID_T, EDATA_T > Member List
    +
    +
    + +

    This is the complete list of members for grape::Nbr< VID_T, EDATA_T >, including all inherited members.

    + + + + + + + + + + + + + + + + + +
    data (defined in grape::Nbr< VID_T, EDATA_T >)grape::Nbr< VID_T, EDATA_T >
    get_data() const (defined in grape::Nbr< VID_T, EDATA_T >)grape::Nbr< VID_T, EDATA_T >inline
    get_neighbor() const (defined in grape::Nbr< VID_T, EDATA_T >)grape::Nbr< VID_T, EDATA_T >inline
    get_neighbor_lid() const (defined in grape::Nbr< VID_T, EDATA_T >)grape::Nbr< VID_T, EDATA_T >inline
    Nbr() (defined in grape::Nbr< VID_T, EDATA_T >)grape::Nbr< VID_T, EDATA_T >inline
    Nbr(const VID_T &nbr_) (defined in grape::Nbr< VID_T, EDATA_T >)grape::Nbr< VID_T, EDATA_T >inlineexplicit
    Nbr(const Vertex< VID_T > &nbr_) (defined in grape::Nbr< VID_T, EDATA_T >)grape::Nbr< VID_T, EDATA_T >inlineexplicit
    Nbr(const Nbr &rhs) (defined in grape::Nbr< VID_T, EDATA_T >)grape::Nbr< VID_T, EDATA_T >inline
    Nbr(Nbr &&rhs) noexcept (defined in grape::Nbr< VID_T, EDATA_T >)grape::Nbr< VID_T, EDATA_T >inline
    Nbr(const VID_T &nbr_, const EDATA_T &data_) (defined in grape::Nbr< VID_T, EDATA_T >)grape::Nbr< VID_T, EDATA_T >inline
    Nbr(const Vertex< VID_T > &nbr_, const EDATA_T &data_) (defined in grape::Nbr< VID_T, EDATA_T >)grape::Nbr< VID_T, EDATA_T >inline
    Nbr(const VID_T &nbr_, EDATA_T &&data_) (defined in grape::Nbr< VID_T, EDATA_T >)grape::Nbr< VID_T, EDATA_T >inline
    neighbor (defined in grape::Nbr< VID_T, EDATA_T >)grape::Nbr< VID_T, EDATA_T >
    operator=(const Nbr &rhs) (defined in grape::Nbr< VID_T, EDATA_T >)grape::Nbr< VID_T, EDATA_T >inline
    operator=(Nbr &&rhs) (defined in grape::Nbr< VID_T, EDATA_T >)grape::Nbr< VID_T, EDATA_T >inline
    ~Nbr() (defined in grape::Nbr< VID_T, EDATA_T >)grape::Nbr< VID_T, EDATA_T >inline
    + + + + diff --git a/structgrape_1_1Nbr.html b/structgrape_1_1Nbr.html new file mode 100644 index 00000000..4a9e206e --- /dev/null +++ b/structgrape_1_1Nbr.html @@ -0,0 +1,150 @@ + + + + + + + +libgrape-lite: grape::Nbr< VID_T, EDATA_T > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::Nbr< VID_T, EDATA_T > Struct Template Reference
    +
    +
    + +

    A neighbor of a vertex in the graph. + More...

    + +

    #include <adj_list.h>

    + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Public Member Functions

    +DEV_HOST Nbr (const VID_T &nbr_)
     
    +DEV_HOST Nbr (const Vertex< VID_T > &nbr_)
     
    +DEV_HOST Nbr (const Nbr &rhs)
     
    +DEV_HOST Nbr (Nbr &&rhs) noexcept
     
    +DEV_HOST Nbr (const VID_T &nbr_, const EDATA_T &data_)
     
    +DEV_HOST Nbr (const Vertex< VID_T > &nbr_, const EDATA_T &data_)
     
    +DEV_HOST Nbr (const VID_T &nbr_, EDATA_T &&data_)
     
    +DEV_HOST_INLINE Nbroperator= (const Nbr &rhs)
     
    +DEV_HOST_INLINE Nbroperator= (Nbr &&rhs)
     
    +DEV_HOST_INLINE Vertex< VID_T > get_neighbor () const
     
    +DEV_HOST_INLINE const EDATA_T & get_data () const
     
    +DEV_HOST_INLINE VID_T get_neighbor_lid () const
     
    + + + + + +

    +Public Attributes

    +Vertex< VID_T > neighbor
     
    +EDATA_T data
     
    +

    Detailed Description

    +

    template<typename VID_T, typename EDATA_T>
    +struct grape::Nbr< VID_T, EDATA_T >

    + +

    A neighbor of a vertex in the graph.

    +

    Assume an edge, vertex_a –(edge_data)--> vertex_b. a <Nbr> of vertex_a stores <Vertex> b and the edge_data.

    +
    Template Parameters
    + + + +
    VID_T
    EDATA_T
    +
    +
    +
    + + + + diff --git a/structgrape_1_1Nbr_3_01VID__T_00_01EmptyType_01_4-members.html b/structgrape_1_1Nbr_3_01VID__T_00_01EmptyType_01_4-members.html new file mode 100644 index 00000000..215d72d7 --- /dev/null +++ b/structgrape_1_1Nbr_3_01VID__T_00_01EmptyType_01_4-members.html @@ -0,0 +1,95 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::Nbr< VID_T, EmptyType > Member List
    +
    +
    + +

    This is the complete list of members for grape::Nbr< VID_T, EmptyType >, including all inherited members.

    + + + + + + + + + + + + + + +
    data (defined in grape::Nbr< VID_T, EmptyType >)grape::Nbr< VID_T, EmptyType >
    get_data() const (defined in grape::Nbr< VID_T, EmptyType >)grape::Nbr< VID_T, EmptyType >inline
    get_neighbor() const (defined in grape::Nbr< VID_T, EmptyType >)grape::Nbr< VID_T, EmptyType >inline
    get_neighbor_lid() const (defined in grape::Nbr< VID_T, EmptyType >)grape::Nbr< VID_T, EmptyType >inline
    Nbr() (defined in grape::Nbr< VID_T, EmptyType >)grape::Nbr< VID_T, EmptyType >inline
    Nbr(const VID_T &nbr_) (defined in grape::Nbr< VID_T, EmptyType >)grape::Nbr< VID_T, EmptyType >inlineexplicit
    Nbr(const Vertex< VID_T > &nbr_) (defined in grape::Nbr< VID_T, EmptyType >)grape::Nbr< VID_T, EmptyType >inlineexplicit
    Nbr(const Nbr &rhs) (defined in grape::Nbr< VID_T, EmptyType >)grape::Nbr< VID_T, EmptyType >inline
    Nbr(const VID_T &nbr_, const EmptyType &) (defined in grape::Nbr< VID_T, EmptyType >)grape::Nbr< VID_T, EmptyType >inline
    Nbr(const Vertex< VID_T > &nbr_, const EmptyType &) (defined in grape::Nbr< VID_T, EmptyType >)grape::Nbr< VID_T, EmptyType >inline
    neighbor (defined in grape::Nbr< VID_T, EmptyType >)grape::Nbr< VID_T, EmptyType >
    operator=(const Nbr &rhs) (defined in grape::Nbr< VID_T, EmptyType >)grape::Nbr< VID_T, EmptyType >inline
    ~Nbr() (defined in grape::Nbr< VID_T, EmptyType >)grape::Nbr< VID_T, EmptyType >inline
    + + + + diff --git a/structgrape_1_1Nbr_3_01VID__T_00_01EmptyType_01_4.html b/structgrape_1_1Nbr_3_01VID__T_00_01EmptyType_01_4.html new file mode 100644 index 00000000..98c46784 --- /dev/null +++ b/structgrape_1_1Nbr_3_01VID__T_00_01EmptyType_01_4.html @@ -0,0 +1,142 @@ + + + + + + + +libgrape-lite: grape::Nbr< VID_T, EmptyType > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::Nbr< VID_T, EmptyType > Struct Template Reference
    +
    +
    + +

    A neighbor of a vertex in the graph. (partial specialization with Empty edge data.) + More...

    + +

    #include <adj_list.h>

    + + + + + + + + + + + + + + + + + + + + +

    +Public Member Functions

    +DEV_HOST Nbr (const VID_T &nbr_)
     
    +DEV_HOST Nbr (const Vertex< VID_T > &nbr_)
     
    +DEV_HOST Nbr (const Nbr &rhs)
     
    +DEV_HOST Nbr (const VID_T &nbr_, const EmptyType &)
     
    +DEV_HOST Nbr (const Vertex< VID_T > &nbr_, const EmptyType &)
     
    +DEV_HOST_INLINE Nbroperator= (const Nbr &rhs)
     
    +DEV_HOST_INLINE Vertex< VID_T > get_neighbor () const
     
    +DEV_HOST_INLINE const EmptyTypeget_data () const
     
    +DEV_HOST_INLINE VID_T get_neighbor_lid () const
     
    + + + + + + + +

    +Public Attributes

    +union grape::Nbr< VID_T, EmptyType >:: { ... }  
     
    +Vertex< VID_T > neighbor
     
    +EmptyType data
     
    +

    Detailed Description

    +

    template<typename VID_T>
    +struct grape::Nbr< VID_T, EmptyType >

    + +

    A neighbor of a vertex in the graph. (partial specialization with Empty edge data.)

    +
    Template Parameters
    + + +
    VID_T
    +
    +
    +
    + + + + diff --git a/structgrape_1_1ParallelEngineSpec-members.html b/structgrape_1_1ParallelEngineSpec-members.html new file mode 100644 index 00000000..b990be58 --- /dev/null +++ b/structgrape_1_1ParallelEngineSpec-members.html @@ -0,0 +1,85 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::ParallelEngineSpec Member List
    +
    +
    + +

    This is the complete list of members for grape::ParallelEngineSpec, including all inherited members.

    + + + + +
    affinity (defined in grape::ParallelEngineSpec)grape::ParallelEngineSpec
    cpu_list (defined in grape::ParallelEngineSpec)grape::ParallelEngineSpec
    thread_num (defined in grape::ParallelEngineSpec)grape::ParallelEngineSpec
    + + + + diff --git a/structgrape_1_1ParallelEngineSpec.html b/structgrape_1_1ParallelEngineSpec.html new file mode 100644 index 00000000..c38b6be3 --- /dev/null +++ b/structgrape_1_1ParallelEngineSpec.html @@ -0,0 +1,95 @@ + + + + + + + +libgrape-lite: grape::ParallelEngineSpec Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::ParallelEngineSpec Struct Reference
    +
    +
    + + + + + + + + +

    +Public Attributes

    +uint32_t thread_num
     
    +bool affinity
     
    +std::vector< uint32_t > cpu_list
     
    +
    + + + + diff --git a/structgrape_1_1PrepareConf-members.html b/structgrape_1_1PrepareConf-members.html new file mode 100644 index 00000000..ac82be06 --- /dev/null +++ b/structgrape_1_1PrepareConf-members.html @@ -0,0 +1,87 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::PrepareConf Member List
    +
    +
    + +

    This is the complete list of members for grape::PrepareConf, including all inherited members.

    + + + + + + +
    message_strategy (defined in grape::PrepareConf)grape::PrepareConf
    need_build_device_vm (defined in grape::PrepareConf)grape::PrepareConf
    need_mirror_info (defined in grape::PrepareConf)grape::PrepareConf
    need_split_edges (defined in grape::PrepareConf)grape::PrepareConf
    need_split_edges_by_fragment (defined in grape::PrepareConf)grape::PrepareConf
    + + + + diff --git a/structgrape_1_1PrepareConf.html b/structgrape_1_1PrepareConf.html new file mode 100644 index 00000000..cd37bcdd --- /dev/null +++ b/structgrape_1_1PrepareConf.html @@ -0,0 +1,101 @@ + + + + + + + +libgrape-lite: grape::PrepareConf Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::PrepareConf Struct Reference
    +
    +
    + + + + + + + + + + + + +

    +Public Attributes

    +MessageStrategy message_strategy
     
    +bool need_split_edges
     
    +bool need_split_edges_by_fragment
     
    +bool need_mirror_info
     
    +bool need_build_device_vm
     
    +
    + + + + diff --git a/structgrape_1_1SerializedSize-members.html b/structgrape_1_1SerializedSize-members.html new file mode 100644 index 00000000..f37d532e --- /dev/null +++ b/structgrape_1_1SerializedSize-members.html @@ -0,0 +1,83 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::SerializedSize< T > Member List
    +
    +
    + +

    This is the complete list of members for grape::SerializedSize< T >, including all inherited members.

    + + +
    size(const T &v) (defined in grape::SerializedSize< T >)grape::SerializedSize< T >inlinestatic
    + + + + diff --git a/structgrape_1_1SerializedSize.html b/structgrape_1_1SerializedSize.html new file mode 100644 index 00000000..cad89287 --- /dev/null +++ b/structgrape_1_1SerializedSize.html @@ -0,0 +1,89 @@ + + + + + + + +libgrape-lite: grape::SerializedSize< T > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::SerializedSize< T > Struct Template Reference
    +
    +
    + + + + +

    +Static Public Member Functions

    +static size_t size (const T &v)
     
    +
    + + + + diff --git a/structgrape_1_1SerializedSize_3_01DeltaVarintEncoder_3_01T_01_4_01_4-members.html b/structgrape_1_1SerializedSize_3_01DeltaVarintEncoder_3_01T_01_4_01_4-members.html new file mode 100644 index 00000000..a18dde86 --- /dev/null +++ b/structgrape_1_1SerializedSize_3_01DeltaVarintEncoder_3_01T_01_4_01_4-members.html @@ -0,0 +1,83 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::SerializedSize< DeltaVarintEncoder< T > > Member List
    +
    +
    + +

    This is the complete list of members for grape::SerializedSize< DeltaVarintEncoder< T > >, including all inherited members.

    + + +
    size(const DeltaVarintEncoder< T > &v) (defined in grape::SerializedSize< DeltaVarintEncoder< T > >)grape::SerializedSize< DeltaVarintEncoder< T > >inlinestatic
    + + + + diff --git a/structgrape_1_1SerializedSize_3_01DeltaVarintEncoder_3_01T_01_4_01_4.html b/structgrape_1_1SerializedSize_3_01DeltaVarintEncoder_3_01T_01_4_01_4.html new file mode 100644 index 00000000..a28343b3 --- /dev/null +++ b/structgrape_1_1SerializedSize_3_01DeltaVarintEncoder_3_01T_01_4_01_4.html @@ -0,0 +1,89 @@ + + + + + + + +libgrape-lite: grape::SerializedSize< DeltaVarintEncoder< T > > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::SerializedSize< DeltaVarintEncoder< T > > Struct Template Reference
    +
    +
    + + + + +

    +Static Public Member Functions

    +static size_t size (const DeltaVarintEncoder< T > &v)
     
    +
    + + + + diff --git a/structgrape_1_1SerializedSize_3_01EmptyType_01_4-members.html b/structgrape_1_1SerializedSize_3_01EmptyType_01_4-members.html new file mode 100644 index 00000000..bc8f0b63 --- /dev/null +++ b/structgrape_1_1SerializedSize_3_01EmptyType_01_4-members.html @@ -0,0 +1,83 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::SerializedSize< EmptyType > Member List
    +
    +
    + +

    This is the complete list of members for grape::SerializedSize< EmptyType >, including all inherited members.

    + + +
    size(const EmptyType &v) (defined in grape::SerializedSize< EmptyType >)grape::SerializedSize< EmptyType >inlinestatic
    + + + + diff --git a/structgrape_1_1SerializedSize_3_01EmptyType_01_4.html b/structgrape_1_1SerializedSize_3_01EmptyType_01_4.html new file mode 100644 index 00000000..a56bcea1 --- /dev/null +++ b/structgrape_1_1SerializedSize_3_01EmptyType_01_4.html @@ -0,0 +1,89 @@ + + + + + + + +libgrape-lite: grape::SerializedSize< EmptyType > Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::SerializedSize< EmptyType > Struct Reference
    +
    +
    + + + + +

    +Static Public Member Functions

    +static size_t size (const EmptyType &v)
     
    +
    + + + + diff --git a/structgrape_1_1SerializedSize_3_01VarintEncoder_01_4-members.html b/structgrape_1_1SerializedSize_3_01VarintEncoder_01_4-members.html new file mode 100644 index 00000000..b981820a --- /dev/null +++ b/structgrape_1_1SerializedSize_3_01VarintEncoder_01_4-members.html @@ -0,0 +1,83 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::SerializedSize< VarintEncoder > Member List
    +
    +
    + +

    This is the complete list of members for grape::SerializedSize< VarintEncoder >, including all inherited members.

    + + +
    size(const VarintEncoder &v) (defined in grape::SerializedSize< VarintEncoder >)grape::SerializedSize< VarintEncoder >inlinestatic
    + + + + diff --git a/structgrape_1_1SerializedSize_3_01VarintEncoder_01_4.html b/structgrape_1_1SerializedSize_3_01VarintEncoder_01_4.html new file mode 100644 index 00000000..0c566f7f --- /dev/null +++ b/structgrape_1_1SerializedSize_3_01VarintEncoder_01_4.html @@ -0,0 +1,89 @@ + + + + + + + +libgrape-lite: grape::SerializedSize< VarintEncoder > Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::SerializedSize< VarintEncoder > Struct Reference
    +
    +
    + + + + +

    +Static Public Member Functions

    +static size_t size (const VarintEncoder &v)
     
    +
    + + + + diff --git a/structgrape_1_1SerializedSize_3_01nonstd_1_1string__view_01_4-members.html b/structgrape_1_1SerializedSize_3_01nonstd_1_1string__view_01_4-members.html new file mode 100644 index 00000000..4c759c06 --- /dev/null +++ b/structgrape_1_1SerializedSize_3_01nonstd_1_1string__view_01_4-members.html @@ -0,0 +1,83 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::SerializedSize< nonstd::string_view > Member List
    +
    +
    + +

    This is the complete list of members for grape::SerializedSize< nonstd::string_view >, including all inherited members.

    + + +
    size(const nonstd::string_view &v) (defined in grape::SerializedSize< nonstd::string_view >)grape::SerializedSize< nonstd::string_view >inlinestatic
    + + + + diff --git a/structgrape_1_1SerializedSize_3_01nonstd_1_1string__view_01_4.html b/structgrape_1_1SerializedSize_3_01nonstd_1_1string__view_01_4.html new file mode 100644 index 00000000..d81545ba --- /dev/null +++ b/structgrape_1_1SerializedSize_3_01nonstd_1_1string__view_01_4.html @@ -0,0 +1,89 @@ + + + + + + + +libgrape-lite: grape::SerializedSize< nonstd::string_view > Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::SerializedSize< nonstd::string_view > Struct Reference
    +
    +
    + + + + +

    +Static Public Member Functions

    +static size_t size (const nonstd::string_view &v)
     
    +
    + + + + diff --git a/structgrape_1_1SerializedSize_3_01std_1_1string_01_4-members.html b/structgrape_1_1SerializedSize_3_01std_1_1string_01_4-members.html new file mode 100644 index 00000000..62bdd4ba --- /dev/null +++ b/structgrape_1_1SerializedSize_3_01std_1_1string_01_4-members.html @@ -0,0 +1,83 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::SerializedSize< std::string > Member List
    +
    +
    + +

    This is the complete list of members for grape::SerializedSize< std::string >, including all inherited members.

    + + +
    size(const std::string &v) (defined in grape::SerializedSize< std::string >)grape::SerializedSize< std::string >inlinestatic
    + + + + diff --git a/structgrape_1_1SerializedSize_3_01std_1_1string_01_4.html b/structgrape_1_1SerializedSize_3_01std_1_1string_01_4.html new file mode 100644 index 00000000..311419de --- /dev/null +++ b/structgrape_1_1SerializedSize_3_01std_1_1string_01_4.html @@ -0,0 +1,89 @@ + + + + + + + +libgrape-lite: grape::SerializedSize< std::string > Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::SerializedSize< std::string > Struct Reference
    +
    +
    + + + + +

    +Static Public Member Functions

    +static size_t size (const std::string &v)
     
    +
    + + + + diff --git a/structgrape_1_1ShuffleBuffer-members.html b/structgrape_1_1ShuffleBuffer-members.html new file mode 100644 index 00000000..5243e1d5 --- /dev/null +++ b/structgrape_1_1ShuffleBuffer-members.html @@ -0,0 +1,85 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::ShuffleBuffer< T > Member List
    +
    +
    + +

    This is the complete list of members for grape::ShuffleBuffer< T >, including all inherited members.

    + + + + +
    RecvFrom(type &buffer, int src_worker_id, int tag, MPI_Comm comm) (defined in grape::ShuffleBuffer< T >)grape::ShuffleBuffer< T >inlinestatic
    SendTo(const type &buffer, int dst_worker_id, int tag, MPI_Comm comm) (defined in grape::ShuffleBuffer< T >)grape::ShuffleBuffer< T >inlinestatic
    type typedef (defined in grape::ShuffleBuffer< T >)grape::ShuffleBuffer< T >
    + + + + diff --git a/structgrape_1_1ShuffleBuffer.html b/structgrape_1_1ShuffleBuffer.html new file mode 100644 index 00000000..6180efc0 --- /dev/null +++ b/structgrape_1_1ShuffleBuffer.html @@ -0,0 +1,99 @@ + + + + + + + +libgrape-lite: grape::ShuffleBuffer< T > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::ShuffleBuffer< T > Struct Template Reference
    +
    +
    + + + + +

    +Public Types

    +using type = std::vector< T >
     
    + + + + + +

    +Static Public Member Functions

    +static void SendTo (const type &buffer, int dst_worker_id, int tag, MPI_Comm comm)
     
    +static void RecvFrom (type &buffer, int src_worker_id, int tag, MPI_Comm comm)
     
    +
    + + + + diff --git a/structgrape_1_1ShuffleBufferTuple-members.html b/structgrape_1_1ShuffleBufferTuple-members.html new file mode 100644 index 00000000..030e7c9d --- /dev/null +++ b/structgrape_1_1ShuffleBufferTuple-members.html @@ -0,0 +1,99 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::ShuffleBufferTuple< First, Rest > Member List
    +
    +
    + +

    This is the complete list of members for grape::ShuffleBufferTuple< First, Rest >, including all inherited members.

    + + + + + + + + + + + + + + + + + + +
    AppendBuffers(const typename ShuffleBuffer< First >::type &b0, const typename ShuffleBuffer< Rest >::type &... bx) (defined in grape::ShuffleBufferTuple< First, Rest >)grape::ShuffleBufferTuple< First, Rest >inline
    AppendBuffers(typename ShuffleBuffer< First >::type &&b0, typename ShuffleBuffer< Rest >::type &&... bx) (defined in grape::ShuffleBufferTuple< First, Rest >)grape::ShuffleBufferTuple< First, Rest >inline
    Clear() (defined in grape::ShuffleBufferTuple< First, Rest >)grape::ShuffleBufferTuple< First, Rest >inline
    Emplace(const First &v0, const Rest &... vx) (defined in grape::ShuffleBufferTuple< First, Rest >)grape::ShuffleBufferTuple< First, Rest >inline
    first (defined in grape::ShuffleBufferTuple< First, Rest >)grape::ShuffleBufferTuple< First, Rest >
    RecvFrom(int src_worker_id, int tag, MPI_Comm comm) (defined in grape::ShuffleBufferTuple< First, Rest >)grape::ShuffleBufferTuple< First, Rest >inline
    resize(size_t size) (defined in grape::ShuffleBufferTuple< First, Rest >)grape::ShuffleBufferTuple< First, Rest >inline
    SendTo(int dst_worker_id, int tag, MPI_Comm comm) (defined in grape::ShuffleBufferTuple< First, Rest >)grape::ShuffleBufferTuple< First, Rest >inline
    SetBuffers(const typename ShuffleBuffer< First >::type b0, const typename ShuffleBuffer< Rest >::type &... bx) (defined in grape::ShuffleBufferTuple< First, Rest >)grape::ShuffleBufferTuple< First, Rest >inline
    SetBuffers(typename ShuffleBuffer< First >::type &&b0, typename ShuffleBuffer< Rest >::type &&... bx) (defined in grape::ShuffleBufferTuple< First, Rest >)grape::ShuffleBufferTuple< First, Rest >inline
    ShuffleBufferTuple() (defined in grape::ShuffleBufferTuple< First, Rest >)grape::ShuffleBufferTuple< First, Rest >inline
    ShuffleBufferTuple(const ShuffleBufferTuple &rhs) (defined in grape::ShuffleBufferTuple< First, Rest >)grape::ShuffleBufferTuple< First, Rest >inline
    ShuffleBufferTuple(ShuffleBufferTuple &&rhs) (defined in grape::ShuffleBufferTuple< First, Rest >)grape::ShuffleBufferTuple< First, Rest >inline
    ShuffleBufferTuple(const typename ShuffleBuffer< First >::type &b0, const typename ShuffleBuffer< Rest >::type &... bx) (defined in grape::ShuffleBufferTuple< First, Rest >)grape::ShuffleBufferTuple< First, Rest >inline
    ShuffleBufferTuple(typename ShuffleBuffer< First >::type &&b0, typename ShuffleBuffer< Rest >::type &&... bx) (defined in grape::ShuffleBufferTuple< First, Rest >)grape::ShuffleBufferTuple< First, Rest >inline
    size() const (defined in grape::ShuffleBufferTuple< First, Rest >)grape::ShuffleBufferTuple< First, Rest >inline
    tuple_size (defined in grape::ShuffleBufferTuple< First, Rest >)grape::ShuffleBufferTuple< First, Rest >static
    + + + + diff --git a/structgrape_1_1ShuffleBufferTuple.html b/structgrape_1_1ShuffleBufferTuple.html new file mode 100644 index 00000000..f08d8b08 --- /dev/null +++ b/structgrape_1_1ShuffleBufferTuple.html @@ -0,0 +1,168 @@ + + + + + + + +libgrape-lite: grape::ShuffleBufferTuple< First, Rest > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::ShuffleBufferTuple< First, Rest > Struct Template Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Public Member Functions

    ShuffleBufferTuple (const ShuffleBufferTuple &rhs)
     
    ShuffleBufferTuple (ShuffleBufferTuple &&rhs)
     
    ShuffleBufferTuple (const typename ShuffleBuffer< First >::type &b0, const typename ShuffleBuffer< Rest >::type &... bx)
     
    ShuffleBufferTuple (typename ShuffleBuffer< First >::type &&b0, typename ShuffleBuffer< Rest >::type &&... bx)
     
    +void Emplace (const First &v0, const Rest &... vx)
     
    +void SetBuffers (const typename ShuffleBuffer< First >::type b0, const typename ShuffleBuffer< Rest >::type &... bx)
     
    +void SetBuffers (typename ShuffleBuffer< First >::type &&b0, typename ShuffleBuffer< Rest >::type &&... bx)
     
    +void AppendBuffers (const typename ShuffleBuffer< First >::type &b0, const typename ShuffleBuffer< Rest >::type &... bx)
     
    +void AppendBuffers (typename ShuffleBuffer< First >::type &&b0, typename ShuffleBuffer< Rest >::type &&... bx)
     
    +size_t size () const
     
    +void resize (size_t size)
     
    +void SendTo (int dst_worker_id, int tag, MPI_Comm comm)
     
    +void RecvFrom (int src_worker_id, int tag, MPI_Comm comm)
     
    +void Clear ()
     
    + + + +

    +Public Attributes

    +ShuffleBuffer< First >::type first
     
    + + + +

    +Static Public Attributes

    static constexpr size_t tuple_size
     
    +

    Member Data Documentation

    + +

    ◆ tuple_size

    + +
    +
    +
    +template<typename First , typename... Rest>
    + + + + + +
    + + + + +
    constexpr size_t grape::ShuffleBufferTuple< First, Rest >::tuple_size
    +
    +staticconstexpr
    +
    +Initial value:
    =
    +
    ShuffleBufferTuple<Rest...>::tuple_size + 1
    +
    +
    +
    +
    + + + + diff --git a/structgrape_1_1ShuffleBufferTuple_3_01First_01_4-members.html b/structgrape_1_1ShuffleBufferTuple_3_01First_01_4-members.html new file mode 100644 index 00000000..7521853b --- /dev/null +++ b/structgrape_1_1ShuffleBufferTuple_3_01First_01_4-members.html @@ -0,0 +1,99 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::ShuffleBufferTuple< First > Member List
    +
    +
    + +

    This is the complete list of members for grape::ShuffleBufferTuple< First >, including all inherited members.

    + + + + + + + + + + + + + + + + + + +
    AppendBuffers(const typename ShuffleBuffer< First >::type &b0) (defined in grape::ShuffleBufferTuple< First >)grape::ShuffleBufferTuple< First >inline
    AppendBuffers(typename ShuffleBuffer< First >::type &&b0) (defined in grape::ShuffleBufferTuple< First >)grape::ShuffleBufferTuple< First >inline
    Clear() (defined in grape::ShuffleBufferTuple< First >)grape::ShuffleBufferTuple< First >inline
    Emplace(const First &v0) (defined in grape::ShuffleBufferTuple< First >)grape::ShuffleBufferTuple< First >inline
    first (defined in grape::ShuffleBufferTuple< First >)grape::ShuffleBufferTuple< First >
    RecvFrom(int src_worker_id, int tag, MPI_Comm comm) (defined in grape::ShuffleBufferTuple< First >)grape::ShuffleBufferTuple< First >inline
    resize(size_t size) (defined in grape::ShuffleBufferTuple< First >)grape::ShuffleBufferTuple< First >inline
    SendTo(int dst_worker_id, int tag, MPI_Comm comm) (defined in grape::ShuffleBufferTuple< First >)grape::ShuffleBufferTuple< First >inline
    SetBuffers(const typename ShuffleBuffer< First >::type &b0) (defined in grape::ShuffleBufferTuple< First >)grape::ShuffleBufferTuple< First >inline
    SetBuffers(typename ShuffleBuffer< First >::type &&b0) (defined in grape::ShuffleBufferTuple< First >)grape::ShuffleBufferTuple< First >inline
    ShuffleBufferTuple() (defined in grape::ShuffleBufferTuple< First >)grape::ShuffleBufferTuple< First >inline
    ShuffleBufferTuple(const ShuffleBufferTuple &rhs) (defined in grape::ShuffleBufferTuple< First >)grape::ShuffleBufferTuple< First >inline
    ShuffleBufferTuple(ShuffleBufferTuple &&rhs) (defined in grape::ShuffleBufferTuple< First >)grape::ShuffleBufferTuple< First >inline
    ShuffleBufferTuple(const typename ShuffleBuffer< First >::type &b0) (defined in grape::ShuffleBufferTuple< First >)grape::ShuffleBufferTuple< First >inlineexplicit
    ShuffleBufferTuple(typename ShuffleBuffer< First >::type &&b0) (defined in grape::ShuffleBufferTuple< First >)grape::ShuffleBufferTuple< First >inlineexplicit
    size() const (defined in grape::ShuffleBufferTuple< First >)grape::ShuffleBufferTuple< First >inline
    tuple_size (defined in grape::ShuffleBufferTuple< First >)grape::ShuffleBufferTuple< First >static
    + + + + diff --git a/structgrape_1_1ShuffleBufferTuple_3_01First_01_4.html b/structgrape_1_1ShuffleBufferTuple_3_01First_01_4.html new file mode 100644 index 00000000..b6e2f506 --- /dev/null +++ b/structgrape_1_1ShuffleBufferTuple_3_01First_01_4.html @@ -0,0 +1,142 @@ + + + + + + + +libgrape-lite: grape::ShuffleBufferTuple< First > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::ShuffleBufferTuple< First > Struct Template Reference
    +
    +
    + + + + + + + + + + + + + + + + + + + + + + + + + + + + + + +

    +Public Member Functions

    ShuffleBufferTuple (const ShuffleBufferTuple &rhs)
     
    ShuffleBufferTuple (ShuffleBufferTuple &&rhs)
     
    ShuffleBufferTuple (const typename ShuffleBuffer< First >::type &b0)
     
    ShuffleBufferTuple (typename ShuffleBuffer< First >::type &&b0)
     
    +void Emplace (const First &v0)
     
    +void SetBuffers (const typename ShuffleBuffer< First >::type &b0)
     
    +void SetBuffers (typename ShuffleBuffer< First >::type &&b0)
     
    +void AppendBuffers (const typename ShuffleBuffer< First >::type &b0)
     
    +void AppendBuffers (typename ShuffleBuffer< First >::type &&b0)
     
    +size_t size () const
     
    +void resize (size_t size)
     
    +void SendTo (int dst_worker_id, int tag, MPI_Comm comm)
     
    +void RecvFrom (int src_worker_id, int tag, MPI_Comm comm)
     
    +void Clear ()
     
    + + + +

    +Public Attributes

    +ShuffleBuffer< First >::type first
     
    + + + +

    +Static Public Attributes

    +static constexpr size_t tuple_size = 1
     
    +
    + + + + diff --git a/structgrape_1_1ShuffleBufferTuple__element.html b/structgrape_1_1ShuffleBufferTuple__element.html new file mode 100644 index 00000000..b6e6f1a1 --- /dev/null +++ b/structgrape_1_1ShuffleBufferTuple__element.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: grape::ShuffleBufferTuple_element< index, T > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::ShuffleBufferTuple_element< index, T > Struct Template Reference
    +
    +
    +
    + + + + diff --git a/structgrape_1_1ShuffleBufferTuple__element_3_010_00_01ShuffleBufferTuple_3_01First_00_01Rest_8_8_8_01_4_01_4-members.html b/structgrape_1_1ShuffleBufferTuple__element_3_010_00_01ShuffleBufferTuple_3_01First_00_01Rest_8_8_8_01_4_01_4-members.html new file mode 100644 index 00000000..9a663523 --- /dev/null +++ b/structgrape_1_1ShuffleBufferTuple__element_3_010_00_01ShuffleBufferTuple_3_01First_00_01Rest_8_8_8_01_4_01_4-members.html @@ -0,0 +1,83 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::ShuffleBufferTuple_element< 0, ShuffleBufferTuple< First, Rest... > > Member List
    +
    + + + + + diff --git a/structgrape_1_1ShuffleBufferTuple__element_3_010_00_01ShuffleBufferTuple_3_01First_00_01Rest_8_8_8_01_4_01_4.html b/structgrape_1_1ShuffleBufferTuple__element_3_010_00_01ShuffleBufferTuple_3_01First_00_01Rest_8_8_8_01_4_01_4.html new file mode 100644 index 00000000..a05a12aa --- /dev/null +++ b/structgrape_1_1ShuffleBufferTuple__element_3_010_00_01ShuffleBufferTuple_3_01First_00_01Rest_8_8_8_01_4_01_4.html @@ -0,0 +1,89 @@ + + + + + + + +libgrape-lite: grape::ShuffleBufferTuple_element< 0, ShuffleBufferTuple< First, Rest... > > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::ShuffleBufferTuple_element< 0, ShuffleBufferTuple< First, Rest... > > Struct Template Reference
    +
    +
    + + + + +

    +Public Types

    +using buffer_type = typename ShuffleBuffer< First >::type
     
    +
    + + + + diff --git a/structgrape_1_1ShuffleBufferTuple__element_3_01index_00_01ShuffleBufferTuple_3_01First_00_01Tail_8_8_8_01_4_01_4.html b/structgrape_1_1ShuffleBufferTuple__element_3_01index_00_01ShuffleBufferTuple_3_01First_00_01Tail_8_8_8_01_4_01_4.html new file mode 100644 index 00000000..3fbc3eab --- /dev/null +++ b/structgrape_1_1ShuffleBufferTuple__element_3_01index_00_01ShuffleBufferTuple_3_01First_00_01Tail_8_8_8_01_4_01_4.html @@ -0,0 +1,88 @@ + + + + + + + +libgrape-lite: grape::ShuffleBufferTuple_element< index, ShuffleBufferTuple< First, Tail... > > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::ShuffleBufferTuple_element< index, ShuffleBufferTuple< First, Tail... > > Struct Template Reference
    +
    +
    +
    +Inheritance diagram for grape::ShuffleBufferTuple_element< index, ShuffleBufferTuple< First, Tail... > >:
    +
    +
    + + +grape::ShuffleBufferTuple_element< index - 1, ShuffleBufferTuple< Tail... > > + +
    +
    + + + + diff --git a/structgrape_1_1ShuffleBufferTuple__element_3_01index_00_01ShuffleBufferTuple_3_01First_00_01Tail_8_8_8_01_4_01_4.png b/structgrape_1_1ShuffleBufferTuple__element_3_01index_00_01ShuffleBufferTuple_3_01First_00_01Tail_8_8_8_01_4_01_4.png new file mode 100644 index 0000000000000000000000000000000000000000..62ea7b67b64ac2595fb5f7e6fcc5d5852c69b437 GIT binary patch literal 1403 zcmcJPX;4!K5XWB%DVPpNoz%*W8mv?rkt1jbry#tb7y>F7IRs5O1tk!a#6&Iu2hk@2 zMmf|7B9_A-2%1Pyz=L265^hAPPzd)C5De*SJN?wp-I?9}@6LYMnf=XXkUZTqP`W4p z05m{%7cu}KB(Nr_tH6<4tr`NSjih}(u1cj6mVZnv#$`8MhSlHR*w~27=r@8(bvoJ8 z8-R!Yvd-5&765=mfi6xy35dx888nPnPjRR#mn)3EVB*o|u^@G8{D}F!dWM0{I_}8gC?eEG8sgr=J-I)9}^*L-ZL2+YK!%MQd|)rdLR-N z?|#`ASq@n>MzW|wZ2JK_W4gVlW#McNhK2Y5(PJgMw@+vsHd;2e3kjZve4sOh(tF1g}{|gD<+D-Bls4(-&Z5-gv?56%Om#U(MRrv)^!E^HN%8J%AqtbZpr9@314@p zwYa&^l`q(tz2{M?c!TRtWgb+cQrl9R^g;eHt55jNGq-t)>5~4mkE>=LkXs#d!~PEt z^Xt{|8<{JP5HVUd>cjfs-`C_y*XCIUD^T~(!~0r8SdKH z%Yt-#9$kF2w|%CHSsGufMlkzOadO~Q`_y-J3-36(33eB#Y>%S$^seZ#s7(s9f>Y); zCkV%Nlbzgp%>oMV&bRcnNt{&UYQfWQEkP~bnfGRbbG2EFVYc41t4!h@Del8Q3#J?h ziCGP=AN*y!UKn#D?y9y;3zh%TvkgZC=c>MEB~d#PmgZz{_CO<{m`R4E%qKt%F39uGpJOv^B- z&cvU=TQOJY{$1A96*65_fUTkg)&pLbp>JH8p0UeJ9gTTB;7W{_l{GRwIR|aLkxb&i z&>);QnIP3u;RX!P|I}Evg|KfPVscOT-R2;T5!x!IrjGFDz%6*W6lWqz8x@#Kum2jg z%2_$ug}qmP*fJv4GE{R8mq-BY3itMWtNNZMT-`#?9J6{kQq_(Q%B&1$x zg$OD#aB|X58<$D|O_5q_0)+;DP#tt-v$&e{1JNv4Y4^9Lgy6?2ReEI%Z zwHofnrpjqV?~c`LV;1D+l~44->>XPZ1*1Ot$FD^?az)7UyXHY51@yOAT^^V!JjD-Ad%sQX zPE}w|jdCET&zxDL&=Obw_N8M&F6?MGfg#MT@r>S6Iu_2?&wu4Wycc$yufL1ENSK$N zwTOz>4W1?3Jb$4hEO~xQkG{lu&<)abH6Y?c@lg&5zEW>nw-GNt#=<|?){Mq(HZZ!G zw~&~%luGHvsW=2t``h;GXce^tiOX;o^JrsFXK{SGwo}0wqhia#yV=AqH2y+EsNS^v zGfsX{dbg`PwATMzb1koBNZz?WJJ{>(qW^tAn~c-LQ8>M+7rozxqqO`FZP + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::ShuffleBuffer< nonstd::string_view > Member List
    +
    +
    + +

    This is the complete list of members for grape::ShuffleBuffer< nonstd::string_view >, including all inherited members.

    + + + + +
    RecvFrom(type &buffer, int src_worker_id, int tag, MPI_Comm comm) (defined in grape::ShuffleBuffer< nonstd::string_view >)grape::ShuffleBuffer< nonstd::string_view >inlinestatic
    SendTo(const type &buffer, int dst_worker_id, int tag, MPI_Comm comm) (defined in grape::ShuffleBuffer< nonstd::string_view >)grape::ShuffleBuffer< nonstd::string_view >inlinestatic
    type typedef (defined in grape::ShuffleBuffer< nonstd::string_view >)grape::ShuffleBuffer< nonstd::string_view >
    + + + + diff --git a/structgrape_1_1ShuffleBuffer_3_01nonstd_1_1string__view_01_4.html b/structgrape_1_1ShuffleBuffer_3_01nonstd_1_1string__view_01_4.html new file mode 100644 index 00000000..63297811 --- /dev/null +++ b/structgrape_1_1ShuffleBuffer_3_01nonstd_1_1string__view_01_4.html @@ -0,0 +1,99 @@ + + + + + + + +libgrape-lite: grape::ShuffleBuffer< nonstd::string_view > Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::ShuffleBuffer< nonstd::string_view > Struct Reference
    +
    +
    + + + + +

    +Public Types

    +using type = StringViewVector
     
    + + + + + +

    +Static Public Member Functions

    +static void SendTo (const type &buffer, int dst_worker_id, int tag, MPI_Comm comm)
     
    +static void RecvFrom (type &buffer, int src_worker_id, int tag, MPI_Comm comm)
     
    +
    + + + + diff --git a/structgrape_1_1TerminateInfo-members.html b/structgrape_1_1TerminateInfo-members.html new file mode 100644 index 00000000..a713cb71 --- /dev/null +++ b/structgrape_1_1TerminateInfo-members.html @@ -0,0 +1,85 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::TerminateInfo Member List
    +
    +
    + +

    This is the complete list of members for grape::TerminateInfo, including all inherited members.

    + + + + +
    info (defined in grape::TerminateInfo)grape::TerminateInfo
    Init(fid_t fnum) (defined in grape::TerminateInfo)grape::TerminateInfoinline
    success (defined in grape::TerminateInfo)grape::TerminateInfo
    + + + + diff --git a/structgrape_1_1TerminateInfo.html b/structgrape_1_1TerminateInfo.html new file mode 100644 index 00000000..913a9423 --- /dev/null +++ b/structgrape_1_1TerminateInfo.html @@ -0,0 +1,99 @@ + + + + + + + +libgrape-lite: grape::TerminateInfo Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::TerminateInfo Struct Reference
    +
    +
    + + + + +

    +Public Member Functions

    +void Init (fid_t fnum)
     
    + + + + + +

    +Public Attributes

    +bool success
     
    +std::vector< std::string > info
     
    +
    + + + + diff --git a/structgrape_1_1VarintUtil-members.html b/structgrape_1_1VarintUtil-members.html new file mode 100644 index 00000000..8405b67e --- /dev/null +++ b/structgrape_1_1VarintUtil-members.html @@ -0,0 +1,85 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::VarintUtil< T > Member List
    +
    +
    + +

    This is the complete list of members for grape::VarintUtil< T >, including all inherited members.

    + + + + +
    decode(VarintDecoder &decoder) (defined in grape::VarintUtil< T >)grape::VarintUtil< T >inlinestatic
    decode_raw(const uint8_t *p, T &val) (defined in grape::VarintUtil< T >)grape::VarintUtil< T >inlinestatic
    encode(T v, VarintEncoder &encoder) (defined in grape::VarintUtil< T >)grape::VarintUtil< T >inlinestatic
    + + + + diff --git a/structgrape_1_1VarintUtil.html b/structgrape_1_1VarintUtil.html new file mode 100644 index 00000000..885097d9 --- /dev/null +++ b/structgrape_1_1VarintUtil.html @@ -0,0 +1,95 @@ + + + + + + + +libgrape-lite: grape::VarintUtil< T > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::VarintUtil< T > Struct Template Reference
    +
    +
    + + + + + + + + +

    +Static Public Member Functions

    +static void encode (T v, VarintEncoder &encoder)
     
    +static T decode (VarintDecoder &decoder)
     
    +static const uint8_t * decode_raw (const uint8_t *p, T &val)
     
    +
    + + + + diff --git a/structgrape_1_1VarintUtil_3_01uint32__t_01_4-members.html b/structgrape_1_1VarintUtil_3_01uint32__t_01_4-members.html new file mode 100644 index 00000000..76a82476 --- /dev/null +++ b/structgrape_1_1VarintUtil_3_01uint32__t_01_4-members.html @@ -0,0 +1,87 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::VarintUtil< uint32_t > Member List
    +
    +
    + +

    This is the complete list of members for grape::VarintUtil< uint32_t >, including all inherited members.

    + + + + + + +
    decode(VarintDecoder &decoder, uint32_t &val) (defined in grape::VarintUtil< uint32_t >)grape::VarintUtil< uint32_t >inlinestatic
    decode_from_archive(OutArchive &arc, uint32_t &val) (defined in grape::VarintUtil< uint32_t >)grape::VarintUtil< uint32_t >inlinestatic
    decode_raw(const uint8_t *p, uint32_t &val) (defined in grape::VarintUtil< uint32_t >)grape::VarintUtil< uint32_t >inlinestatic
    encode(uint32_t v, VarintEncoder &encoder) (defined in grape::VarintUtil< uint32_t >)grape::VarintUtil< uint32_t >inlinestatic
    encode_to_archive(InArchive &arc, uint32_t v) (defined in grape::VarintUtil< uint32_t >)grape::VarintUtil< uint32_t >inlinestatic
    + + + + diff --git a/structgrape_1_1VarintUtil_3_01uint32__t_01_4.html b/structgrape_1_1VarintUtil_3_01uint32__t_01_4.html new file mode 100644 index 00000000..0fe8c4f4 --- /dev/null +++ b/structgrape_1_1VarintUtil_3_01uint32__t_01_4.html @@ -0,0 +1,101 @@ + + + + + + + +libgrape-lite: grape::VarintUtil< uint32_t > Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::VarintUtil< uint32_t > Struct Reference
    +
    +
    + + + + + + + + + + + + +

    +Static Public Member Functions

    +static void encode (uint32_t v, VarintEncoder &encoder)
     
    +static bool decode (VarintDecoder &decoder, uint32_t &val)
     
    +static const uint8_t * decode_raw (const uint8_t *p, uint32_t &val)
     
    +static void encode_to_archive (InArchive &arc, uint32_t v)
     
    +static void decode_from_archive (OutArchive &arc, uint32_t &val)
     
    +
    + + + + diff --git a/structgrape_1_1VarintUtil_3_01uint64__t_01_4-members.html b/structgrape_1_1VarintUtil_3_01uint64__t_01_4-members.html new file mode 100644 index 00000000..0ad2e466 --- /dev/null +++ b/structgrape_1_1VarintUtil_3_01uint64__t_01_4-members.html @@ -0,0 +1,88 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::VarintUtil< uint64_t > Member List
    +
    +
    + +

    This is the complete list of members for grape::VarintUtil< uint64_t >, including all inherited members.

    + + + + + + + +
    decode(VarintDecoder &decoder, uint64_t &val) (defined in grape::VarintUtil< uint64_t >)grape::VarintUtil< uint64_t >inlinestatic
    decode_from_archive(OutArchive &arc, uint64_t &val) (defined in grape::VarintUtil< uint64_t >)grape::VarintUtil< uint64_t >inlinestatic
    decode_raw(const uint8_t *p, uint64_t &val) (defined in grape::VarintUtil< uint64_t >)grape::VarintUtil< uint64_t >inlinestatic
    encode(uint64_t v, VarintEncoder &encoder) (defined in grape::VarintUtil< uint64_t >)grape::VarintUtil< uint64_t >inlinestatic
    encode_to_archive(InArchive &arc, uint64_t v) (defined in grape::VarintUtil< uint64_t >)grape::VarintUtil< uint64_t >inlinestatic
    encode_to_archive_beta(FixedInArchive &arc, uint64_t v) (defined in grape::VarintUtil< uint64_t >)grape::VarintUtil< uint64_t >inlinestatic
    + + + + diff --git a/structgrape_1_1VarintUtil_3_01uint64__t_01_4.html b/structgrape_1_1VarintUtil_3_01uint64__t_01_4.html new file mode 100644 index 00000000..6f1b508c --- /dev/null +++ b/structgrape_1_1VarintUtil_3_01uint64__t_01_4.html @@ -0,0 +1,104 @@ + + + + + + + +libgrape-lite: grape::VarintUtil< uint64_t > Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::VarintUtil< uint64_t > Struct Reference
    +
    +
    + + + + + + + + + + + + + + +

    +Static Public Member Functions

    +static void encode (uint64_t v, VarintEncoder &encoder)
     
    +static bool decode (VarintDecoder &decoder, uint64_t &val)
     
    +static const uint8_t * decode_raw (const uint8_t *p, uint64_t &val)
     
    +static void encode_to_archive (InArchive &arc, uint64_t v)
     
    +static void encode_to_archive_beta (FixedInArchive &arc, uint64_t v)
     
    +static void decode_from_archive (OutArchive &arc, uint64_t &val)
     
    +
    + + + + diff --git a/structgrape_1_1add__const__ref-members.html b/structgrape_1_1add__const__ref-members.html new file mode 100644 index 00000000..d255f6c6 --- /dev/null +++ b/structgrape_1_1add__const__ref-members.html @@ -0,0 +1,83 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::add_const_ref< T > Member List
    +
    +
    + +

    This is the complete list of members for grape::add_const_ref< T >, including all inherited members.

    + + +
    type typedef (defined in grape::add_const_ref< T >)grape::add_const_ref< T >
    + + + + diff --git a/structgrape_1_1add__const__ref.html b/structgrape_1_1add__const__ref.html new file mode 100644 index 00000000..788ca0b7 --- /dev/null +++ b/structgrape_1_1add__const__ref.html @@ -0,0 +1,89 @@ + + + + + + + +libgrape-lite: grape::add_const_ref< T > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::add_const_ref< T > Struct Template Reference
    +
    +
    + + + + +

    +Public Types

    +using type = const T &
     
    +
    + + + + diff --git a/structgrape_1_1add__const__ref_3_01T_01_6_01_4-members.html b/structgrape_1_1add__const__ref_3_01T_01_6_01_4-members.html new file mode 100644 index 00000000..5abb32c7 --- /dev/null +++ b/structgrape_1_1add__const__ref_3_01T_01_6_01_4-members.html @@ -0,0 +1,83 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::add_const_ref< T & > Member List
    +
    +
    + +

    This is the complete list of members for grape::add_const_ref< T & >, including all inherited members.

    + + +
    type typedef (defined in grape::add_const_ref< T & >)grape::add_const_ref< T & >
    + + + + diff --git a/structgrape_1_1add__const__ref_3_01T_01_6_01_4.html b/structgrape_1_1add__const__ref_3_01T_01_6_01_4.html new file mode 100644 index 00000000..f4e2fcb1 --- /dev/null +++ b/structgrape_1_1add__const__ref_3_01T_01_6_01_4.html @@ -0,0 +1,89 @@ + + + + + + + +libgrape-lite: grape::add_const_ref< T & > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::add_const_ref< T & > Struct Template Reference
    +
    +
    + + + + +

    +Public Types

    +using type = const T &
     
    +
    + + + + diff --git a/structgrape_1_1add__const__ref_3_01const_01T_01_6_01_4-members.html b/structgrape_1_1add__const__ref_3_01const_01T_01_6_01_4-members.html new file mode 100644 index 00000000..9f7edc4e --- /dev/null +++ b/structgrape_1_1add__const__ref_3_01const_01T_01_6_01_4-members.html @@ -0,0 +1,83 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::add_const_ref< const T & > Member List
    +
    +
    + +

    This is the complete list of members for grape::add_const_ref< const T & >, including all inherited members.

    + + +
    type typedef (defined in grape::add_const_ref< const T & >)grape::add_const_ref< const T & >
    + + + + diff --git a/structgrape_1_1add__const__ref_3_01const_01T_01_6_01_4.html b/structgrape_1_1add__const__ref_3_01const_01T_01_6_01_4.html new file mode 100644 index 00000000..0a4d06cc --- /dev/null +++ b/structgrape_1_1add__const__ref_3_01const_01T_01_6_01_4.html @@ -0,0 +1,89 @@ + + + + + + + +libgrape-lite: grape::add_const_ref< const T & > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::add_const_ref< const T & > Struct Template Reference
    +
    +
    + + + + +

    +Public Types

    +using type = const T &
     
    +
    + + + + diff --git a/structgrape_1_1add__ref-members.html b/structgrape_1_1add__ref-members.html new file mode 100644 index 00000000..74e98829 --- /dev/null +++ b/structgrape_1_1add__ref-members.html @@ -0,0 +1,83 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::add_ref< T > Member List
    +
    +
    + +

    This is the complete list of members for grape::add_ref< T >, including all inherited members.

    + + +
    type typedef (defined in grape::add_ref< T >)grape::add_ref< T >
    + + + + diff --git a/structgrape_1_1add__ref.html b/structgrape_1_1add__ref.html new file mode 100644 index 00000000..504cf842 --- /dev/null +++ b/structgrape_1_1add__ref.html @@ -0,0 +1,89 @@ + + + + + + + +libgrape-lite: grape::add_ref< T > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::add_ref< T > Struct Template Reference
    +
    +
    + + + + +

    +Public Types

    +using type = T &
     
    +
    + + + + diff --git a/structgrape_1_1add__ref_3_01T_01_6_01_4-members.html b/structgrape_1_1add__ref_3_01T_01_6_01_4-members.html new file mode 100644 index 00000000..a8fa376e --- /dev/null +++ b/structgrape_1_1add__ref_3_01T_01_6_01_4-members.html @@ -0,0 +1,83 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::add_ref< T & > Member List
    +
    +
    + +

    This is the complete list of members for grape::add_ref< T & >, including all inherited members.

    + + +
    type typedef (defined in grape::add_ref< T & >)grape::add_ref< T & >
    + + + + diff --git a/structgrape_1_1add__ref_3_01T_01_6_01_4.html b/structgrape_1_1add__ref_3_01T_01_6_01_4.html new file mode 100644 index 00000000..d5848d4e --- /dev/null +++ b/structgrape_1_1add__ref_3_01T_01_6_01_4.html @@ -0,0 +1,89 @@ + + + + + + + +libgrape-lite: grape::add_ref< T & > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::add_ref< T & > Struct Template Reference
    +
    +
    + + + + +

    +Public Types

    +using type = T &
     
    +
    + + + + diff --git a/structgrape_1_1batch__shuffle__message__manager__impl_1_1ArchiveShuffle-members.html b/structgrape_1_1batch__shuffle__message__manager__impl_1_1ArchiveShuffle-members.html new file mode 100644 index 00000000..a25f0188 --- /dev/null +++ b/structgrape_1_1batch__shuffle__message__manager__impl_1_1ArchiveShuffle-members.html @@ -0,0 +1,83 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::batch_shuffle_message_manager_impl::ArchiveShuffle< MESSAGE_T > Member List
    +
    + + + + + diff --git a/structgrape_1_1batch__shuffle__message__manager__impl_1_1ArchiveShuffle.html b/structgrape_1_1batch__shuffle__message__manager__impl_1_1ArchiveShuffle.html new file mode 100644 index 00000000..1e270991 --- /dev/null +++ b/structgrape_1_1batch__shuffle__message__manager__impl_1_1ArchiveShuffle.html @@ -0,0 +1,89 @@ + + + + + + + +libgrape-lite: grape::batch_shuffle_message_manager_impl::ArchiveShuffle< MESSAGE_T > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::batch_shuffle_message_manager_impl::ArchiveShuffle< MESSAGE_T > Struct Template Reference
    +
    +
    + + + + +

    +Static Public Attributes

    +static constexpr bool value = !std::is_pod<MESSAGE_T>::value
     
    +
    + + + + diff --git a/structgrape_1_1batch__shuffle__message__manager__impl_1_1IsRange-members.html b/structgrape_1_1batch__shuffle__message__manager__impl_1_1IsRange-members.html new file mode 100644 index 00000000..82892ec0 --- /dev/null +++ b/structgrape_1_1batch__shuffle__message__manager__impl_1_1IsRange-members.html @@ -0,0 +1,85 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::batch_shuffle_message_manager_impl::IsRange< FRAG_T > Member List
    +
    + + + + + diff --git a/structgrape_1_1batch__shuffle__message__manager__impl_1_1IsRange.html b/structgrape_1_1batch__shuffle__message__manager__impl_1_1IsRange.html new file mode 100644 index 00000000..a44530ac --- /dev/null +++ b/structgrape_1_1batch__shuffle__message__manager__impl_1_1IsRange.html @@ -0,0 +1,125 @@ + + + + + + + +libgrape-lite: grape::batch_shuffle_message_manager_impl::IsRange< FRAG_T > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::batch_shuffle_message_manager_impl::IsRange< FRAG_T > Struct Template Reference
    +
    +
    + + + + + + +

    +Public Types

    +using sub_vertices_t = typename FRAG_T::sub_vertices_t
     
    +using vid_t = typename FRAG_T::vid_t
     
    + + + +

    +Static Public Attributes

    static constexpr bool value
     
    +

    Member Data Documentation

    + +

    ◆ value

    + +
    +
    +
    +template<typename FRAG_T >
    + + + + + +
    + + + + +
    constexpr bool grape::batch_shuffle_message_manager_impl::IsRange< FRAG_T >::value
    +
    +staticconstexpr
    +
    +Initial value:
    =
    +
    std::is_same<sub_vertices_t, VertexRange<vid_t>>::value
    +
    +
    +
    +
    + + + + diff --git a/structgrape_1_1batch__shuffle__message__manager__impl_1_1PodShuffle-members.html b/structgrape_1_1batch__shuffle__message__manager__impl_1_1PodShuffle-members.html new file mode 100644 index 00000000..fb8b47ee --- /dev/null +++ b/structgrape_1_1batch__shuffle__message__manager__impl_1_1PodShuffle-members.html @@ -0,0 +1,83 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::batch_shuffle_message_manager_impl::PodShuffle< FRAG_T, MESSAGE_T > Member List
    +
    + + + + + diff --git a/structgrape_1_1batch__shuffle__message__manager__impl_1_1PodShuffle.html b/structgrape_1_1batch__shuffle__message__manager__impl_1_1PodShuffle.html new file mode 100644 index 00000000..0b88ed9f --- /dev/null +++ b/structgrape_1_1batch__shuffle__message__manager__impl_1_1PodShuffle.html @@ -0,0 +1,115 @@ + + + + + + + +libgrape-lite: grape::batch_shuffle_message_manager_impl::PodShuffle< FRAG_T, MESSAGE_T > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::batch_shuffle_message_manager_impl::PodShuffle< FRAG_T, MESSAGE_T > Struct Template Reference
    +
    +
    + + + + +

    +Static Public Attributes

    static constexpr bool value
     
    +

    Member Data Documentation

    + +

    ◆ value

    + +
    +
    +
    +template<typename FRAG_T , typename MESSAGE_T >
    + + + + + +
    + + + + +
    constexpr bool grape::batch_shuffle_message_manager_impl::PodShuffle< FRAG_T, MESSAGE_T >::value
    +
    +staticconstexpr
    +
    +Initial value:
    =
    +
    !IsRange<FRAG_T>::value && std::is_pod<MESSAGE_T>::value
    +
    +
    +
    +
    + + + + diff --git a/structgrape_1_1batch__shuffle__message__manager__impl_1_1ShuffleInplace-members.html b/structgrape_1_1batch__shuffle__message__manager__impl_1_1ShuffleInplace-members.html new file mode 100644 index 00000000..7027e187 --- /dev/null +++ b/structgrape_1_1batch__shuffle__message__manager__impl_1_1ShuffleInplace-members.html @@ -0,0 +1,83 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::batch_shuffle_message_manager_impl::ShuffleInplace< FRAG_T, MESSAGE_T > Member List
    +
    + + + + + diff --git a/structgrape_1_1batch__shuffle__message__manager__impl_1_1ShuffleInplace.html b/structgrape_1_1batch__shuffle__message__manager__impl_1_1ShuffleInplace.html new file mode 100644 index 00000000..0d0b6d03 --- /dev/null +++ b/structgrape_1_1batch__shuffle__message__manager__impl_1_1ShuffleInplace.html @@ -0,0 +1,115 @@ + + + + + + + +libgrape-lite: grape::batch_shuffle_message_manager_impl::ShuffleInplace< FRAG_T, MESSAGE_T > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::batch_shuffle_message_manager_impl::ShuffleInplace< FRAG_T, MESSAGE_T > Struct Template Reference
    +
    +
    + + + + +

    +Static Public Attributes

    static constexpr bool value
     
    +

    Member Data Documentation

    + +

    ◆ value

    + +
    +
    +
    +template<typename FRAG_T , typename MESSAGE_T >
    + + + + + +
    + + + + +
    constexpr bool grape::batch_shuffle_message_manager_impl::ShuffleInplace< FRAG_T, MESSAGE_T >::value
    +
    +staticconstexpr
    +
    +Initial value:
    =
    +
    IsRange<FRAG_T>::value && std::is_pod<MESSAGE_T>::value
    +
    +
    +
    +
    + + + + diff --git a/structgrape_1_1cuda_1_1CTAWorkScheduler-members.html b/structgrape_1_1cuda_1_1CTAWorkScheduler-members.html new file mode 100644 index 00000000..a44ef0e0 --- /dev/null +++ b/structgrape_1_1cuda_1_1CTAWorkScheduler-members.html @@ -0,0 +1,83 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::cuda::CTAWorkScheduler< VID_T, EDATA_T, TMetaData > Member List
    +
    +
    + +

    This is the complete list of members for grape::cuda::CTAWorkScheduler< VID_T, EDATA_T, TMetaData >, including all inherited members.

    + + +
    schedule(np_local< VID_T, EDATA_T, TMetaData > &np_local, TWork work) (defined in grape::cuda::CTAWorkScheduler< VID_T, EDATA_T, TMetaData >)grape::cuda::CTAWorkScheduler< VID_T, EDATA_T, TMetaData >inlinestatic
    + + + + diff --git a/structgrape_1_1cuda_1_1CTAWorkScheduler.html b/structgrape_1_1cuda_1_1CTAWorkScheduler.html new file mode 100644 index 00000000..a0b9282f --- /dev/null +++ b/structgrape_1_1cuda_1_1CTAWorkScheduler.html @@ -0,0 +1,90 @@ + + + + + + + +libgrape-lite: grape::cuda::CTAWorkScheduler< VID_T, EDATA_T, TMetaData > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::cuda::CTAWorkScheduler< VID_T, EDATA_T, TMetaData > Struct Template Reference
    +
    +
    + + + + + +

    +Static Public Member Functions

    +template<typename TWork >
    __device__ static __forceinline__ void schedule (np_local< VID_T, EDATA_T, TMetaData > &np_local, TWork work)
     
    +
    + + + + diff --git a/structgrape_1_1cuda_1_1IEvent-members.html b/structgrape_1_1cuda_1_1IEvent-members.html new file mode 100644 index 00000000..8b8eaac6 --- /dev/null +++ b/structgrape_1_1cuda_1_1IEvent-members.html @@ -0,0 +1,87 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::cuda::IEvent Member List
    +
    +
    + +

    This is the complete list of members for grape::cuda::IEvent, including all inherited members.

    + + + + + + +
    cuda_event() const =0 (defined in grape::cuda::IEvent)grape::cuda::IEventpure virtual
    Query() const =0 (defined in grape::cuda::IEvent)grape::cuda::IEventpure virtual
    Sync() const =0 (defined in grape::cuda::IEvent)grape::cuda::IEventpure virtual
    Wait(cudaStream_t stream) const =0 (defined in grape::cuda::IEvent)grape::cuda::IEventpure virtual
    ~IEvent()=default (defined in grape::cuda::IEvent)grape::cuda::IEventvirtual
    + + + + diff --git a/structgrape_1_1cuda_1_1IEvent.html b/structgrape_1_1cuda_1_1IEvent.html new file mode 100644 index 00000000..f3179019 --- /dev/null +++ b/structgrape_1_1cuda_1_1IEvent.html @@ -0,0 +1,107 @@ + + + + + + + +libgrape-lite: grape::cuda::IEvent Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::cuda::IEvent Struct Referenceabstract
    +
    +
    +
    +Inheritance diagram for grape::cuda::IEvent:
    +
    +
    + + +grape::cuda::EventHolder + +
    + + + + + + + + + + +

    +Public Member Functions

    +virtual void Wait (cudaStream_t stream) const =0
     
    +virtual void Sync () const =0
     
    +virtual bool Query () const =0
     
    +virtual cudaEvent_t cuda_event () const =0
     
    +
    + + + + diff --git a/structgrape_1_1cuda_1_1IEvent.png b/structgrape_1_1cuda_1_1IEvent.png new file mode 100644 index 0000000000000000000000000000000000000000..50fb8bbf719c95c1a9c971bcbf6742164ef6456b GIT binary patch literal 672 zcmeAS@N?(olHy`uVBq!ia0vp^vw=8(gBeI#PWXNjNJ#|vgt-3y{~ySF@#br3|Dg#$ z78oBmaDcV*jy#adQ4-`A%m7pb0#{Fk7%?y~>3h03hEy=VoqN0JwE~Z;`0SZ~{;OZ# zc(B9!&Lk__Gcs3ia*BJ#HMqocDz><~GDHNOV>8fCXP$AL{l=|^X#1(M4(q2g)E{B{ z;PrmP(%-57?ZWn&mcP#8{}d8bWF*$MHezZ)xOCOVtL`l#)?am;L&S#)oHh*7w4$ev>Y>+EMlINBoKJKes8} zeh?JX&ii2gshbSXp5`!ou8Lc(*s@^>!@JAO34yw2zE!N@-fnQaZJW-WQ#oF7oIgKR!*FDGZSjB8P5YaJd%aS?1lYmxCGFg9rGppw} z;cxbyQW?_r%eox1cx~(ssClmcqIP@Rwda5S)#}t_zmvOa_GIOfCn-8bt7lA!IA4}% zyl|Dl&1WgMZTUCLn3)!XLTO@a;_IZjIa|XeJ*u}G_{`pWHz%(x-I0*3^yOz7Q|P?A*1udN zLlf$k-G6@jwUsaHX8UD+n~UYLx!-6MRPR^i+WkcS+RF!Z+3#kYp6xZsZjIjku$0yL vH;&#=$<(!+t#bDCO_j_z>F6HAbu0CMe^BV!&zDpSOim1*u6{1-oD!M<8DB-0 literal 0 HcmV?d00001 diff --git a/structgrape_1_1cuda_1_1IntervalRangeMarker-members.html b/structgrape_1_1cuda_1_1IntervalRangeMarker-members.html new file mode 100644 index 00000000..aac724ff --- /dev/null +++ b/structgrape_1_1cuda_1_1IntervalRangeMarker-members.html @@ -0,0 +1,91 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::cuda::IntervalRangeMarker Member List
    +
    +
    + +

    This is the complete list of members for grape::cuda::IntervalRangeMarker, including all inherited members.

    + + + + + + + + + + +
    IntervalRangeMarker(uint64_t workitems, const char *message="Range", bool autostart=true) (defined in grape::cuda::IntervalRangeMarker)grape::cuda::IntervalRangeMarkerinlineexplicit
    m_ev (defined in grape::cuda::RangeMarker)grape::cuda::RangeMarker
    m_id (defined in grape::cuda::RangeMarker)grape::cuda::RangeMarker
    m_running (defined in grape::cuda::RangeMarker)grape::cuda::RangeMarker
    RangeMarker(bool autostart=true, const char *message="Range", int color=0, int category=0) (defined in grape::cuda::RangeMarker)grape::cuda::RangeMarkerinlineexplicit
    Start() (defined in grape::cuda::RangeMarker)grape::cuda::RangeMarkerinline
    Stop() (defined in grape::cuda::RangeMarker)grape::cuda::RangeMarkerinline
    ~IntervalRangeMarker() (defined in grape::cuda::IntervalRangeMarker)grape::cuda::IntervalRangeMarkerinlinevirtual
    ~RangeMarker() (defined in grape::cuda::RangeMarker)grape::cuda::RangeMarkerinlinevirtual
    + + + + diff --git a/structgrape_1_1cuda_1_1IntervalRangeMarker.html b/structgrape_1_1cuda_1_1IntervalRangeMarker.html new file mode 100644 index 00000000..2f1641d2 --- /dev/null +++ b/structgrape_1_1cuda_1_1IntervalRangeMarker.html @@ -0,0 +1,121 @@ + + + + + + + +libgrape-lite: grape::cuda::IntervalRangeMarker Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::cuda::IntervalRangeMarker Struct Reference
    +
    +
    +
    +Inheritance diagram for grape::cuda::IntervalRangeMarker:
    +
    +
    + + +grape::cuda::RangeMarker + +
    + + + + + + + + + + + +

    +Public Member Functions

    IntervalRangeMarker (uint64_t workitems, const char *message="Range", bool autostart=true)
     
    - Public Member Functions inherited from grape::cuda::RangeMarker
    RangeMarker (bool autostart=true, const char *message="Range", int color=0, int category=0)
     
    +void Start ()
     
    +void Stop ()
     
    + + + + + + + + +

    +Additional Inherited Members

    - Public Attributes inherited from grape::cuda::RangeMarker
    +bool m_running
     
    +nvtxEventAttributes_t m_ev
     
    +nvtxRangeId_t m_id
     
    +
    + + + + diff --git a/structgrape_1_1cuda_1_1IntervalRangeMarker.png b/structgrape_1_1cuda_1_1IntervalRangeMarker.png new file mode 100644 index 0000000000000000000000000000000000000000..cb73c3ef5a24017819547874bdfb1cc5d1a0109e GIT binary patch literal 848 zcmeAS@N?(olHy`uVBq!ia0vp^XMi|>gBeIBMP&T|QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;YMyiI3kYUCfI^Pm5S7CP+R`6}=}i?QdX{g;3FPm0qx z&%S$g>VAgea8;f9rIc3!65ml^%+^w&&`WDG#lbJbhyiiL}1G!Q{bzd}UVRJD+a5 z13PYf4O!pyPT1ggomZZ(=+?wVu7^86Ppv!?#hmP>vU25bgX1~JtZ$v!zTa5gJ;?ve z)wPzZCWon?{Bv)QaoTFTm<1;`Z%^!dUeeO3Jn71nyLr=oo&1)(D>B1$r{z?~*;)1# zZ>s;z`|XynYo^NF7r(4Of8D0yi?E&-iPl zGd(ZKUu>ATM9vfxD7prpZO-!x9^ik${6Mox=*;os%^CApHgB+Le->!4csApgm5j_6 z7PIj<^h+5q*k&DI__BhKK#kvJ6JLKp;RC>6XQ;Z;!1yBYKfmzx>))r(n|^XHBjX%x zV8DOd6yLhjB&zXk{r1G5>G%G;w0%`BFoIgXatx3D_lS|X~fJm#tw}`!4XKoU! z+aIXL|J5aW1LLu`o93;$UCf=`*9*CLa<1V=Cnj6hd3#${Zr)}VcTnd1%D_$R@6YB< z+jRsS6AC+@PH~*+Ev3fA&4U_27Z@z3uPMtWD$laQ9czlf!d=md-fl z#_;aMw3|P-%RD$`o)*AE)8r`t`7d@8vH%f0<1`Xj?2Yn&SaX{tTY3elF{r G5}E+# + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::cuda::Marker Member List
    +
    +
    + +

    This is the complete list of members for grape::cuda::Marker, including all inherited members.

    + + + + + + + +
    CreateEvent(const char *message="Marker", int color=0, int category=0) (defined in grape::cuda::Marker)grape::cuda::Markerinlinestatic
    Mark(const char *message="Marker", int color=0, int category=0) (defined in grape::cuda::Marker)grape::cuda::Markerinlinestatic
    MarkDouble(double value, const char *message="Marker", int color=0, int category=0) (defined in grape::cuda::Marker)grape::cuda::Markerinlinestatic
    MarkInt(int64_t value, const char *message="Marker", int color=0, int category=0) (defined in grape::cuda::Marker)grape::cuda::Markerinlinestatic
    MarkUnsignedInt(uint64_t value, const char *message="Marker", int color=0, int category=0) (defined in grape::cuda::Marker)grape::cuda::Markerinlinestatic
    MarkWorkitems(uint64_t items, const char *message) (defined in grape::cuda::Marker)grape::cuda::Markerinlinestatic
    + + + + diff --git a/structgrape_1_1cuda_1_1Marker.html b/structgrape_1_1cuda_1_1Marker.html new file mode 100644 index 00000000..f131dadd --- /dev/null +++ b/structgrape_1_1cuda_1_1Marker.html @@ -0,0 +1,104 @@ + + + + + + + +libgrape-lite: grape::cuda::Marker Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::cuda::Marker Struct Reference
    +
    +
    + + + + + + + + + + + + + + +

    +Static Public Member Functions

    +static nvtxEventAttributes_t CreateEvent (const char *message="Marker", int color=0, int category=0)
     
    +static void Mark (const char *message="Marker", int color=0, int category=0)
     
    +static void MarkInt (int64_t value, const char *message="Marker", int color=0, int category=0)
     
    +static void MarkUnsignedInt (uint64_t value, const char *message="Marker", int color=0, int category=0)
     
    +static void MarkDouble (double value, const char *message="Marker", int color=0, int category=0)
     
    +static void MarkWorkitems (uint64_t items, const char *message)
     
    +
    + + + + diff --git a/structgrape_1_1cuda_1_1RangeMarker-members.html b/structgrape_1_1cuda_1_1RangeMarker-members.html new file mode 100644 index 00000000..d3768fdb --- /dev/null +++ b/structgrape_1_1cuda_1_1RangeMarker-members.html @@ -0,0 +1,89 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::cuda::RangeMarker Member List
    +
    +
    + +

    This is the complete list of members for grape::cuda::RangeMarker, including all inherited members.

    + + + + + + + + +
    m_ev (defined in grape::cuda::RangeMarker)grape::cuda::RangeMarker
    m_id (defined in grape::cuda::RangeMarker)grape::cuda::RangeMarker
    m_running (defined in grape::cuda::RangeMarker)grape::cuda::RangeMarker
    RangeMarker(bool autostart=true, const char *message="Range", int color=0, int category=0) (defined in grape::cuda::RangeMarker)grape::cuda::RangeMarkerinlineexplicit
    Start() (defined in grape::cuda::RangeMarker)grape::cuda::RangeMarkerinline
    Stop() (defined in grape::cuda::RangeMarker)grape::cuda::RangeMarkerinline
    ~RangeMarker() (defined in grape::cuda::RangeMarker)grape::cuda::RangeMarkerinlinevirtual
    + + + + diff --git a/structgrape_1_1cuda_1_1RangeMarker.html b/structgrape_1_1cuda_1_1RangeMarker.html new file mode 100644 index 00000000..485710e0 --- /dev/null +++ b/structgrape_1_1cuda_1_1RangeMarker.html @@ -0,0 +1,117 @@ + + + + + + + +libgrape-lite: grape::cuda::RangeMarker Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::cuda::RangeMarker Struct Reference
    +
    +
    +
    +Inheritance diagram for grape::cuda::RangeMarker:
    +
    +
    + + +grape::cuda::IntervalRangeMarker + +
    + + + + + + + + +

    +Public Member Functions

    RangeMarker (bool autostart=true, const char *message="Range", int color=0, int category=0)
     
    +void Start ()
     
    +void Stop ()
     
    + + + + + + + +

    +Public Attributes

    +bool m_running
     
    +nvtxEventAttributes_t m_ev
     
    +nvtxRangeId_t m_id
     
    +
    + + + + diff --git a/structgrape_1_1cuda_1_1RangeMarker.png b/structgrape_1_1cuda_1_1RangeMarker.png new file mode 100644 index 0000000000000000000000000000000000000000..4b9de799555672af7b45c9ad1edb803929bfae0f GIT binary patch literal 847 zcmeAS@N?(olHy`uVBq!ia0vp^XMi|>gBeIBMP&T|QW60^A+G=b{|7Q(y!l$%e`o@b z1;z&s9ANFdBM;(Z^=yBk6SQ_}#hDo9_#P4!G`?y2!?A(NTI^P%W6g{&hjUhSf5JS%jPG*BeYCH!zW*IOj6BM`~ z%%Qj^zF)wpVmHU65`JF^PpLp*w@GeS{vXzv^k%!wZ$Zzezhz>s*?azS%Di*)>+-)^ zXI5V1%K0DLR(Wf^8Zg{9rWb!tpYG)xSU73pjk29~`Ev_XOtp)Xv=3L51LNRI_Re`+ zX~iH?AyyzUjq-a}xD>4W_PAwym0r&CK^T0pnxxrn9f^W{Isn^3Cw- z8PN$LMMcXw7x22BeD^22=k%;?x30Rb*J|!NzwX^V + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::cuda::VertexMetadata< VID_T, METADATA_T > Member List
    +
    + + + + + diff --git a/structgrape_1_1cuda_1_1VertexMetadata.html b/structgrape_1_1cuda_1_1VertexMetadata.html new file mode 100644 index 00000000..2a58d7d9 --- /dev/null +++ b/structgrape_1_1cuda_1_1VertexMetadata.html @@ -0,0 +1,102 @@ + + + + + + + +libgrape-lite: grape::cuda::VertexMetadata< VID_T, METADATA_T > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::cuda::VertexMetadata< VID_T, METADATA_T > Struct Template Reference
    +
    +
    + + + + + + +

    +Public Member Functions

    +DEV_INLINE void set_vertex (const Vertex< VID_T > &v)
     
    +DEV_INLINE void set_metadata (const METADATA_T &data)
     
    + + + + + +

    +Public Attributes

    +Vertex< VID_T > vertex
     
    +METADATA_T metadata
     
    +
    + + + + diff --git a/structgrape_1_1cuda_1_1VertexMetadata_3_01VID__T_00_01grape_1_1EmptyType_01_4-members.html b/structgrape_1_1cuda_1_1VertexMetadata_3_01VID__T_00_01grape_1_1EmptyType_01_4-members.html new file mode 100644 index 00000000..0704b422 --- /dev/null +++ b/structgrape_1_1cuda_1_1VertexMetadata_3_01VID__T_00_01grape_1_1EmptyType_01_4-members.html @@ -0,0 +1,90 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::cuda::VertexMetadata< VID_T, grape::EmptyType > Member List
    +
    + + + + + diff --git a/structgrape_1_1cuda_1_1VertexMetadata_3_01VID__T_00_01grape_1_1EmptyType_01_4.html b/structgrape_1_1cuda_1_1VertexMetadata_3_01VID__T_00_01grape_1_1EmptyType_01_4.html new file mode 100644 index 00000000..d3144ca0 --- /dev/null +++ b/structgrape_1_1cuda_1_1VertexMetadata_3_01VID__T_00_01grape_1_1EmptyType_01_4.html @@ -0,0 +1,111 @@ + + + + + + + +libgrape-lite: grape::cuda::VertexMetadata< VID_T, grape::EmptyType > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::cuda::VertexMetadata< VID_T, grape::EmptyType > Struct Template Reference
    +
    +
    + + + + + + + + + + +

    +Public Member Functions

    +DEV_INLINE void set_vertex (const Vertex< VID_T > &v)
     
    +DEV_INLINE void set_metadata (const grape::EmptyType &)
     
    +__device__ VertexMetadata (const VertexMetadata< VID_T, grape::EmptyType > &rhs)
     
    +__device__ VertexMetadata< VID_T, grape::EmptyType > & operator= (const VertexMetadata< VID_T, grape::EmptyType > &rhs)
     
    + + + + + + + +

    +Public Attributes

    +union grape::cuda::VertexMetadata< VID_T, grape::EmptyType >:: { ... }  
     
    +Vertex< VID_T > vertex
     
    +grape::EmptyType metadata
     
    +
    + + + + diff --git a/structgrape_1_1cuda_1_1WorkSourceArray-members.html b/structgrape_1_1cuda_1_1WorkSourceArray-members.html new file mode 100644 index 00000000..e5469724 --- /dev/null +++ b/structgrape_1_1cuda_1_1WorkSourceArray-members.html @@ -0,0 +1,87 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::cuda::WorkSourceArray< T > Member List
    +
    +
    + +

    This is the complete list of members for grape::cuda::WorkSourceArray< T >, including all inherited members.

    + + + + + + +
    data_ (defined in grape::cuda::WorkSourceArray< T >)grape::cuda::WorkSourceArray< T >private
    GetWork(size_t i) const (defined in grape::cuda::WorkSourceArray< T >)grape::cuda::WorkSourceArray< T >inline
    size() const (defined in grape::cuda::WorkSourceArray< T >)grape::cuda::WorkSourceArray< T >inline
    size_ (defined in grape::cuda::WorkSourceArray< T >)grape::cuda::WorkSourceArray< T >private
    WorkSourceArray(T *data, size_t size) (defined in grape::cuda::WorkSourceArray< T >)grape::cuda::WorkSourceArray< T >inline
    + + + + diff --git a/structgrape_1_1cuda_1_1WorkSourceArray.html b/structgrape_1_1cuda_1_1WorkSourceArray.html new file mode 100644 index 00000000..fdac3422 --- /dev/null +++ b/structgrape_1_1cuda_1_1WorkSourceArray.html @@ -0,0 +1,105 @@ + + + + + + + +libgrape-lite: grape::cuda::WorkSourceArray< T > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::cuda::WorkSourceArray< T > Struct Template Reference
    +
    +
    + + + + + + + + +

    +Public Member Functions

    +DEV_HOST WorkSourceArray (T *data, size_t size)
     
    +DEV_HOST_INLINE T GetWork (size_t i) const
     
    +DEV_HOST_INLINE size_t size () const
     
    + + + + + +

    +Private Attributes

    +T * data_
     
    +size_t size_
     
    +
    + + + + diff --git a/structgrape_1_1cuda_1_1WorkSourceRange-members.html b/structgrape_1_1cuda_1_1WorkSourceRange-members.html new file mode 100644 index 00000000..c92cef32 --- /dev/null +++ b/structgrape_1_1cuda_1_1WorkSourceRange-members.html @@ -0,0 +1,87 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::cuda::WorkSourceRange< T > Member List
    +
    +
    + +

    This is the complete list of members for grape::cuda::WorkSourceRange< T >, including all inherited members.

    + + + + + + +
    GetWork(size_t i) const (defined in grape::cuda::WorkSourceRange< T >)grape::cuda::WorkSourceRange< T >inline
    size() const (defined in grape::cuda::WorkSourceRange< T >)grape::cuda::WorkSourceRange< T >inline
    size_ (defined in grape::cuda::WorkSourceRange< T >)grape::cuda::WorkSourceRange< T >private
    start_ (defined in grape::cuda::WorkSourceRange< T >)grape::cuda::WorkSourceRange< T >private
    WorkSourceRange(T start, size_t size) (defined in grape::cuda::WorkSourceRange< T >)grape::cuda::WorkSourceRange< T >inline
    + + + + diff --git a/structgrape_1_1cuda_1_1WorkSourceRange.html b/structgrape_1_1cuda_1_1WorkSourceRange.html new file mode 100644 index 00000000..6ee7de14 --- /dev/null +++ b/structgrape_1_1cuda_1_1WorkSourceRange.html @@ -0,0 +1,105 @@ + + + + + + + +libgrape-lite: grape::cuda::WorkSourceRange< T > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::cuda::WorkSourceRange< T > Struct Template Reference
    +
    +
    + + + + + + + + +

    +Public Member Functions

    +DEV_HOST WorkSourceRange (T start, size_t size)
     
    +DEV_HOST_INLINE T GetWork (size_t i) const
     
    +DEV_HOST_INLINE size_t size () const
     
    + + + + + +

    +Private Attributes

    +T start_
     
    +size_t size_
     
    +
    + + + + diff --git a/structgrape_1_1cuda_1_1empty__np.html b/structgrape_1_1cuda_1_1empty__np.html new file mode 100644 index 00000000..868c8a41 --- /dev/null +++ b/structgrape_1_1cuda_1_1empty__np.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: grape::cuda::empty_np Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::cuda::empty_np Struct Reference
    +
    +
    +
    + + + + diff --git a/structgrape_1_1cuda_1_1np__local-members.html b/structgrape_1_1cuda_1_1np__local-members.html new file mode 100644 index 00000000..1472e2be --- /dev/null +++ b/structgrape_1_1cuda_1_1np__local-members.html @@ -0,0 +1,88 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::cuda::np_local< VID_T, EDATA_T, TMetaData > Member List
    +
    + + + + + diff --git a/structgrape_1_1cuda_1_1np__local.html b/structgrape_1_1cuda_1_1np__local.html new file mode 100644 index 00000000..1c852255 --- /dev/null +++ b/structgrape_1_1cuda_1_1np__local.html @@ -0,0 +1,102 @@ + + + + + + + +libgrape-lite: grape::cuda::np_local< VID_T, EDATA_T, TMetaData > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::cuda::np_local< VID_T, EDATA_T, TMetaData > Struct Template Reference
    +
    +
    + + + + +

    +Public Member Functions

    +__device__ np_local (const ConstAdjList< VID_T, EDATA_T > &adjlist, const TMetaData &metadata)
     
    + + + + + + + +

    +Public Attributes

    +const Nbr< VID_T, EDATA_T > * start {}
     
    +VID_T size {}
     
    +TMetaData meta_data
     
    +
    + + + + diff --git a/structgrape_1_1cuda_1_1tb__np-members.html b/structgrape_1_1cuda_1_1tb__np-members.html new file mode 100644 index 00000000..1335f7a6 --- /dev/null +++ b/structgrape_1_1cuda_1_1tb__np-members.html @@ -0,0 +1,86 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::cuda::tb_np< VID_T, EDATA_T, TMetaData > Member List
    +
    + + + + + diff --git a/structgrape_1_1cuda_1_1tb__np.html b/structgrape_1_1cuda_1_1tb__np.html new file mode 100644 index 00000000..94a0bebe --- /dev/null +++ b/structgrape_1_1cuda_1_1tb__np.html @@ -0,0 +1,98 @@ + + + + + + + +libgrape-lite: grape::cuda::tb_np< VID_T, EDATA_T, TMetaData > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::cuda::tb_np< VID_T, EDATA_T, TMetaData > Struct Template Reference
    +
    +
    + + + + + + + + + + +

    +Public Attributes

    +uint32_t owner
     
    +const Nbr< VID_T, EDATA_T > * start
     
    +VID_T size
     
    +TMetaData meta_data
     
    +
    + + + + diff --git a/structgrape_1_1cuda_1_1warp__np-members.html b/structgrape_1_1cuda_1_1warp__np-members.html new file mode 100644 index 00000000..5015ac65 --- /dev/null +++ b/structgrape_1_1cuda_1_1warp__np-members.html @@ -0,0 +1,86 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::cuda::warp_np< VID_T, EDATA_T, WARPS_PER_TB, TMetaData > Member List
    +
    + + + + + diff --git a/structgrape_1_1cuda_1_1warp__np.html b/structgrape_1_1cuda_1_1warp__np.html new file mode 100644 index 00000000..899e6a7a --- /dev/null +++ b/structgrape_1_1cuda_1_1warp__np.html @@ -0,0 +1,98 @@ + + + + + + + +libgrape-lite: grape::cuda::warp_np< VID_T, EDATA_T, WARPS_PER_TB, TMetaData > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::cuda::warp_np< VID_T, EDATA_T, WARPS_PER_TB, TMetaData > Struct Template Reference
    +
    +
    + + + + + + + + + + +

    +Public Attributes

    +uint32_t owner [WARPS_PER_TB]
     
    +const Nbr< VID_T, EDATA_T > * start [WARPS_PER_TB]
     
    +VID_T size [WARPS_PER_TB]
     
    +TMetaData meta_data [WARPS_PER_TB]
     
    +
    + + + + diff --git a/structgrape_1_1frag__shuffle__header-members.html b/structgrape_1_1frag__shuffle__header-members.html new file mode 100644 index 00000000..24064b82 --- /dev/null +++ b/structgrape_1_1frag__shuffle__header-members.html @@ -0,0 +1,87 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::frag_shuffle_header Member List
    +
    +
    + +

    This is the complete list of members for grape::frag_shuffle_header, including all inherited members.

    + + + + + + +
    fid (defined in grape::frag_shuffle_header)grape::frag_shuffle_header
    frag_shuffle_header()=default (defined in grape::frag_shuffle_header)grape::frag_shuffle_header
    frag_shuffle_header(size_t s, fid_t f) (defined in grape::frag_shuffle_header)grape::frag_shuffle_headerinline
    size (defined in grape::frag_shuffle_header)grape::frag_shuffle_header
    ~frag_shuffle_header()=default (defined in grape::frag_shuffle_header)grape::frag_shuffle_header
    + + + + diff --git a/structgrape_1_1frag__shuffle__header.html b/structgrape_1_1frag__shuffle__header.html new file mode 100644 index 00000000..4a397401 --- /dev/null +++ b/structgrape_1_1frag__shuffle__header.html @@ -0,0 +1,99 @@ + + + + + + + +libgrape-lite: grape::frag_shuffle_header Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::frag_shuffle_header Struct Reference
    +
    +
    + + + + +

    +Public Member Functions

    frag_shuffle_header (size_t s, fid_t f)
     
    + + + + + +

    +Public Attributes

    +size_t size
     
    +fid_t fid
     
    +
    + + + + diff --git a/structgrape_1_1get__buffer__helper-members.html b/structgrape_1_1get__buffer__helper-members.html new file mode 100644 index 00000000..f0bc6cf4 --- /dev/null +++ b/structgrape_1_1get__buffer__helper-members.html @@ -0,0 +1,84 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::get_buffer_helper< index, First, Rest > Member List
    +
    +
    + +

    This is the complete list of members for grape::get_buffer_helper< index, First, Rest >, including all inherited members.

    + + + +
    const_value(const ShuffleBufferTuple< First, Rest... > &bt) (defined in grape::get_buffer_helper< index, First, Rest >)grape::get_buffer_helper< index, First, Rest >inlinestatic
    value(ShuffleBufferTuple< First, Rest... > &bt) (defined in grape::get_buffer_helper< index, First, Rest >)grape::get_buffer_helper< index, First, Rest >inlinestatic
    + + + + diff --git a/structgrape_1_1get__buffer__helper.html b/structgrape_1_1get__buffer__helper.html new file mode 100644 index 00000000..4c14865d --- /dev/null +++ b/structgrape_1_1get__buffer__helper.html @@ -0,0 +1,92 @@ + + + + + + + +libgrape-lite: grape::get_buffer_helper< index, First, Rest > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::get_buffer_helper< index, First, Rest > Struct Template Reference
    +
    +
    + + + + + + +

    +Static Public Member Functions

    +static add_ref< typename ShuffleBufferTuple_element< index, ShuffleBufferTuple< First, Rest... > >::buffer_type >::type value (ShuffleBufferTuple< First, Rest... > &bt)
     
    +static add_const_ref< typename ShuffleBufferTuple_element< index, ShuffleBufferTuple< First, Rest... > >::buffer_type >::type const_value (const ShuffleBufferTuple< First, Rest... > &bt)
     
    +
    + + + + diff --git a/structgrape_1_1get__buffer__helper_3_010_00_01First_00_01Rest_8_8_8_01_4-members.html b/structgrape_1_1get__buffer__helper_3_010_00_01First_00_01Rest_8_8_8_01_4-members.html new file mode 100644 index 00000000..3c1ab822 --- /dev/null +++ b/structgrape_1_1get__buffer__helper_3_010_00_01First_00_01Rest_8_8_8_01_4-members.html @@ -0,0 +1,84 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::get_buffer_helper< 0, First, Rest... > Member List
    +
    +
    + +

    This is the complete list of members for grape::get_buffer_helper< 0, First, Rest... >, including all inherited members.

    + + + +
    const_value(const ShuffleBufferTuple< First, Rest... > &bt) (defined in grape::get_buffer_helper< 0, First, Rest... >)grape::get_buffer_helper< 0, First, Rest... >inlinestatic
    value(ShuffleBufferTuple< First, Rest... > &bt) (defined in grape::get_buffer_helper< 0, First, Rest... >)grape::get_buffer_helper< 0, First, Rest... >inlinestatic
    + + + + diff --git a/structgrape_1_1get__buffer__helper_3_010_00_01First_00_01Rest_8_8_8_01_4.html b/structgrape_1_1get__buffer__helper_3_010_00_01First_00_01Rest_8_8_8_01_4.html new file mode 100644 index 00000000..cb14a081 --- /dev/null +++ b/structgrape_1_1get__buffer__helper_3_010_00_01First_00_01Rest_8_8_8_01_4.html @@ -0,0 +1,92 @@ + + + + + + + +libgrape-lite: grape::get_buffer_helper< 0, First, Rest... > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::get_buffer_helper< 0, First, Rest... > Struct Template Reference
    +
    +
    + + + + + + +

    +Static Public Member Functions

    +static ShuffleBuffer< First >::type & value (ShuffleBufferTuple< First, Rest... > &bt)
     
    +static const ShuffleBuffer< First >::type & const_value (const ShuffleBufferTuple< First, Rest... > &bt)
     
    +
    + + + + diff --git a/structgrape_1_1id__indexer__impl_1_1KeyBuffer-members.html b/structgrape_1_1id__indexer__impl_1_1KeyBuffer-members.html new file mode 100644 index 00000000..21034b04 --- /dev/null +++ b/structgrape_1_1id__indexer__impl_1_1KeyBuffer-members.html @@ -0,0 +1,87 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::id_indexer_impl::KeyBuffer< T > Member List
    +
    +
    + +

    This is the complete list of members for grape::id_indexer_impl::KeyBuffer< T >, including all inherited members.

    + + + + + + +
    deserialize(std::unique_ptr< IOADAPTOR_T > &reader, type &buffer) (defined in grape::id_indexer_impl::KeyBuffer< T >)grape::id_indexer_impl::KeyBuffer< T >inlinestatic
    RecvFrom(type &buffer, int src_worker_id, int tag, MPI_Comm comm) (defined in grape::id_indexer_impl::KeyBuffer< T >)grape::id_indexer_impl::KeyBuffer< T >inlinestatic
    SendTo(const type &buffer, int dst_worker_id, int tag, MPI_Comm comm) (defined in grape::id_indexer_impl::KeyBuffer< T >)grape::id_indexer_impl::KeyBuffer< T >inlinestatic
    serialize(std::unique_ptr< IOADAPTOR_T > &writer, type &buffer) (defined in grape::id_indexer_impl::KeyBuffer< T >)grape::id_indexer_impl::KeyBuffer< T >inlinestatic
    type typedef (defined in grape::id_indexer_impl::KeyBuffer< T >)grape::id_indexer_impl::KeyBuffer< T >
    + + + + diff --git a/structgrape_1_1id__indexer__impl_1_1KeyBuffer.html b/structgrape_1_1id__indexer__impl_1_1KeyBuffer.html new file mode 100644 index 00000000..9ab73908 --- /dev/null +++ b/structgrape_1_1id__indexer__impl_1_1KeyBuffer.html @@ -0,0 +1,107 @@ + + + + + + + +libgrape-lite: grape::id_indexer_impl::KeyBuffer< T > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::id_indexer_impl::KeyBuffer< T > Struct Template Reference
    +
    +
    + + + + +

    +Public Types

    +using type = std::vector< T, Allocator< T > >
     
    + + + + + + + + + + + +

    +Static Public Member Functions

    +template<typename IOADAPTOR_T >
    static void serialize (std::unique_ptr< IOADAPTOR_T > &writer, type &buffer)
     
    +template<typename IOADAPTOR_T >
    static void deserialize (std::unique_ptr< IOADAPTOR_T > &reader, type &buffer)
     
    +static void SendTo (const type &buffer, int dst_worker_id, int tag, MPI_Comm comm)
     
    +static void RecvFrom (type &buffer, int src_worker_id, int tag, MPI_Comm comm)
     
    +
    + + + + diff --git a/structgrape_1_1id__indexer__impl_1_1KeyBuffer_3_01nonstd_1_1string__view_01_4-members.html b/structgrape_1_1id__indexer__impl_1_1KeyBuffer_3_01nonstd_1_1string__view_01_4-members.html new file mode 100644 index 00000000..aa545234 --- /dev/null +++ b/structgrape_1_1id__indexer__impl_1_1KeyBuffer_3_01nonstd_1_1string__view_01_4-members.html @@ -0,0 +1,87 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::id_indexer_impl::KeyBuffer< nonstd::string_view > Member List
    +
    +
    + +

    This is the complete list of members for grape::id_indexer_impl::KeyBuffer< nonstd::string_view >, including all inherited members.

    + + + + + + +
    deserialize(std::unique_ptr< IOADAPTOR_T > &reader, type &buffer) (defined in grape::id_indexer_impl::KeyBuffer< nonstd::string_view >)grape::id_indexer_impl::KeyBuffer< nonstd::string_view >inlinestatic
    RecvFrom(type &buffer, int src_worker_id, int tag, MPI_Comm comm) (defined in grape::id_indexer_impl::KeyBuffer< nonstd::string_view >)grape::id_indexer_impl::KeyBuffer< nonstd::string_view >inlinestatic
    SendTo(const type &buffer, int dst_worker_id, int tag, MPI_Comm comm) (defined in grape::id_indexer_impl::KeyBuffer< nonstd::string_view >)grape::id_indexer_impl::KeyBuffer< nonstd::string_view >inlinestatic
    serialize(std::unique_ptr< IOADAPTOR_T > &writer, type &buffer) (defined in grape::id_indexer_impl::KeyBuffer< nonstd::string_view >)grape::id_indexer_impl::KeyBuffer< nonstd::string_view >inlinestatic
    type typedef (defined in grape::id_indexer_impl::KeyBuffer< nonstd::string_view >)grape::id_indexer_impl::KeyBuffer< nonstd::string_view >
    + + + + diff --git a/structgrape_1_1id__indexer__impl_1_1KeyBuffer_3_01nonstd_1_1string__view_01_4.html b/structgrape_1_1id__indexer__impl_1_1KeyBuffer_3_01nonstd_1_1string__view_01_4.html new file mode 100644 index 00000000..28bfffe5 --- /dev/null +++ b/structgrape_1_1id__indexer__impl_1_1KeyBuffer_3_01nonstd_1_1string__view_01_4.html @@ -0,0 +1,107 @@ + + + + + + + +libgrape-lite: grape::id_indexer_impl::KeyBuffer< nonstd::string_view > Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::id_indexer_impl::KeyBuffer< nonstd::string_view > Struct Reference
    +
    +
    + + + + +

    +Public Types

    +using type = StringViewVector
     
    + + + + + + + + + + + +

    +Static Public Member Functions

    +template<typename IOADAPTOR_T >
    static void serialize (std::unique_ptr< IOADAPTOR_T > &writer, type &buffer)
     
    +template<typename IOADAPTOR_T >
    static void deserialize (std::unique_ptr< IOADAPTOR_T > &reader, type &buffer)
     
    +static void SendTo (const type &buffer, int dst_worker_id, int tag, MPI_Comm comm)
     
    +static void RecvFrom (type &buffer, int src_worker_id, int tag, MPI_Comm comm)
     
    +
    + + + + diff --git a/structgrape_1_1integer__sequence-members.html b/structgrape_1_1integer__sequence-members.html new file mode 100644 index 00000000..8ae07942 --- /dev/null +++ b/structgrape_1_1integer__sequence-members.html @@ -0,0 +1,84 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::integer_sequence< T, Ints > Member List
    +
    +
    + +

    This is the complete list of members for grape::integer_sequence< T, Ints >, including all inherited members.

    + + + +
    size() (defined in grape::integer_sequence< T, Ints >)grape::integer_sequence< T, Ints >inlinestatic
    value_type typedef (defined in grape::integer_sequence< T, Ints >)grape::integer_sequence< T, Ints >
    + + + + diff --git a/structgrape_1_1integer__sequence.html b/structgrape_1_1integer__sequence.html new file mode 100644 index 00000000..2848aeb0 --- /dev/null +++ b/structgrape_1_1integer__sequence.html @@ -0,0 +1,96 @@ + + + + + + + +libgrape-lite: grape::integer_sequence< T, Ints > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::integer_sequence< T, Ints > Struct Template Reference
    +
    +
    + + + + +

    +Public Types

    +typedef T value_type
     
    + + + +

    +Static Public Member Functions

    +static constexpr std::size_t size ()
     
    +
    + + + + diff --git a/structgrape_1_1internal_1_1Vertex-members.html b/structgrape_1_1internal_1_1Vertex-members.html new file mode 100644 index 00000000..9cfb5b7b --- /dev/null +++ b/structgrape_1_1internal_1_1Vertex-members.html @@ -0,0 +1,92 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::internal::Vertex< VID_T, VDATA_T > Member List
    +
    + + + + + diff --git a/structgrape_1_1internal_1_1Vertex.html b/structgrape_1_1internal_1_1Vertex.html new file mode 100644 index 00000000..a9521c57 --- /dev/null +++ b/structgrape_1_1internal_1_1Vertex.html @@ -0,0 +1,131 @@ + + + + + + + +libgrape-lite: grape::internal::Vertex< VID_T, VDATA_T > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::internal::Vertex< VID_T, VDATA_T > Struct Template Reference
    +
    +
    + +

    Vertex representation. + More...

    + +

    #include <vertex.h>

    + + + + + + + + + + + + + + +

    +Public Member Functions

    +DEV_HOST Vertex (const VID_T &vid)
     
    +DEV_HOST Vertex (const VID_T &vid, const VDATA_T &vdata)
     
    +DEV_HOST Vertex (const VID_T &vid, VDATA_T &&vdata)
     
    +DEV_HOST Vertex (const Vertex &vert)
     
    +DEV_HOST Vertex (Vertex &&vert) noexcept
     
    +DEV_HOST Vertexoperator= (const Vertex &rhs)
     
    + + + + + +

    +Public Attributes

    +VID_T vid
     
    +VDATA_T vdata
     
    +

    Detailed Description

    +

    template<typename VID_T, typename VDATA_T>
    +struct grape::internal::Vertex< VID_T, VDATA_T >

    + +

    Vertex representation.

    +
    Template Parameters
    + + + +
    VID_T
    VDATA_T
    +
    +
    +
    + + + + diff --git a/structgrape_1_1internal_1_1Vertex_3_01VID__T_00_01EmptyType_01_4-members.html b/structgrape_1_1internal_1_1Vertex_3_01VID__T_00_01EmptyType_01_4-members.html new file mode 100644 index 00000000..73b4fbaf --- /dev/null +++ b/structgrape_1_1internal_1_1Vertex_3_01VID__T_00_01EmptyType_01_4-members.html @@ -0,0 +1,90 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::internal::Vertex< VID_T, EmptyType > Member List
    +
    + + + + + diff --git a/structgrape_1_1internal_1_1Vertex_3_01VID__T_00_01EmptyType_01_4.html b/structgrape_1_1internal_1_1Vertex_3_01VID__T_00_01EmptyType_01_4.html new file mode 100644 index 00000000..ab79e27f --- /dev/null +++ b/structgrape_1_1internal_1_1Vertex_3_01VID__T_00_01EmptyType_01_4.html @@ -0,0 +1,121 @@ + + + + + + + +libgrape-lite: grape::internal::Vertex< VID_T, EmptyType > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::internal::Vertex< VID_T, EmptyType > Struct Template Reference
    +
    +
    + +

    Partial specialization for Vertex with EmptyType on vertex_data. + More...

    + +

    #include <vertex.h>

    + + + + + + + + + + +

    +Public Member Functions

    +DEV_HOST Vertex (const VID_T &vid)
     
    +DEV_HOST Vertex (const VID_T &vid, const EmptyType &)
     
    +DEV_HOST Vertex (const Vertex &vert)
     
    +DEV_HOST Vertexoperator= (const Vertex &rhs)
     
    + + + + + + + +

    +Public Attributes

    +union grape::internal::Vertex< VID_T, EmptyType >:: { ... }  
     
    +VID_T vid
     
    +EmptyType vdata
     
    +

    Detailed Description

    +

    template<typename VID_T>
    +struct grape::internal::Vertex< VID_T, EmptyType >

    + +

    Partial specialization for Vertex with EmptyType on vertex_data.

    +
    + + + + diff --git a/structgrape_1_1make__integer__sequence.html b/structgrape_1_1make__integer__sequence.html new file mode 100644 index 00000000..8fcf3357 --- /dev/null +++ b/structgrape_1_1make__integer__sequence.html @@ -0,0 +1,79 @@ + + + + + + + +libgrape-lite: grape::make_integer_sequence< T, N, Is > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::make_integer_sequence< T, N, Is > Struct Template Reference
    +
    +
    +
    + + + + diff --git a/structgrape_1_1make__integer__sequence_3_01T_00_010_00_01Is_8_8_8_01_4-members.html b/structgrape_1_1make__integer__sequence_3_01T_00_010_00_01Is_8_8_8_01_4-members.html new file mode 100644 index 00000000..6fbd9e21 --- /dev/null +++ b/structgrape_1_1make__integer__sequence_3_01T_00_010_00_01Is_8_8_8_01_4-members.html @@ -0,0 +1,84 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::make_integer_sequence< T, 0, Is... > Member List
    +
    +
    + +

    This is the complete list of members for grape::make_integer_sequence< T, 0, Is... >, including all inherited members.

    + + + +
    size() (defined in grape::integer_sequence< T, Is... >)grape::integer_sequence< T, Is... >inlinestatic
    value_type typedef (defined in grape::integer_sequence< T, Is... >)grape::integer_sequence< T, Is... >
    + + + + diff --git a/structgrape_1_1make__integer__sequence_3_01T_00_010_00_01Is_8_8_8_01_4.html b/structgrape_1_1make__integer__sequence_3_01T_00_010_00_01Is_8_8_8_01_4.html new file mode 100644 index 00000000..53cf1da6 --- /dev/null +++ b/structgrape_1_1make__integer__sequence_3_01T_00_010_00_01Is_8_8_8_01_4.html @@ -0,0 +1,102 @@ + + + + + + + +libgrape-lite: grape::make_integer_sequence< T, 0, Is... > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::make_integer_sequence< T, 0, Is... > Struct Template Reference
    +
    +
    +
    +Inheritance diagram for grape::make_integer_sequence< T, 0, Is... >:
    +
    +
    + + +grape::integer_sequence< T, Is... > + +
    + + + + + + + + +

    +Additional Inherited Members

    - Public Types inherited from grape::integer_sequence< T, Is... >
    +typedef T value_type
     
    - Static Public Member Functions inherited from grape::integer_sequence< T, Is... >
    +static constexpr std::size_t size ()
     
    +
    + + + + diff --git a/structgrape_1_1make__integer__sequence_3_01T_00_010_00_01Is_8_8_8_01_4.png b/structgrape_1_1make__integer__sequence_3_01T_00_010_00_01Is_8_8_8_01_4.png new file mode 100644 index 0000000000000000000000000000000000000000..723a01d15c9a7be306741ac0edbfa319a9c38dfa GIT binary patch literal 956 zcmeAS@N?(olHy`uVBq!ia0y~yVB`R@12~w0c`uBhG z_S+JyN4LDZ?f2G*H@GwK!r`Og+j4I^ZSVDUQ895~;SdZIQebN7(5RH}cw*DpQR8v> z-}9g1f;-pDKhd$iLE=vhKj7-SYL*S}rs*U`SOze|>F6~FFkxqa)!+{@>?Rc*2ruDJbq z`}OeMg;v~eLw@bvy-cSt;Fp4ni(9Niq3Dr&3$m_+94lk|_H1VG6s?TQZ=UeE$h|pN zywpT)(GHG7yw_Ef-+b9Dz$a;_vsTQ{IO&$r{b_=x^YR$yPiuQA80Y$0?&8uz`mY67 zO?-RT`hSSNeAJUa*ItyTFPnMt8=vJ)(~@1L=C!I_9dllBbzFQVD&Ac@f8URJ`wd-} zoNSf**z&nB^IcWkI=kw5=7kYDz4vZ!D*t{)NvV0?YX>Ez^DmMzJ39W{mI8+trvRgq z%al6~Ik&g9<}uXA)-yOUyFC3MtisgtR6vD^<${U<3x|Ve1BXDvBnCkR231BS2L>-D zmj;F@EFBDt8bJL_0l=VVS)c-p1x$rU@|h+Ec`ekO2r?I@sZz9M`>x(v)=w9|o;|VH zmPz6-OGkG!Lq*`)`M+mBWcuJC-BC38*?;Rxx0C;^V0=ISc1ESK;fdt$jW$tsvd=&< z_EyE;+V4@`V(#xs9O;4!mb}x*-?_%ZZ-@Q1&+n3dPkfbecPryXu`O5M`o2Fsa~Y@g zZH;wndW!|zzcA?5wtRgxOQG-ey%&t<86VCGxV`D;Wwva;U*2Eso}YZ*%pkFK)dy_!Ny^tP?0++r=UtD=(Uzg$1X?dPMW0_Tg35?;w24)bkpP20V| zuejJ@Z)xP-YdW<;d2UxCb{@54HuRY}6%?PW;P@1;ZpjL&PCvK*VV%L!#7#HOcKlp> z@%=F$Jji;A+hWJId3HJM}4qj2oK_jmmRi}Y?)-^$(pVba2d?t3;YzH?kH_T)>I z%{R|CRdhCM_FmUvob#ebpy6t{y3&DU)1{0b_Gckt$y`8lsmQE<48fe{S(ATwhcWmdKI;Vst04)Kq)Bpeg literal 0 HcmV?d00001 diff --git a/structgrape_1_1mutable__csr__impl_1_1AdjList-members.html b/structgrape_1_1mutable__csr__impl_1_1AdjList-members.html new file mode 100644 index 00000000..2ca8995f --- /dev/null +++ b/structgrape_1_1mutable__csr__impl_1_1AdjList-members.html @@ -0,0 +1,87 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::mutable_csr_impl::AdjList< NBR_T > Member List
    +
    + + + + + diff --git a/structgrape_1_1mutable__csr__impl_1_1AdjList.html b/structgrape_1_1mutable__csr__impl_1_1AdjList.html new file mode 100644 index 00000000..19472c85 --- /dev/null +++ b/structgrape_1_1mutable__csr__impl_1_1AdjList.html @@ -0,0 +1,102 @@ + + + + + + + +libgrape-lite: grape::mutable_csr_impl::AdjList< NBR_T > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::mutable_csr_impl::AdjList< NBR_T > Struct Template Reference
    +
    +
    + + + + + + +

    +Public Member Functions

    +int degree () const
     
    +bool empty () const
     
    + + + + + +

    +Public Attributes

    +NBR_T * begin
     
    +NBR_T * end
     
    +
    + + + + diff --git a/structgrape_1_1sync__comm_1_1CommImpl-members.html b/structgrape_1_1sync__comm_1_1CommImpl-members.html new file mode 100644 index 00000000..1b9b48a8 --- /dev/null +++ b/structgrape_1_1sync__comm_1_1CommImpl-members.html @@ -0,0 +1,86 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::sync_comm::CommImpl< T, Enable > Member List
    +
    +
    + +

    This is the complete list of members for grape::sync_comm::CommImpl< T, Enable >, including all inherited members.

    + + + + + +
    bcast(T &value, int root, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< T, Enable >)grape::sync_comm::CommImpl< T, Enable >inlinestatic
    multiple_send(const T &value, const ITER_T &worker_id_begin, const ITER_T &worker_id_end, int tag, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< T, Enable >)grape::sync_comm::CommImpl< T, Enable >inlinestatic
    recv(T &value, int src_worker_id, int tag, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< T, Enable >)grape::sync_comm::CommImpl< T, Enable >inlinestatic
    send(const T &value, int dst_worker_id, int tag, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< T, Enable >)grape::sync_comm::CommImpl< T, Enable >inlinestatic
    + + + + diff --git a/structgrape_1_1sync__comm_1_1CommImpl.html b/structgrape_1_1sync__comm_1_1CommImpl.html new file mode 100644 index 00000000..bc4be3c9 --- /dev/null +++ b/structgrape_1_1sync__comm_1_1CommImpl.html @@ -0,0 +1,99 @@ + + + + + + + +libgrape-lite: grape::sync_comm::CommImpl< T, Enable > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::sync_comm::CommImpl< T, Enable > Struct Template Reference
    +
    +
    + + + + + + + + + + + +

    +Static Public Member Functions

    +static void send (const T &value, int dst_worker_id, int tag, MPI_Comm comm)
     
    +template<typename ITER_T >
    static void multiple_send (const T &value, const ITER_T &worker_id_begin, const ITER_T &worker_id_end, int tag, MPI_Comm comm)
     
    +static void recv (T &value, int src_worker_id, int tag, MPI_Comm comm)
     
    +static void bcast (T &value, int root, MPI_Comm comm)
     
    +
    + + + + diff --git a/structgrape_1_1sync__comm_1_1CommImpl_3_01IdIndexer_3_01OID__T_00_01VID__T_01_4_01_4-members.html b/structgrape_1_1sync__comm_1_1CommImpl_3_01IdIndexer_3_01OID__T_00_01VID__T_01_4_01_4-members.html new file mode 100644 index 00000000..d0dbc982 --- /dev/null +++ b/structgrape_1_1sync__comm_1_1CommImpl_3_01IdIndexer_3_01OID__T_00_01VID__T_01_4_01_4-members.html @@ -0,0 +1,84 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::sync_comm::CommImpl< IdIndexer< OID_T, VID_T > > Member List
    +
    +
    + +

    This is the complete list of members for grape::sync_comm::CommImpl< IdIndexer< OID_T, VID_T > >, including all inherited members.

    + + + +
    recv(IdIndexer< OID_T, VID_T > &indexer, int src_worker_id, int tag, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< IdIndexer< OID_T, VID_T > >)grape::sync_comm::CommImpl< IdIndexer< OID_T, VID_T > >inlinestatic
    send(const IdIndexer< OID_T, VID_T > &indexer, int dst_worker_id, int tag, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< IdIndexer< OID_T, VID_T > >)grape::sync_comm::CommImpl< IdIndexer< OID_T, VID_T > >inlinestatic
    + + + + diff --git a/structgrape_1_1sync__comm_1_1CommImpl_3_01IdIndexer_3_01OID__T_00_01VID__T_01_4_01_4.html b/structgrape_1_1sync__comm_1_1CommImpl_3_01IdIndexer_3_01OID__T_00_01VID__T_01_4_01_4.html new file mode 100644 index 00000000..e82c3a18 --- /dev/null +++ b/structgrape_1_1sync__comm_1_1CommImpl_3_01IdIndexer_3_01OID__T_00_01VID__T_01_4_01_4.html @@ -0,0 +1,92 @@ + + + + + + + +libgrape-lite: grape::sync_comm::CommImpl< IdIndexer< OID_T, VID_T > > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::sync_comm::CommImpl< IdIndexer< OID_T, VID_T > > Struct Template Reference
    +
    +
    + + + + + + +

    +Static Public Member Functions

    +static void send (const IdIndexer< OID_T, VID_T > &indexer, int dst_worker_id, int tag, MPI_Comm comm)
     
    +static void recv (IdIndexer< OID_T, VID_T > &indexer, int src_worker_id, int tag, MPI_Comm comm)
     
    +
    + + + + diff --git a/structgrape_1_1sync__comm_1_1CommImpl_3_01InArchive_00_01void_01_4-members.html b/structgrape_1_1sync__comm_1_1CommImpl_3_01InArchive_00_01void_01_4-members.html new file mode 100644 index 00000000..e9b6cc98 --- /dev/null +++ b/structgrape_1_1sync__comm_1_1CommImpl_3_01InArchive_00_01void_01_4-members.html @@ -0,0 +1,86 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::sync_comm::CommImpl< InArchive, void > Member List
    +
    +
    + +

    This is the complete list of members for grape::sync_comm::CommImpl< InArchive, void >, including all inherited members.

    + + + + + +
    bcast(InArchive &arc, int root, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< InArchive, void >)grape::sync_comm::CommImpl< InArchive, void >inlinestatic
    multiple_send(const InArchive &arc, const ITER_T &worker_id_begin, const ITER_T &worker_id_end, int tag, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< InArchive, void >)grape::sync_comm::CommImpl< InArchive, void >inlinestatic
    recv(InArchive &arc, int src_worker_id, int tag, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< InArchive, void >)grape::sync_comm::CommImpl< InArchive, void >inlinestatic
    send(const InArchive &arc, int dst_worker_id, int tag, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< InArchive, void >)grape::sync_comm::CommImpl< InArchive, void >inlinestatic
    + + + + diff --git a/structgrape_1_1sync__comm_1_1CommImpl_3_01InArchive_00_01void_01_4.html b/structgrape_1_1sync__comm_1_1CommImpl_3_01InArchive_00_01void_01_4.html new file mode 100644 index 00000000..5038ff60 --- /dev/null +++ b/structgrape_1_1sync__comm_1_1CommImpl_3_01InArchive_00_01void_01_4.html @@ -0,0 +1,99 @@ + + + + + + + +libgrape-lite: grape::sync_comm::CommImpl< InArchive, void > Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::sync_comm::CommImpl< InArchive, void > Struct Reference
    +
    +
    + + + + + + + + + + + +

    +Static Public Member Functions

    +static void send (const InArchive &arc, int dst_worker_id, int tag, MPI_Comm comm)
     
    +static void recv (InArchive &arc, int src_worker_id, int tag, MPI_Comm comm)
     
    +template<typename ITER_T >
    static void multiple_send (const InArchive &arc, const ITER_T &worker_id_begin, const ITER_T &worker_id_end, int tag, MPI_Comm comm)
     
    +static void bcast (InArchive &arc, int root, MPI_Comm comm)
     
    +
    + + + + diff --git a/structgrape_1_1sync__comm_1_1CommImpl_3_01OutArchive_00_01void_01_4-members.html b/structgrape_1_1sync__comm_1_1CommImpl_3_01OutArchive_00_01void_01_4-members.html new file mode 100644 index 00000000..8b73b68b --- /dev/null +++ b/structgrape_1_1sync__comm_1_1CommImpl_3_01OutArchive_00_01void_01_4-members.html @@ -0,0 +1,86 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::sync_comm::CommImpl< OutArchive, void > Member List
    +
    +
    + +

    This is the complete list of members for grape::sync_comm::CommImpl< OutArchive, void >, including all inherited members.

    + + + + + +
    bcast(OutArchive &arc, int root, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< OutArchive, void >)grape::sync_comm::CommImpl< OutArchive, void >inlinestatic
    multiple_send(const OutArchive &arc, const ITER_T &worker_id_begin, const ITER_T &worker_id_end, int tag, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< OutArchive, void >)grape::sync_comm::CommImpl< OutArchive, void >inlinestatic
    recv(OutArchive &arc, int src_worker_id, int tag, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< OutArchive, void >)grape::sync_comm::CommImpl< OutArchive, void >inlinestatic
    send(const OutArchive &arc, int dst_worker_id, int tag, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< OutArchive, void >)grape::sync_comm::CommImpl< OutArchive, void >inlinestatic
    + + + + diff --git a/structgrape_1_1sync__comm_1_1CommImpl_3_01OutArchive_00_01void_01_4.html b/structgrape_1_1sync__comm_1_1CommImpl_3_01OutArchive_00_01void_01_4.html new file mode 100644 index 00000000..a0dbd586 --- /dev/null +++ b/structgrape_1_1sync__comm_1_1CommImpl_3_01OutArchive_00_01void_01_4.html @@ -0,0 +1,99 @@ + + + + + + + +libgrape-lite: grape::sync_comm::CommImpl< OutArchive, void > Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::sync_comm::CommImpl< OutArchive, void > Struct Reference
    +
    +
    + + + + + + + + + + + +

    +Static Public Member Functions

    +static void send (const OutArchive &arc, int dst_worker_id, int tag, MPI_Comm comm)
     
    +static void recv (OutArchive &arc, int src_worker_id, int tag, MPI_Comm comm)
     
    +template<typename ITER_T >
    static void multiple_send (const OutArchive &arc, const ITER_T &worker_id_begin, const ITER_T &worker_id_end, int tag, MPI_Comm comm)
     
    +static void bcast (OutArchive &arc, int root, MPI_Comm comm)
     
    +
    + + + + diff --git a/structgrape_1_1sync__comm_1_1CommImpl_3_01StringViewVector_00_01void_01_4-members.html b/structgrape_1_1sync__comm_1_1CommImpl_3_01StringViewVector_00_01void_01_4-members.html new file mode 100644 index 00000000..07cda9a5 --- /dev/null +++ b/structgrape_1_1sync__comm_1_1CommImpl_3_01StringViewVector_00_01void_01_4-members.html @@ -0,0 +1,86 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::sync_comm::CommImpl< StringViewVector, void > Member List
    +
    +
    + +

    This is the complete list of members for grape::sync_comm::CommImpl< StringViewVector, void >, including all inherited members.

    + + + + + +
    bcast(StringViewVector &vec, int root, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< StringViewVector, void >)grape::sync_comm::CommImpl< StringViewVector, void >inlinestatic
    multiple_send(const StringViewVector &vec, const ITER_T &worker_id_begin, const ITER_T &worker_id_end, int tag, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< StringViewVector, void >)grape::sync_comm::CommImpl< StringViewVector, void >inlinestatic
    recv(StringViewVector &vec, int src_worker_id, int tag, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< StringViewVector, void >)grape::sync_comm::CommImpl< StringViewVector, void >inlinestatic
    send(const StringViewVector &vec, int dst_worker_id, int tag, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< StringViewVector, void >)grape::sync_comm::CommImpl< StringViewVector, void >inlinestatic
    + + + + diff --git a/structgrape_1_1sync__comm_1_1CommImpl_3_01StringViewVector_00_01void_01_4.html b/structgrape_1_1sync__comm_1_1CommImpl_3_01StringViewVector_00_01void_01_4.html new file mode 100644 index 00000000..ee6c74e2 --- /dev/null +++ b/structgrape_1_1sync__comm_1_1CommImpl_3_01StringViewVector_00_01void_01_4.html @@ -0,0 +1,99 @@ + + + + + + + +libgrape-lite: grape::sync_comm::CommImpl< StringViewVector, void > Struct Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::sync_comm::CommImpl< StringViewVector, void > Struct Reference
    +
    +
    + + + + + + + + + + + +

    +Static Public Member Functions

    +static void send (const StringViewVector &vec, int dst_worker_id, int tag, MPI_Comm comm)
     
    +static void recv (StringViewVector &vec, int src_worker_id, int tag, MPI_Comm comm)
     
    +template<typename ITER_T >
    static void multiple_send (const StringViewVector &vec, const ITER_T &worker_id_begin, const ITER_T &worker_id_end, int tag, MPI_Comm comm)
     
    +static void bcast (StringViewVector &vec, int root, MPI_Comm comm)
     
    +
    + + + + diff --git a/structgrape_1_1sync__comm_1_1CommImpl_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__pode5fa600bd20ba7ca5d785a935cc31699.html b/structgrape_1_1sync__comm_1_1CommImpl_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__pode5fa600bd20ba7ca5d785a935cc31699.html new file mode 100644 index 00000000..a1818932 --- /dev/null +++ b/structgrape_1_1sync__comm_1_1CommImpl_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__pode5fa600bd20ba7ca5d785a935cc31699.html @@ -0,0 +1,99 @@ + + + + + + + +libgrape-lite: grape::sync_comm::CommImpl< T, typename std::enable_if< std::is_pod< T >::value >::type > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::sync_comm::CommImpl< T, typename std::enable_if< std::is_pod< T >::value >::type > Struct Template Reference
    +
    +
    + + + + + + + + + + + +

    +Static Public Member Functions

    +static void send (const T &value, int dst_worker_id, int tag, MPI_Comm comm)
     
    +static void recv (T &value, int src_worker_id, int tag, MPI_Comm comm)
     
    +template<typename ITER_T >
    static void multiple_send (const T &value, const ITER_T &worker_id_begin, const ITER_T &worker_id_end, int tag, MPI_Comm comm)
     
    +static void bcast (T &value, int root, MPI_Comm comm)
     
    +
    + + + + diff --git a/structgrape_1_1sync__comm_1_1CommImpl_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__pode6dff351d91a6e3b33b0af04b848cf91.html b/structgrape_1_1sync__comm_1_1CommImpl_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__pode6dff351d91a6e3b33b0af04b848cf91.html new file mode 100644 index 00000000..b13caf65 --- /dev/null +++ b/structgrape_1_1sync__comm_1_1CommImpl_3_01T_00_01typename_01std_1_1enable__if_3_01std_1_1is__pode6dff351d91a6e3b33b0af04b848cf91.html @@ -0,0 +1,86 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::sync_comm::CommImpl< T, typename std::enable_if< std::is_pod< T >::value >::type > Member List
    +
    + + + + + diff --git a/structgrape_1_1sync__comm_1_1CommImpl_3_01std_1_1vector_3_01T_01_4_00_01typename_01std_1_1enable2a9ea80b9ef55b079f3ffd5acf231cc0.html b/structgrape_1_1sync__comm_1_1CommImpl_3_01std_1_1vector_3_01T_01_4_00_01typename_01std_1_1enable2a9ea80b9ef55b079f3ffd5acf231cc0.html new file mode 100644 index 00000000..b9e5042a --- /dev/null +++ b/structgrape_1_1sync__comm_1_1CommImpl_3_01std_1_1vector_3_01T_01_4_00_01typename_01std_1_1enable2a9ea80b9ef55b079f3ffd5acf231cc0.html @@ -0,0 +1,88 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if<!std::is_pod< T >::value >::type > Member List
    +
    +
    + +

    This is the complete list of members for grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if<!std::is_pod< T >::value >::type >, including all inherited members.

    + + + + + + + +
    bcast(std::vector< T > &vec, int root, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if<!std::is_pod< T >::value >::type >)grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if<!std::is_pod< T >::value >::type >inlinestatic
    multiple_send(const std::vector< T > &vec, const ITER_T &worker_id_begin, const ITER_T &worker_id_end, int tag, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if<!std::is_pod< T >::value >::type >)grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if<!std::is_pod< T >::value >::type >inlinestatic
    recv(std::vector< T > &vec, int src_worker_id, int tag, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if<!std::is_pod< T >::value >::type >)grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if<!std::is_pod< T >::value >::type >inlinestatic
    recv_at(std::vector< T > &vec, size_t offset, int src_worker_id, int tag, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if<!std::is_pod< T >::value >::type >)grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if<!std::is_pod< T >::value >::type >inlinestatic
    send(const std::vector< T > &vec, int dst_worker_id, int tag, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if<!std::is_pod< T >::value >::type >)grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if<!std::is_pod< T >::value >::type >inlinestatic
    send_partial(const std::vector< T > &vec, size_t from, size_t to, int dst_worker_id, int tag, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if<!std::is_pod< T >::value >::type >)grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if<!std::is_pod< T >::value >::type >inlinestatic
    + + + + diff --git a/structgrape_1_1sync__comm_1_1CommImpl_3_01std_1_1vector_3_01T_01_4_00_01typename_01std_1_1enable5716673ed5b278549fa76606b2611c4b.html b/structgrape_1_1sync__comm_1_1CommImpl_3_01std_1_1vector_3_01T_01_4_00_01typename_01std_1_1enable5716673ed5b278549fa76606b2611c4b.html new file mode 100644 index 00000000..7ee157ed --- /dev/null +++ b/structgrape_1_1sync__comm_1_1CommImpl_3_01std_1_1vector_3_01T_01_4_00_01typename_01std_1_1enable5716673ed5b278549fa76606b2611c4b.html @@ -0,0 +1,88 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if< std::is_pod< T >::value >::type > Member List
    +
    +
    + +

    This is the complete list of members for grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if< std::is_pod< T >::value >::type >, including all inherited members.

    + + + + + + + +
    bcast(std::vector< T > &vec, int root, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if< std::is_pod< T >::value >::type >)grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if< std::is_pod< T >::value >::type >inlinestatic
    multiple_send(const std::vector< T > &vec, const ITER_T &worker_id_begin, const ITER_T &worker_id_end, int tag, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if< std::is_pod< T >::value >::type >)grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if< std::is_pod< T >::value >::type >inlinestatic
    recv(std::vector< T > &vec, int src_worker_id, int tag, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if< std::is_pod< T >::value >::type >)grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if< std::is_pod< T >::value >::type >inlinestatic
    recv_at(std::vector< T > &vec, size_t offset, int src_worker_id, int tag, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if< std::is_pod< T >::value >::type >)grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if< std::is_pod< T >::value >::type >inlinestatic
    send(const std::vector< T > &vec, int dst_worker_id, int tag, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if< std::is_pod< T >::value >::type >)grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if< std::is_pod< T >::value >::type >inlinestatic
    send_partial(const std::vector< T > &vec, size_t from, size_t to, int dst_worker_id, int tag, MPI_Comm comm) (defined in grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if< std::is_pod< T >::value >::type >)grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if< std::is_pod< T >::value >::type >inlinestatic
    + + + + diff --git a/structgrape_1_1sync__comm_1_1CommImpl_3_01std_1_1vector_3_01T_01_4_00_01typename_01std_1_1enablec0367c4b99ee92a0913180271fe39555.html b/structgrape_1_1sync__comm_1_1CommImpl_3_01std_1_1vector_3_01T_01_4_00_01typename_01std_1_1enablec0367c4b99ee92a0913180271fe39555.html new file mode 100644 index 00000000..fb64cb07 --- /dev/null +++ b/structgrape_1_1sync__comm_1_1CommImpl_3_01std_1_1vector_3_01T_01_4_00_01typename_01std_1_1enablec0367c4b99ee92a0913180271fe39555.html @@ -0,0 +1,105 @@ + + + + + + + +libgrape-lite: grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if< std::is_pod< T >::value >::type > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if< std::is_pod< T >::value >::type > Struct Template Reference
    +
    +
    + + + + + + + + + + + + + + + +

    +Static Public Member Functions

    +static void send (const std::vector< T > &vec, int dst_worker_id, int tag, MPI_Comm comm)
     
    +static void send_partial (const std::vector< T > &vec, size_t from, size_t to, int dst_worker_id, int tag, MPI_Comm comm)
     
    +static void recv (std::vector< T > &vec, int src_worker_id, int tag, MPI_Comm comm)
     
    +static void recv_at (std::vector< T > &vec, size_t offset, int src_worker_id, int tag, MPI_Comm comm)
     
    +template<typename ITER_T >
    static void multiple_send (const std::vector< T > &vec, const ITER_T &worker_id_begin, const ITER_T &worker_id_end, int tag, MPI_Comm comm)
     
    +static void bcast (std::vector< T > &vec, int root, MPI_Comm comm)
     
    +
    + + + + diff --git a/structgrape_1_1sync__comm_1_1CommImpl_3_01std_1_1vector_3_01T_01_4_00_01typename_01std_1_1enablefbdb3f21ced368a4a4b248c9347984b5.html b/structgrape_1_1sync__comm_1_1CommImpl_3_01std_1_1vector_3_01T_01_4_00_01typename_01std_1_1enablefbdb3f21ced368a4a4b248c9347984b5.html new file mode 100644 index 00000000..63d110c3 --- /dev/null +++ b/structgrape_1_1sync__comm_1_1CommImpl_3_01std_1_1vector_3_01T_01_4_00_01typename_01std_1_1enablefbdb3f21ced368a4a4b248c9347984b5.html @@ -0,0 +1,105 @@ + + + + + + + +libgrape-lite: grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if<!std::is_pod< T >::value >::type > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::sync_comm::CommImpl< std::vector< T >, typename std::enable_if<!std::is_pod< T >::value >::type > Struct Template Reference
    +
    +
    + + + + + + + + + + + + + + + +

    +Static Public Member Functions

    +static void send (const std::vector< T > &vec, int dst_worker_id, int tag, MPI_Comm comm)
     
    +static void send_partial (const std::vector< T > &vec, size_t from, size_t to, int dst_worker_id, int tag, MPI_Comm comm)
     
    +static void recv (std::vector< T > &vec, int src_worker_id, int tag, MPI_Comm comm)
     
    +static void recv_at (std::vector< T > &vec, size_t offset, int src_worker_id, int tag, MPI_Comm comm)
     
    +template<typename ITER_T >
    static void multiple_send (const std::vector< T > &vec, const ITER_T &worker_id_begin, const ITER_T &worker_id_end, int tag, MPI_Comm comm)
     
    +static void bcast (std::vector< T > &vec, int root, MPI_Comm comm)
     
    +
    + + + + diff --git a/structstd_1_1hash_3_01grape_1_1Vertex_3_01T_01_4_01_4-members.html b/structstd_1_1hash_3_01grape_1_1Vertex_3_01T_01_4_01_4-members.html new file mode 100644 index 00000000..ecf1c144 --- /dev/null +++ b/structstd_1_1hash_3_01grape_1_1Vertex_3_01T_01_4_01_4-members.html @@ -0,0 +1,83 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    std::hash< grape::Vertex< T > > Member List
    +
    +
    + +

    This is the complete list of members for std::hash< grape::Vertex< T > >, including all inherited members.

    + + +
    operator()(const grape::Vertex< T > &obj) const (defined in std::hash< grape::Vertex< T > >)std::hash< grape::Vertex< T > >inline
    + + + + diff --git a/structstd_1_1hash_3_01grape_1_1Vertex_3_01T_01_4_01_4.html b/structstd_1_1hash_3_01grape_1_1Vertex_3_01T_01_4_01_4.html new file mode 100644 index 00000000..b970db88 --- /dev/null +++ b/structstd_1_1hash_3_01grape_1_1Vertex_3_01T_01_4_01_4.html @@ -0,0 +1,89 @@ + + + + + + + +libgrape-lite: std::hash< grape::Vertex< T > > Struct Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    std::hash< grape::Vertex< T > > Struct Template Reference
    +
    +
    + + + + +

    +Public Member Functions

    +size_t operator() (const grape::Vertex< T > &obj) const
     
    +
    + + + + diff --git a/sync_off.png b/sync_off.png new file mode 100644 index 0000000000000000000000000000000000000000..3b443fc62892114406e3d399421b2a881b897acc GIT binary patch literal 853 zcmV-b1FHOqP)oT|#XixUYy%lpuf3i8{fX!o zUyDD0jOrAiT^tq>fLSOOABs-#u{dV^F$b{L9&!2=9&RmV;;8s^x&UqB$PCj4FdKbh zoB1WTskPUPu05XzFbA}=KZ-GP1fPpAfSs>6AHb12UlR%-i&uOlTpFNS7{jm@mkU1V zh`nrXr~+^lsV-s1dkZOaI|kYyVj3WBpPCY{n~yd%u%e+d=f%`N0FItMPtdgBb@py; zq@v6NVArhyTC7)ULw-Jy8y42S1~4n(3LkrW8mW(F-4oXUP3E`e#g**YyqI7h-J2zK zK{m9##m4ri!7N>CqQqCcnI3hqo1I;Yh&QLNY4T`*ptiQGozK>FF$!$+84Z`xwmeMh zJ0WT+OH$WYFALEaGj2_l+#DC3t7_S`vHpSivNeFbP6+r50cO8iu)`7i%Z4BTPh@_m3Tk!nAm^)5Bqnr%Ov|Baunj#&RPtRuK& z4RGz|D5HNrW83-#ydk}tVKJrNmyYt-sTxLGlJY5nc&Re zU4SgHNPx8~Yxwr$bsju?4q&%T1874xxzq+_%?h8_ofw~(bld=o3iC)LUNR*BY%c0y zWd_jX{Y8`l%z+ol1$@Qa?Cy!(0CVIEeYpKZ`(9{z>3$CIe;pJDQk$m3p}$>xBm4lb zKo{4S)`wdU9Ba9jJbVJ0C=SOefZe%d$8=2r={nu<_^a3~>c#t_U6dye5)JrR(_a^E f@}b6j1K9lwFJq@>o)+Ry00000NkvXXu0mjfWa5j* literal 0 HcmV?d00001 diff --git a/sync_on.png b/sync_on.png new file mode 100644 index 0000000000000000000000000000000000000000..e08320fb64e6fa33b573005ed6d8fe294e19db76 GIT binary patch literal 845 zcmV-T1G4;yP)Y;xxyHF2B5Wzm| zOOGupOTn@c(JmBOl)e;XMNnZuiTJP>rM8<|Q`7I_))aP?*T)ow&n59{}X4$3Goat zgjs?*aasfbrokzG5cT4K=uG`E14xZl@z)F={P0Y^?$4t z>v!teRnNZym<6h{7sLyF1V0HsfEl+l6TrZpsfr1}luH~F7L}ktXu|*uVX^RG$L0`K zWs3j|0tIvVe(N%_?2{(iCPFGf#B6Hjy6o&}D$A%W%jfO8_W%ZO#-mh}EM$LMn7joJ z05dHr!5Y92g+31l<%i1(=L1a1pXX+OYnalY>31V4K}BjyRe3)9n#;-cCVRD_IG1fT zOKGeNY8q;TL@K{dj@D^scf&VCs*-Jb>8b>|`b*osv52-!A?BpbYtTQBns5EAU**$m zSnVSm(teh>tQi*S*A>#ySc=n;`BHz`DuG4&g4Kf8lLhca+zvZ7t7RflD6-i-mcK=M z!=^P$*u2)bkY5asG4gsss!Hn%u~>}kIW`vMs%lJLH+u*9<4PaV_c6U`KqWXQH%+Nu zTv41O(^ZVi@qhjQdG!fbZw&y+2o!iYymO^?ud3{P*HdoX83YV*Uu_HB=?U&W9%AU# z80}k1SS-CXTU7dcQlsm<^oYLxVSseqY6NO}dc`Nj?8vrhNuCdm@^{a3AQ_>6myOj+ z`1RsLUXF|dm|3k7s2jD(B{rzE>WI2scH8i1;=O5Cc9xB3^aJk%fQjqsu+kH#0=_5a z0nCE8@dbQa-|YIuUVvG0L_IwHMEhOj$Mj4Uq05 X8=0q~qBNan00000NkvXXu0mjfptF>5 literal 0 HcmV?d00001 diff --git a/tab_a.png b/tab_a.png new file mode 100644 index 0000000000000000000000000000000000000000..3b725c41c5a527a3a3e40097077d0e206a681247 GIT binary patch literal 142 zcmeAS@N?(olHy`uVBq!ia0vp^j6kfy!2~3aiye;!QlXwMjv*C{Z|8b*H5dputLHD# z=<0|*y7z(Vor?d;H&?EG&cXR}?!j-Lm&u1OOI7AIF5&c)RFE;&p0MYK>*Kl@eiymD r@|NpwKX@^z+;{u_Z~trSBfrMKa%3`zocFjEXaR$#tDnm{r-UW|TZ1%4 literal 0 HcmV?d00001 diff --git a/tab_b.png b/tab_b.png new file mode 100644 index 0000000000000000000000000000000000000000..e2b4a8638cb3496a016eaed9e16ffc12846dea18 GIT binary patch literal 169 zcmeAS@N?(olHy`uVBq!ia0vp^j6kfy!2~3aiye;!QU#tajv*C{Z}0l@H7kg?K0Lnr z!j&C6_(~HV9oQ0Pa6x{-v0AGV_E?vLn=ZI-;YrdjIl`U`uzuDWSP?o#Dmo{%SgM#oan kX~E1%D-|#H#QbHoIja2U-MgvsK&LQxy85}Sb4q9e0Efg%P5=M^ literal 0 HcmV?d00001 diff --git a/tabs.css b/tabs.css new file mode 100644 index 00000000..7d45d36c --- /dev/null +++ b/tabs.css @@ -0,0 +1 @@ +.sm{position:relative;z-index:9999}.sm,.sm ul,.sm li{display:block;list-style:none;margin:0;padding:0;line-height:normal;direction:ltr;text-align:left;-webkit-tap-highlight-color:rgba(0,0,0,0)}.sm-rtl,.sm-rtl ul,.sm-rtl li{direction:rtl;text-align:right}.sm>li>h1,.sm>li>h2,.sm>li>h3,.sm>li>h4,.sm>li>h5,.sm>li>h6{margin:0;padding:0}.sm ul{display:none}.sm li,.sm a{position:relative}.sm a{display:block}.sm a.disabled{cursor:not-allowed}.sm:after{content:"\00a0";display:block;height:0;font:0px/0 serif;clear:both;visibility:hidden;overflow:hidden}.sm,.sm *,.sm *:before,.sm *:after{-moz-box-sizing:border-box;-webkit-box-sizing:border-box;box-sizing:border-box}.sm-dox{background-image:url("tab_b.png")}.sm-dox a,.sm-dox a:focus,.sm-dox a:hover,.sm-dox a:active{padding:0px 12px;padding-right:43px;font-family:"Lucida Grande","Geneva","Helvetica",Arial,sans-serif;font-size:13px;font-weight:bold;line-height:36px;text-decoration:none;text-shadow:0px 1px 1px rgba(255,255,255,0.9);color:#283A5D;outline:none}.sm-dox a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox a.current{color:#D23600}.sm-dox a.disabled{color:#bbb}.sm-dox a span.sub-arrow{position:absolute;top:50%;margin-top:-14px;left:auto;right:3px;width:28px;height:28px;overflow:hidden;font:bold 12px/28px monospace !important;text-align:center;text-shadow:none;background:rgba(255,255,255,0.5);border-radius:5px}.sm-dox a.highlighted span.sub-arrow:before{display:block;content:'-'}.sm-dox>li:first-child>a,.sm-dox>li:first-child>:not(ul) a{border-radius:5px 5px 0 0}.sm-dox>li:last-child>a,.sm-dox>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul{border-radius:0 0 5px 5px}.sm-dox>li:last-child>a.highlighted,.sm-dox>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>a.highlighted,.sm-dox>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>ul>li:last-child>*:not(ul) a.highlighted{border-radius:0}.sm-dox ul{background:rgba(162,162,162,0.1)}.sm-dox ul a,.sm-dox ul a:focus,.sm-dox ul a:hover,.sm-dox ul a:active{font-size:12px;border-left:8px solid transparent;line-height:36px;text-shadow:none;background-color:white;background-image:none}.sm-dox ul a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox ul ul a,.sm-dox ul ul a:hover,.sm-dox ul ul a:focus,.sm-dox ul ul a:active{border-left:16px solid transparent}.sm-dox ul ul ul a,.sm-dox ul ul ul a:hover,.sm-dox ul ul ul a:focus,.sm-dox ul ul ul a:active{border-left:24px solid transparent}.sm-dox ul ul ul ul a,.sm-dox ul ul ul ul a:hover,.sm-dox ul ul ul ul a:focus,.sm-dox ul ul ul ul a:active{border-left:32px solid transparent}.sm-dox ul ul ul ul ul a,.sm-dox ul ul ul ul ul a:hover,.sm-dox ul ul ul ul ul a:focus,.sm-dox ul ul ul ul ul a:active{border-left:40px solid transparent}@media (min-width: 768px){.sm-dox ul{position:absolute;width:12em}.sm-dox li{float:left}.sm-dox.sm-rtl li{float:right}.sm-dox ul li,.sm-dox.sm-rtl ul li,.sm-dox.sm-vertical li{float:none}.sm-dox a{white-space:nowrap}.sm-dox ul a,.sm-dox.sm-vertical a{white-space:normal}.sm-dox .sm-nowrap>li>a,.sm-dox .sm-nowrap>li>:not(ul) a{white-space:nowrap}.sm-dox{padding:0 10px;background-image:url("tab_b.png");line-height:36px}.sm-dox a span.sub-arrow{top:50%;margin-top:-2px;right:12px;width:0;height:0;border-width:4px;border-style:solid dashed dashed dashed;border-color:#283A5D transparent transparent transparent;background:transparent;border-radius:0}.sm-dox a,.sm-dox a:focus,.sm-dox a:active,.sm-dox a:hover,.sm-dox a.highlighted{padding:0px 12px;background-image:url("tab_s.png");background-repeat:no-repeat;background-position:right;border-radius:0 !important}.sm-dox a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox a:hover span.sub-arrow{border-color:#fff transparent transparent transparent}.sm-dox a.has-submenu{padding-right:24px}.sm-dox li{border-top:0}.sm-dox>li>ul:before,.sm-dox>li>ul:after{content:'';position:absolute;top:-18px;left:30px;width:0;height:0;overflow:hidden;border-width:9px;border-style:dashed dashed solid dashed;border-color:transparent transparent #bbb transparent}.sm-dox>li>ul:after{top:-16px;left:31px;border-width:8px;border-color:transparent transparent #fff transparent}.sm-dox ul{border:1px solid #bbb;padding:5px 0;background:#fff;border-radius:5px !important;box-shadow:0 5px 9px rgba(0,0,0,0.2)}.sm-dox ul a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-color:transparent transparent transparent #555;border-style:dashed dashed dashed solid}.sm-dox ul a,.sm-dox ul a:hover,.sm-dox ul a:focus,.sm-dox ul a:active,.sm-dox ul a.highlighted{color:#555;background-image:none;border:0 !important;color:#555;background-image:none}.sm-dox ul a:hover{background-image:url("tab_a.png");background-repeat:repeat-x;color:#fff;text-shadow:0px 1px 1px #000}.sm-dox ul a:hover span.sub-arrow{border-color:transparent transparent transparent #fff}.sm-dox span.scroll-up,.sm-dox span.scroll-down{position:absolute;display:none;visibility:hidden;overflow:hidden;background:#fff;height:36px}.sm-dox span.scroll-up:hover,.sm-dox span.scroll-down:hover{background:#eee}.sm-dox span.scroll-up:hover span.scroll-up-arrow,.sm-dox span.scroll-up:hover span.scroll-down-arrow{border-color:transparent transparent #D23600 transparent}.sm-dox span.scroll-down:hover span.scroll-down-arrow{border-color:#D23600 transparent transparent transparent}.sm-dox span.scroll-up-arrow,.sm-dox span.scroll-down-arrow{position:absolute;top:0;left:50%;margin-left:-6px;width:0;height:0;overflow:hidden;border-width:6px;border-style:dashed dashed solid dashed;border-color:transparent transparent #555 transparent}.sm-dox span.scroll-down-arrow{top:8px;border-style:solid dashed dashed dashed;border-color:#555 transparent transparent transparent}.sm-dox.sm-rtl a.has-submenu{padding-right:12px;padding-left:24px}.sm-dox.sm-rtl a span.sub-arrow{right:auto;left:12px}.sm-dox.sm-rtl.sm-vertical a.has-submenu{padding:10px 20px}.sm-dox.sm-rtl.sm-vertical a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-rtl>li>ul:before{left:auto;right:30px}.sm-dox.sm-rtl>li>ul:after{left:auto;right:31px}.sm-dox.sm-rtl ul a.has-submenu{padding:10px 20px !important}.sm-dox.sm-rtl ul a span.sub-arrow{right:auto;left:8px;border-style:dashed solid dashed dashed;border-color:transparent #555 transparent transparent}.sm-dox.sm-vertical{padding:10px 0;border-radius:5px}.sm-dox.sm-vertical a{padding:10px 20px}.sm-dox.sm-vertical a:hover,.sm-dox.sm-vertical a:focus,.sm-dox.sm-vertical a:active,.sm-dox.sm-vertical a.highlighted{background:#fff}.sm-dox.sm-vertical a.disabled{background-image:url("tab_b.png")}.sm-dox.sm-vertical a span.sub-arrow{right:8px;top:50%;margin-top:-5px;border-width:5px;border-style:dashed dashed dashed solid;border-color:transparent transparent transparent #555}.sm-dox.sm-vertical>li>ul:before,.sm-dox.sm-vertical>li>ul:after{display:none}.sm-dox.sm-vertical ul a{padding:10px 20px}.sm-dox.sm-vertical ul a:hover,.sm-dox.sm-vertical ul a:focus,.sm-dox.sm-vertical ul a:active,.sm-dox.sm-vertical ul a.highlighted{background:#eee}.sm-dox.sm-vertical ul a.disabled{background:#fff}} diff --git a/uniongrape_1_1cuda_1_1np__shared-members.html b/uniongrape_1_1cuda_1_1np__shared-members.html new file mode 100644 index 00000000..91088667 --- /dev/null +++ b/uniongrape_1_1cuda_1_1np__shared-members.html @@ -0,0 +1,88 @@ + + + + + + + +libgrape-lite: Member List + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    +
    +
    grape::cuda::np_shared< ts_type, TTB, TWP, TFG > Member List
    +
    + + + + + diff --git a/uniongrape_1_1cuda_1_1np__shared.html b/uniongrape_1_1cuda_1_1np__shared.html new file mode 100644 index 00000000..5f369978 --- /dev/null +++ b/uniongrape_1_1cuda_1_1np__shared.html @@ -0,0 +1,98 @@ + + + + + + + +libgrape-lite: grape::cuda::np_shared< ts_type, TTB, TWP, TFG > Union Template Reference + + + + + + + + + +
    +
    + + + + + + +
    +
    libgrape-lite +
    +
    A C++ library for parallel graph processing
    +
    +
    + + + + + + + + +
    +
    + + +
    + +
    + + +
    +
    + +
    +
    grape::cuda::np_shared< ts_type, TTB, TWP, TFG > Union Template Reference
    +
    +
    + + + + + + + + + + +

    +Public Attributes

    +ts_type temp_storage
     
    +TTB tb
     
    +TWP warp
     
    +TFG fg
     
    +
    + + + +