pub struct GraphOptimizer {
pub subexpression_cache: HashMap<u64, Box<dyn Any + Send + Sync>>,
}Expand description
Computation graph optimizer for improving evaluation performance
Fields§
§subexpression_cache: HashMap<u64, Box<dyn Any + Send + Sync>>Cache of optimized subexpressions
Implementations§
Source§impl GraphOptimizer
impl GraphOptimizer
Sourcepub fn optimize<T>(&mut self, node: ComputationNode<T>) -> ComputationNode<T>
pub fn optimize<T>(&mut self, node: ComputationNode<T>) -> ComputationNode<T>
Optimizes a computation graph by applying various transformations
Sourcepub fn eliminate_common_subexpressions<T>(
&mut self,
node: ComputationNode<T>,
) -> ComputationNode<T>where
T: Shareable,
pub fn eliminate_common_subexpressions<T>(
&mut self,
node: ComputationNode<T>,
) -> ComputationNode<T>where
T: Shareable,
Eliminates common subexpressions by reusing nodes with same structure
Trait Implementations§
Auto Trait Implementations§
impl !RefUnwindSafe for GraphOptimizer
impl !UnwindSafe for GraphOptimizer
impl Freeze for GraphOptimizer
impl Send for GraphOptimizer
impl Sync for GraphOptimizer
impl Unpin for GraphOptimizer
impl UnsafeUnpin for GraphOptimizer
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