Expand description
Moirai Iterator - Unified high-performance iterator system for concurrent, parallel, and async computing.
This module provides a comprehensive iterator framework that abstracts over different execution contexts:
- Parallel: CPU-bound work across multiple threads with work-stealing
- Async: I/O-bound work with efficient async/await patterns
- Hybrid: Mixed workloads combining parallel and async execution
§Design Principles
- Zero-cost abstractions: Compile-time optimizations with no runtime overhead
- Memory efficiency: NUMA-aware allocation and cache-friendly data layouts
- Execution agnostic: Same API works across all execution contexts
- Type safety: Comprehensive compile-time guarantees
- Performance: SIMD vectorization and CPU optimization
- Async compatibility: Native async/await support throughout
Re-exports§
pub use async_iter::AsyncIterator;pub use async_iter::AsyncParallelIterator;pub use async_iter::IntoAsyncIterator;pub use execution::AsyncContext;pub use execution::ExecutionBase;pub use execution::ExecutionContext;pub use execution::ExecutionStrategy;pub use execution::HybridConfig;pub use execution::HybridContext;pub use execution::ParallelContext;pub use execution::PerformanceHistory;pub use facade::MoiraiIterator;pub use facade::async_range;pub use facade::moirai_iter;pub use facade::moirai_iter_async;pub use facade::moirai_iter_hybrid;pub use facade::moirai_iter_parallel;pub use facade::par_range;pub use parallel::IndexedParallelIterator;pub use parallel::IntoParallelIterator;pub use parallel::IntoParallelRefIterator;pub use parallel::ParallelExtend;pub use parallel::ParallelIterator;pub use parallel::ParallelSliceMut;pub use parallel::RangeParIter;pub use parallel::VecParIter;pub use parallel::VecRefParIter;
Modules§
- advanced_
patterns - Advanced iterator patterns with unified memory management.
- async_
iter - Async iterator implementations for I/O-bound workloads.
- base
- Base traits and utilities for Moirai iterators.
- cache
- Cache-aware borrowed-slice iteration.
- channel_
fusion - Channel fusion for efficient data flow between iterators and communication channels.
- combinators
- Zero-cost iterator combinators for functional programming patterns
- execution
- Execution contexts for different iterator strategies.
- facade
- Public iterator facade preserving execution context without string dispatch.
- iter_
ops - Iterator operations with SIMD support and memory-aware variants.
- parallel
- Parallel iterator implementation for Moirai.
- prefetch
- Prefetch optimizations for iterator hot paths.
- simd_
iter - SIMD-aware, cache-chunked iterator helpers.
- stream
- Concurrent stream combinators dispatched to the unified hybrid scheduler.
- windows
- Zero-cost window iterators for efficient data processing