pub struct SIMDGraphOps { /* private fields */ }Expand description
SIMD-optimized graph operations for high-performance computing Leverages vectorized instructions for maximum throughput
Implementations§
Source§impl SIMDGraphOps
impl SIMDGraphOps
Sourcepub fn with_config(
self,
vector_width: VectorWidth,
enable_prefetch: bool,
) -> Self
pub fn with_config( self, vector_width: VectorWidth, enable_prefetch: bool, ) -> Self
Configure SIMD operations
Sourcepub fn vectorized_pagerank(
&self,
graph: &ArrowGraph,
iterations: usize,
damping: f64,
) -> Result<Vec<f64>>
pub fn vectorized_pagerank( &self, graph: &ArrowGraph, iterations: usize, damping: f64, ) -> Result<Vec<f64>>
Vectorized PageRank computation
Sourcepub fn vectorized_shortest_paths(
&self,
graph: &ArrowGraph,
source: usize,
) -> Result<Vec<f64>>
pub fn vectorized_shortest_paths( &self, graph: &ArrowGraph, source: usize, ) -> Result<Vec<f64>>
SIMD-optimized shortest path computation
Sourcepub fn vectorized_triangle_count(&self, graph: &ArrowGraph) -> Result<u64>
pub fn vectorized_triangle_count(&self, graph: &ArrowGraph) -> Result<u64>
Vectorized triangle counting
Sourcepub fn vectorized_connected_components(
&self,
graph: &ArrowGraph,
) -> Result<Vec<u32>>
pub fn vectorized_connected_components( &self, graph: &ArrowGraph, ) -> Result<Vec<u32>>
SIMD-optimized connected components
Sourcepub fn vectorized_clustering_coefficient(
&self,
graph: &ArrowGraph,
) -> Result<Vec<f64>>
pub fn vectorized_clustering_coefficient( &self, graph: &ArrowGraph, ) -> Result<Vec<f64>>
Vectorized clustering coefficient calculation
Sourcepub fn get_simd_capabilities(&self) -> SIMDCapabilities
pub fn get_simd_capabilities(&self) -> SIMDCapabilities
Get SIMD capabilities summary
Sourcepub fn benchmark_simd_performance(
&self,
graph: &ArrowGraph,
) -> Result<SIMDMetrics>
pub fn benchmark_simd_performance( &self, graph: &ArrowGraph, ) -> Result<SIMDMetrics>
Benchmark SIMD performance
Trait Implementations§
Source§impl Debug for SIMDGraphOps
impl Debug for SIMDGraphOps
Source§impl Default for SIMDGraphOps
impl Default for SIMDGraphOps
Source§impl VectorizedComputation for SIMDGraphOps
impl VectorizedComputation for SIMDGraphOps
type Input = ArrowGraph
type Output = SIMDMetrics
Source§fn vectorized_compute(&self, input: Self::Input) -> Result<Self::Output>
fn vectorized_compute(&self, input: Self::Input) -> Result<Self::Output>
Perform vectorized computation on input data
Source§fn optimal_chunk_size(&self) -> usize
fn optimal_chunk_size(&self) -> usize
Get optimal chunk size for vectorization
Source§fn simd_available(&self) -> bool
fn simd_available(&self) -> bool
Check if SIMD is available on this platform
Auto Trait Implementations§
impl Freeze for SIMDGraphOps
impl RefUnwindSafe for SIMDGraphOps
impl Send for SIMDGraphOps
impl Sync for SIMDGraphOps
impl Unpin for SIMDGraphOps
impl UnwindSafe for SIMDGraphOps
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read more