|
VeloGraphX
High-performance dynamic graph analytics in C++20
|
Classes | |
| struct | CpuFeatures |
Typedefs | |
| using | VertexId = std::uint32_t |
Enumerations | |
| enum class | IntersectionKernel { scalar_merge , galloping , bitmap , avx2 , avx512 , neon } |
Functions | |
| CpuFeatures | detect_cpu_features () |
| std::string | best_isa () |
| std::size_t | scalar_intersection (std::span< const VertexId > a, std::span< const VertexId > b) |
| std::size_t | galloping_intersection (std::span< const VertexId > smaller, std::span< const VertexId > larger) |
| std::size_t | bitmap_intersection (std::span< const VertexId > a, std::span< const VertexId > b) |
| std::size_t | avx2_intersection (std::span< const VertexId > a, std::span< const VertexId > b) |
| std::size_t | avx512_intersection (std::span< const VertexId > a, std::span< const VertexId > b) |
| std::size_t | neon_intersection (std::span< const VertexId > a, std::span< const VertexId > b) |
| bool | bitmap_is_efficient (std::span< const VertexId > a, std::span< const VertexId > b) |
| IntersectionKernel | select_intersection (std::span< const VertexId > a, std::span< const VertexId > b) |
| std::size_t | adaptive_intersection (std::span< const VertexId > a, std::span< const VertexId > b) |
| using velographx::kernels::VertexId = typedef std::uint32_t |
Definition at line 22 of file intersection.hpp.
|
strong |
| Enumerator | |
|---|---|
| scalar_merge | |
| galloping | |
| bitmap | |
| avx2 | |
| avx512 | |
| neon | |
Definition at line 24 of file intersection.hpp.
|
inline |
Definition at line 183 of file intersection.hpp.
References avx2, avx2_intersection(), avx512, avx512_intersection(), bitmap, bitmap_intersection(), galloping, galloping_intersection(), neon, neon_intersection(), scalar_intersection(), and select_intersection().
|
inline |
Definition at line 118 of file intersection.hpp.
References avx2, detect_cpu_features(), and scalar_intersection().
Referenced by adaptive_intersection().
|
inline |
Definition at line 126 of file intersection.hpp.
References detect_cpu_features(), and scalar_intersection().
Referenced by adaptive_intersection().
|
inline |
Definition at line 15 of file cpu_features.hpp.
References detect_cpu_features().
|
inline |
Definition at line 52 of file intersection.hpp.
References bitmap.
Referenced by adaptive_intersection().
|
inline |
Definition at line 160 of file intersection.hpp.
Referenced by select_intersection().
|
inline |
Definition at line 5 of file cpu_features.hpp.
References velographx::kernels::CpuFeatures::avx2, velographx::kernels::CpuFeatures::avx512f, and velographx::kernels::CpuFeatures::neon.
Referenced by avx2_intersection(), avx512_intersection(), best_isa(), and select_intersection().
|
inline |
Definition at line 43 of file intersection.hpp.
Referenced by adaptive_intersection().
|
inline |
Definition at line 134 of file intersection.hpp.
References scalar_intersection().
Referenced by adaptive_intersection().
|
inline |
Definition at line 26 of file intersection.hpp.
Referenced by adaptive_intersection(), avx2_intersection(), avx512_intersection(), and neon_intersection().
|
inline |
Definition at line 168 of file intersection.hpp.
References avx2, avx512, bitmap, bitmap_is_efficient(), detect_cpu_features(), galloping, neon, and scalar_merge.
Referenced by adaptive_intersection().