VeloGraphX
High-performance dynamic graph analytics in C++20
Loading...
Searching...
No Matches
intersection.hpp File Reference
#include <algorithm>
#include <bit>
#include <cstddef>
#include <cstdint>
#include <span>
#include <vector>
#include "velographx/kernels/cpu_features.hpp"

Go to the source code of this file.

Namespaces

namespace  velographx
 
namespace  velographx::kernels
 

Typedefs

using velographx::kernels::VertexId = std::uint32_t
 

Enumerations

enum class  velographx::kernels::IntersectionKernel {
  velographx::kernels::scalar_merge , velographx::kernels::galloping , velographx::kernels::bitmap , velographx::kernels::avx2 ,
  velographx::kernels::avx512 , velographx::kernels::neon
}
 

Functions

std::size_t velographx::kernels::scalar_intersection (std::span< const VertexId > a, std::span< const VertexId > b)
 
std::size_t velographx::kernels::galloping_intersection (std::span< const VertexId > smaller, std::span< const VertexId > larger)
 
std::size_t velographx::kernels::bitmap_intersection (std::span< const VertexId > a, std::span< const VertexId > b)
 
std::size_t velographx::kernels::avx2_intersection (std::span< const VertexId > a, std::span< const VertexId > b)
 
std::size_t velographx::kernels::avx512_intersection (std::span< const VertexId > a, std::span< const VertexId > b)
 
std::size_t velographx::kernels::neon_intersection (std::span< const VertexId > a, std::span< const VertexId > b)
 
bool velographx::kernels::bitmap_is_efficient (std::span< const VertexId > a, std::span< const VertexId > b)
 
IntersectionKernel velographx::kernels::select_intersection (std::span< const VertexId > a, std::span< const VertexId > b)
 
std::size_t velographx::kernels::adaptive_intersection (std::span< const VertexId > a, std::span< const VertexId > b)