pub struct SelfOptimizingAlgorithm { /* private fields */ }Expand description
Self-optimizing spatial algorithm
§Experimental
This type is gated behind the experimental cargo feature. Its
hardware-counter-guided runtime code generation and adaptive memory
optimization are research-stage and not yet implemented; calling
SelfOptimizingAlgorithm::auto_optimize_and_execute returns an honest
SpatialError::NotImplementedError instead of fabricating speedup metrics.
Implementations§
Source§impl SelfOptimizingAlgorithm
impl SelfOptimizingAlgorithm
Sourcepub fn with_hardware_counter_feedback(self, enabled: bool) -> Self
pub fn with_hardware_counter_feedback(self, enabled: bool) -> Self
Enable hardware performance counter feedback
Sourcepub fn with_runtime_code_generation(self, enabled: bool) -> Self
pub fn with_runtime_code_generation(self, enabled: bool) -> Self
Enable runtime code generation
Sourcepub fn with_adaptive_memory_patterns(self, enabled: bool) -> Self
pub fn with_adaptive_memory_patterns(self, enabled: bool) -> Self
Enable adaptive memory patterns
Sourcepub async fn auto_optimize_and_execute(
&mut self,
data: &ArrayView2<'_, f64>,
) -> SpatialResult<Array1<usize>>
pub async fn auto_optimize_and_execute( &mut self, data: &ArrayView2<'_, f64>, ) -> SpatialResult<Array1<usize>>
Auto-optimize and execute the configured algorithm.
§Status
Not implemented. The runtime self-optimization pipeline (hardware performance-counter feedback, just-in-time code generation, and adaptive memory-pattern selection) is research-stage and has no working backend.
Earlier revisions of this method returned a fixed i % 2 two-cluster
labelling together with fabricated before/after performance metrics
(e.g. a hard-coded “10x speedup”). That fabricated success has been
removed: the method now returns an honest
SpatialError::NotImplementedError. Callers that need real clustering
should use the algorithms in the cluster family directly.
The data argument is validated for shape so that the error message can
report the problem size, but no optimization or clustering is performed.
Trait Implementations§
Auto Trait Implementations§
impl Freeze for SelfOptimizingAlgorithm
impl RefUnwindSafe for SelfOptimizingAlgorithm
impl Send for SelfOptimizingAlgorithm
impl Sync for SelfOptimizingAlgorithm
impl Unpin for SelfOptimizingAlgorithm
impl UnsafeUnpin for SelfOptimizingAlgorithm
impl UnwindSafe for SelfOptimizingAlgorithm
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
impl<ST, DT> CastableFrom<ST, Initialized, Initialized> for DT
impl<ST, DT> CastableFrom<ST, Uninit, Uninit> for DT
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>
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>
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>
self from the equivalent element of its
superset. Read moreSource§fn is_in_subset(&self) -> bool
fn is_in_subset(&self) -> bool
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
self.to_subset but without any property checks. Always succeeds.Source§fn from_subset(element: &SS) -> SP
fn from_subset(element: &SS) -> SP
self to the equivalent element of its superset.