pub struct KDTreeConfig {
pub cache_aware_layout: bool,
pub vectorized_search: bool,
pub numa_aware: bool,
pub leaf_size: usize,
pub cache_line_size: usize,
pub parallel_construction: bool,
pub parallel_threshold: usize,
pub use_memory_pools: bool,
pub enable_prefetching: bool,
}Expand description
Configuration for advanced-optimized KD-Tree
Fields§
§cache_aware_layout: boolUse cache-aware memory layout
vectorized_search: boolEnable vectorized search operations
numa_aware: boolEnable NUMA-aware construction
leaf_size: usizeLeaf size threshold (optimized for cache lines)
cache_line_size: usizeCache line size in bytes
parallel_construction: boolEnable parallel construction
parallel_threshold: usizeMinimum dataset size for parallelization
use_memory_pools: boolUse memory pools for temporary allocations
enable_prefetching: boolEnable prefetching for searches
Implementations§
Source§impl KDTreeConfig
impl KDTreeConfig
Sourcepub fn new() -> KDTreeConfig
pub fn new() -> KDTreeConfig
Create a new KD-Tree configuration with optimal defaults
Sourcepub fn with_cache_aware_layout(self, enabled: bool) -> KDTreeConfig
pub fn with_cache_aware_layout(self, enabled: bool) -> KDTreeConfig
Configure cache-aware layout
Sourcepub fn with_vectorized_search(self, enabled: bool) -> KDTreeConfig
pub fn with_vectorized_search(self, enabled: bool) -> KDTreeConfig
Configure vectorized search
Sourcepub fn with_numa_aware(self, enabled: bool) -> KDTreeConfig
pub fn with_numa_aware(self, enabled: bool) -> KDTreeConfig
Configure NUMA awareness
Sourcepub fn with_leaf_size(self, leafsize: usize) -> KDTreeConfig
pub fn with_leaf_size(self, leafsize: usize) -> KDTreeConfig
Set leaf size
Sourcepub fn with_parallel_construction(
&mut self,
enabled: bool,
threshold: usize,
) -> &mut KDTreeConfig
pub fn with_parallel_construction( &mut self, enabled: bool, threshold: usize, ) -> &mut KDTreeConfig
Configure parallel construction
Sourcepub fn with_memory_pools(self, enabled: bool) -> KDTreeConfig
pub fn with_memory_pools(self, enabled: bool) -> KDTreeConfig
Configure memory pool usage
Trait Implementations§
Source§impl Clone for KDTreeConfig
impl Clone for KDTreeConfig
Source§fn clone(&self) -> KDTreeConfig
fn clone(&self) -> KDTreeConfig
Returns a duplicate of the value. Read more
1.0.0 (const: unstable) · Source§fn clone_from(&mut self, source: &Self)
fn clone_from(&mut self, source: &Self)
Performs copy-assignment from
source. Read moreSource§impl Debug for KDTreeConfig
impl Debug for KDTreeConfig
Source§impl Default for KDTreeConfig
impl Default for KDTreeConfig
Source§fn default() -> KDTreeConfig
fn default() -> KDTreeConfig
Returns the “default value” for a type. Read more
Auto Trait Implementations§
impl Freeze for KDTreeConfig
impl RefUnwindSafe for KDTreeConfig
impl Send for KDTreeConfig
impl Sync for KDTreeConfig
impl Unpin for KDTreeConfig
impl UnsafeUnpin for KDTreeConfig
impl UnwindSafe for KDTreeConfig
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
Source§impl<T> CloneToUninit for Twhere
T: Clone,
impl<T> CloneToUninit for Twhere
T: Clone,
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 moreSource§impl<T> Pointable for T
impl<T> Pointable for T
impl<T> Read<Exclusive, BecauseExclusive> for Twhere
T: ?Sized,
Source§impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
impl<SS, SP> SupersetOf<SS> for SPwhere
SS: SubsetOf<SP>,
Source§fn to_subset(&self) -> Option<SS>
fn to_subset(&self) -> Option<SS>
The inverse inclusion map: attempts to construct
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
Checks if
self is actually part of its subset T (and can be converted to it).Source§fn to_subset_unchecked(&self) -> SS
fn to_subset_unchecked(&self) -> SS
Use with care! Same as
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
The inclusion map: converts
self to the equivalent element of its superset.