RONN Execution Provider Framework
This crate provides the execution provider framework for RONN, including:
- Provider registry and management system
- Memory allocator implementations with pooling and SIMD alignment
- CPU execution provider with SIMD optimizations and multi-threading
- GPU execution provider using Candle backend
- Kernel compilation framework with operator fusion
Architecture
The provider framework follows a layered architecture:
- Registry: Central provider management and selection
- Allocators: Memory management with different strategies
- Providers: Hardware-specific execution implementations
- Compiler: Subgraph optimization and kernel compilation
Example
use ;
use ;
use Arc;
// Create provider registry
let registry = new;
// Register CPU provider
let cpu_provider = create_cpu_provider?;
registry.register_provider?;
// Try to register GPU provider (may fail if no GPU)
if let Ok = create_gpu_provider
# Ok::