1mod adaptive_chunking;
11mod adaptive_feedback;
12mod adaptive_prefetch;
13mod chunk_format;
14mod chunked;
15#[cfg(feature = "memory_compression")]
16mod compressed_memmap;
17#[cfg(feature = "gpu")]
18mod cross_device;
19mod cross_file_prefetch;
20mod fusion;
21mod large_data;
22mod lazy_array;
23mod memmap;
24mod memmap_chunks;
25mod memmap_slice;
26mod memory_layout;
27mod numa_topology;
28mod out_of_core;
29mod out_of_core_v2;
30mod pattern_recognition;
31mod platform_memory;
32mod prefetch;
33mod resource_aware;
34#[cfg(feature = "parallel")]
35mod streaming;
36mod validation;
37mod views;
38#[cfg(feature = "parallel")]
39mod work_stealing;
40mod zero_copy_interface;
41#[cfg(feature = "parallel")]
42mod zero_copy_streaming;
43mod zero_serialization;
44mod zerocopy;
45
46pub use adaptive_chunking::{
47 create_shared_monitor,
48 AdaptiveChunking,
50 AdaptiveChunkingBuilder,
51 AdaptiveChunkingParams,
52 AdaptiveChunkingResult,
53 AdaptiveChunkingWithMonitoring,
55 ChunkProcessingStats,
56 DynamicChunkAdjuster,
57 MemoryLimits,
58 MemoryPressureLevel,
59 MemoryPressureMonitor,
60 MemoryTrend,
61 SharedMemoryMonitor,
62 WorkloadType,
63};
64pub use adaptive_feedback::{
65 create_shared_predictor, ChunkSizePredictor, PerformanceMetrics, SharedPredictor,
66};
67pub use adaptive_prefetch::{
68 AdaptivePatternTracker, AdaptivePrefetchConfig, AdaptivePrefetchConfigBuilder,
69 PatternTrackerFactory, PrefetchStrategy,
70};
71pub use chunk_format::{
72 detect_format_version, read_chunk_index, read_header, write_chunk_index, write_header,
73 ChunkIndex, ChunkIndexEntry, CompressionType, FormatVersion, OutOfCoreHeaderV2,
74 HEADER_FIXED_SIZE, MAGIC_BYTES_V2,
75};
76pub use chunked::{
77 chunk_wise_binary_op, chunk_wise_op, chunk_wise_reduce, ChunkedArray, ChunkingStrategy,
78 OPTIMAL_CHUNK_SIZE,
79};
80#[cfg(feature = "memory_compression")]
81pub use compressed_memmap::{
82 CompressedFileMetadata, CompressedMemMapBuilder, CompressedMemMappedArray, CompressionAlgorithm,
83};
84#[cfg(feature = "gpu")]
85pub use cross_device::{
86 create_cpuarray, create_cross_device_manager, create_gpuarray, to_best_device,
87 CrossDeviceManager, DeviceArray, DeviceBuffer, DeviceMemoryManager, DeviceMemoryPool,
88 DeviceStream, DeviceType, KernelParam, ToDevice, ToHost, TransferDirection, TransferEvent,
89 TransferMode, TransferOptions, TransferOptionsBuilder,
90};
91pub use cross_file_prefetch::{
92 AccessType, CrossFilePrefetchConfig, CrossFilePrefetchConfigBuilder, CrossFilePrefetchManager,
93 CrossFilePrefetchRegistry, DataAccess, DatasetId, DatasetPrefetcher,
94};
95pub use fusion::{register_fusion, FusedOp, OpFusion};
96#[cfg(feature = "parallel")]
97pub use large_data::{create_parallel_processor, ParallelStreamingProcessor};
98pub use large_data::{create_streaming_iterator, StreamingChunkIterator};
99pub use lazy_array::{evaluate, LazyArray, LazyOp, LazyOpKind};
100pub use memmap::{create_mmap, create_temp_mmap, open_mmap, AccessMode, MemoryMappedArray};
101#[cfg(feature = "parallel")]
102pub use memmap_chunks::MemoryMappedChunksParallel;
103pub use memmap_chunks::{ChunkIter, MemoryMappedChunkIter, MemoryMappedChunks};
104pub use memmap_slice::{MemoryMappedSlice, MemoryMappedSlicing};
105pub use memory_layout::{
106 AccessPattern as MemoryAccessPattern, ArrayCreation, ArrayLayout, LayoutConverter, LayoutOrder,
107 MemoryLayout,
108};
109pub use numa_topology::{NumaNode, NumaPolicy, NumaTopology};
110pub use out_of_core::{create_disk_array, load_chunks, DiskBackedArray, OutOfCoreArray};
111pub use out_of_core_v2::OutOfCoreArrayV2;
112pub use pattern_recognition::{
113 ComplexPattern, Confidence, PatternRecognitionConfig, PatternRecognizer, RecognizedPattern,
114};
115pub use platform_memory::PlatformMemoryInfo;
116#[cfg(feature = "memory_compression")]
117pub use prefetch::PrefetchingCompressedArray;
118pub use prefetch::{
119 AccessPattern, PrefetchConfig, PrefetchConfigBuilder, PrefetchStats, Prefetching,
120};
121pub use resource_aware::{
122 ResourceAwareConfig, ResourceAwareConfigBuilder, ResourceAwarePrefetcher, ResourceMonitor,
123 ResourceSnapshot, ResourceSummary, ResourceType,
124};
125#[cfg(feature = "parallel")]
126pub use streaming::{
127 create_pipeline, create_stream_processor, Pipeline, PipelineBuilder, PipelineStats,
128 StreamConfig, StreamConfigBuilder, StreamMode, StreamProcessor, StreamSource, StreamState,
129 StreamStats,
130};
131pub use views::{diagonal_view, transpose_view, view_as, view_mut_as, ArrayView, ViewMut};
132#[cfg(feature = "parallel")]
133pub use work_stealing::{
134 create_cpu_intensive_scheduler, create_io_intensive_scheduler, create_work_stealing_scheduler,
135 SchedulerStats, TaskPriority, WorkStealingConfig, WorkStealingConfigBuilder,
136 WorkStealingScheduler, WorkStealingTask,
137};
138pub use zero_copy_interface::{
139 create_global_data_registry, create_zero_copy_data, get_global_data, global_interface,
140 register_global_data, DataExchange, DataId, DataMetadata, FromZeroCopy, InterfaceStats,
141 IntoZeroCopy, ZeroCopyData, ZeroCopyInterface, ZeroCopyView, ZeroCopyWeakRef,
142};
143#[cfg(feature = "parallel")]
144pub use zero_copy_streaming::{
145 create_zero_copy_processor, BufferPool, BufferPoolStats, LockFreeQueue, ProcessingMode,
146 WorkStealingScheduler as ZeroCopyWorkStealingScheduler,
147 WorkStealingTask as ZeroCopyWorkStealingTask, ZeroCopyBuffer, ZeroCopyConfig, ZeroCopyStats,
148 ZeroCopyStreamProcessor,
149};
150pub use zero_serialization::{ZeroCopySerializable, ZeroCopySerialization};
151pub use zerocopy::{ArithmeticOps, BroadcastOps, ZeroCopyOps};
152
153pub mod prelude {
155 pub use super::{
157 chunk_wise_binary_op, chunk_wise_op, chunk_wise_reduce, create_mmap, create_temp_mmap,
158 evaluate, open_mmap, view_as, view_mut_as, AccessMode, AdaptiveChunking,
159 AdaptiveChunkingBuilder, AdaptivePatternTracker, AdaptivePrefetchConfig, ArithmeticOps,
160 ArrayCreation, ArrayLayout, ArrayView, BroadcastOps, ChunkIter, ChunkedArray,
161 ComplexPattern, CrossFilePrefetchManager, DatasetId, DatasetPrefetcher, LayoutOrder,
162 LazyArray, MemoryLayout, MemoryMappedArray, MemoryMappedChunkIter, MemoryMappedChunks,
163 MemoryMappedSlice, MemoryMappedSlicing, OutOfCoreArray, PatternRecognizer, PrefetchConfig,
164 PrefetchConfigBuilder, PrefetchStrategy, Prefetching, ResourceAwareConfig,
165 ResourceAwarePrefetcher, ViewMut, ZeroCopyData, ZeroCopyInterface, ZeroCopyOps,
166 ZeroCopySerializable, ZeroCopySerialization, ZeroCopyView,
167 };
168
169 #[cfg(feature = "gpu")]
171 pub use super::{
172 create_cpuarray, create_cross_device_manager, create_gpuarray, to_best_device,
173 };
174
175 #[cfg(feature = "parallel")]
177 pub use super::MemoryMappedChunksParallel;
178}