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