1#![warn(missing_docs)]
31#![warn(clippy::all)]
32#![deny(unsafe_op_in_unsafe_fn)]
33
34pub mod analytics_context;
35pub mod audit;
36pub mod checkpoint;
37
38#[cfg(feature = "cloud-storage")]
40pub mod cloud_storage;
41
42pub mod config;
43pub mod context;
44pub mod control;
45pub mod dispatcher;
46pub mod domain;
47pub mod error;
48pub mod health;
49pub mod hlc;
50pub mod k2k;
51pub mod memory;
52pub mod message;
53pub mod multi_gpu;
54pub mod observability;
55pub mod persistent_message;
56pub mod pubsub;
57pub mod queue;
58pub mod reduction;
59pub mod runtime;
60pub mod runtime_context;
61pub mod security;
62pub mod state;
63pub mod telemetry;
64pub mod telemetry_pipeline;
65pub mod types;
66
67#[doc(hidden)]
70pub mod __private;
71
72pub mod prelude {
74 pub use crate::analytics_context::{
75 AllocationHandle, AnalyticsContext, AnalyticsContextBuilder, ContextStats,
76 };
77 pub use crate::audit::{
78 AuditConfig, AuditEvent, AuditEventType, AuditLevel, AuditLogger, AuditLoggerBuilder,
79 AuditSink, FileSink, MemorySink,
80 };
81 pub use crate::config::{
82 CheckpointStorageType, CloudStorageConfig, ConfigBuilder, Environment, GeneralConfig,
83 GeneralConfigBuilder, HealthConfig, HealthConfigBuilder, LogLevel, MigrationConfig,
84 MigrationConfigBuilder, MultiGpuConfig, MultiGpuConfigBuilder, ObservabilityConfig,
85 ObservabilityConfigBuilder, RetryConfig, RingKernelConfig,
86 };
87 pub use crate::context::*;
88 pub use crate::control::*;
89 pub use crate::dispatcher::{
90 DispatcherBuilder, DispatcherConfig, DispatcherMetrics, KernelDispatcher,
91 };
92 pub use crate::domain::{Domain, DomainMessage, DomainParseError};
93 pub use crate::error::*;
94 pub use crate::health::{
95 BackoffStrategy, CircuitBreaker, CircuitBreakerConfig, CircuitBreakerStats, CircuitState,
96 DegradationLevel, DegradationManager, DegradationStats, HealthCheck, HealthCheckResult,
97 HealthChecker, HealthStatus, KernelHealth, KernelWatchdog, LoadSheddingPolicy, RetryPolicy,
98 };
99 pub use crate::hlc::*;
100 pub use crate::k2k::{
101 DeliveryStatus, K2KBroker, K2KBuilder, K2KConfig, K2KEndpoint, K2KMessage,
102 K2KMessageRegistration, K2KTypeRegistry,
103 };
104 pub use crate::memory::*;
105 pub use crate::message::{
106 priority, CorrelationId, MessageEnvelope, MessageHeader, MessageId, Priority, RingMessage,
107 };
108 pub use crate::multi_gpu::{
109 CrossGpuK2KRouter, CrossGpuRouterStatsSnapshot, DeviceInfo, DeviceStatus,
110 DeviceUnregisterResult, GpuConnection, GpuTopology, HotReloadConfig, HotReloadManager,
111 HotReloadRequest, HotReloadResult, HotReloadState, HotReloadStatsSnapshot,
112 HotReloadableKernel, InterconnectType, KernelCodeFormat, KernelCodeSource,
113 KernelMigrationPlan, KernelMigrator, LoadBalancingStrategy, MigratableKernel,
114 MigrationPriority, MigrationRequest, MigrationResult, MigrationState,
115 MigrationStatsSnapshot, MultiGpuBuilder, MultiGpuCoordinator, PendingK2KMessage,
116 RoutingDecision,
117 };
118 pub use crate::observability::{
119 GpuDeviceMemoryStats, GpuMemoryAllocation, GpuMemoryDashboard, GpuMemoryPoolStats,
120 GpuMemoryThresholds, GpuMemoryType, GrafanaDashboard, GrafanaPanel, MemoryPressureLevel,
121 ObservabilityContext, PanelType, PrometheusCollector, PrometheusExporter,
122 RingKernelCollector, Span, SpanBuilder, SpanEvent, SpanId, SpanKind, SpanStatus, TraceId,
123 };
124 pub use crate::persistent_message::{
125 message_flags, DispatchTable, HandlerRegistration, PersistentMessage,
126 MAX_INLINE_PAYLOAD_SIZE,
127 };
128 pub use crate::pubsub::{PubSubBroker, PubSubBuilder, Publication, QoS, Subscription, Topic};
129 pub use crate::queue::*;
130 pub use crate::reduction::{
131 GlobalReduction, ReductionConfig, ReductionHandle, ReductionOp, ReductionScalar,
132 };
133 pub use crate::runtime::*;
134 pub use crate::runtime_context::{
135 AppInfo, BackgroundTaskStatus, CircuitGuard, ContextMetrics, DegradationGuard,
136 HealthCycleResult, LifecycleState, MonitoringConfig, MonitoringHandles, OperationPriority,
137 RingKernelContext, RuntimeBuilder, RuntimeStatsSnapshot, ShutdownReport, WatchdogResult,
138 };
139 pub use crate::security::{
140 AccessLevel, ComplianceCheck, ComplianceReport, ComplianceReporter, ComplianceStandard,
141 ComplianceStatus, ComplianceSummary, EncryptedRegion, EncryptionAlgorithm,
142 EncryptionConfig, EncryptionKey, EncryptionStats, KernelSandbox, KeyDerivation,
143 MemoryEncryption, ReportFormat, ResourceLimits, SandboxPolicy, SandboxStats,
144 SandboxViolation, ViolationType,
145 };
146 pub use crate::state::{
147 ControlBlockStateHelper, EmbeddedState, EmbeddedStateSize, GpuState, StateDescriptor,
148 StateSnapshot, CONTROL_BLOCK_STATE_SIZE, STATE_DESCRIPTOR_MAGIC,
149 };
150 pub use crate::telemetry::*;
151 pub use crate::telemetry_pipeline::{
152 MetricsCollector, MetricsSnapshot, TelemetryAlert, TelemetryConfig, TelemetryEvent,
153 TelemetryPipeline,
154 };
155 pub use crate::types::*;
156
157 #[cfg(feature = "cloud-storage")]
159 pub use crate::cloud_storage::{AsyncCheckpointStorage, CloudProvider, S3Config, S3Storage};
160}
161
162pub use context::RingContext;
164pub use control::ControlBlock;
165pub use domain::{Domain, DomainMessage};
166pub use error::{Result, RingKernelError};
167pub use hlc::HlcTimestamp;
168pub use memory::{DeviceMemory, GpuBuffer, MemoryPool, PinnedMemory};
169pub use message::{priority, MessageHeader, MessageId, Priority, RingMessage};
170pub use queue::{MessageQueue, QueueStats};
171pub use runtime::{
172 Backend, KernelHandle, KernelId, KernelState, KernelStatus, LaunchOptions, RingKernelRuntime,
173};
174pub use telemetry::TelemetryBuffer;
175pub use types::{BlockId, GlobalThreadId, ThreadId, WarpId};