Expand description
Prelude module for convenient imports.
Re-exports§
pub use crate::RingKernel;
Modules§
Structs§
- BlockId
- Block ID within a grid (0 to grid_size - 1).
- Bounded
Queue - Bounded queue with blocking operations.
- Control
Block - Kernel control block (128 bytes, cache-line aligned).
- Correlation
Id - Correlation ID for request-response patterns.
- Device
Info - Information about a GPU device.
- Device
Status - Status of a device in the multi-GPU coordinator.
- Dim3
- 3D dimension specification.
- Global
Thread Id - Global thread ID across all blocks.
- HlcClock
- Hybrid Logical Clock for generating causally-ordered timestamps.
- HlcState
- Compact HLC state for GPU-side storage (16 bytes).
- HlcTimestamp
- Hybrid Logical Clock timestamp.
- K2KBroker
- K2K message broker for routing messages between kernels.
- K2KBuilder
- Builder for creating K2K infrastructure.
- K2KConfig
- Configuration for K2K messaging.
- K2KEndpoint
- K2K endpoint for a single kernel.
- K2KMessage
- A K2K message with routing information.
- Kernel
Handle - Handle to a launched kernel.
- Kernel
Id - Unique kernel identifier.
- Kernel
Metrics - Extended metrics for detailed monitoring.
- Kernel
Status - Kernel status including state and metrics.
- Latency
Histogram - Histogram for latency distribution.
- Launch
Options - Options for launching a kernel.
- Memory
Pool - Memory pool for efficient allocation/deallocation.
- Message
Envelope - Envelope containing header and serialized payload.
- Message
Header - Fixed-size message header (256 bytes, cache-line aligned).
- Message
Id - Unique message identifier.
- Metrics
Collector - Metrics collector that aggregates metrics from multiple kernels.
- Metrics
Snapshot - A snapshot of metrics at a point in time.
- Mpsc
Queue - Multi-producer single-consumer lock-free queue.
- Multi
GpuBuilder - Builder for multi-GPU coordinator.
- Multi
GpuCoordinator - Multi-GPU coordinator for managing kernels across devices.
- Pinned
Memory - Pinned (page-locked) host memory for efficient DMA transfers.
- Pooled
Buffer - A buffer from a memory pool.
- PubSub
Broker - Pub/sub message broker.
- PubSub
Builder - Builder for creating pub/sub infrastructure.
- Publication
- A published message on a topic.
- Queue
Stats - Statistics for a message queue.
- Ring
Context - GPU intrinsics facade for kernel handlers.
- Runtime
Builder - Builder for creating a runtime instance.
- Runtime
Metrics - Runtime-level metrics.
- Spsc
Queue - Single-producer single-consumer lock-free ring buffer.
- Subscription
- A subscription to a topic.
- Telemetry
Alert - An alert when telemetry thresholds are exceeded.
- Telemetry
Buffer - Telemetry buffer (64 bytes, cache-line aligned).
- Telemetry
Config - Configuration for the telemetry pipeline.
- Telemetry
Pipeline - Real-time telemetry pipeline.
- Thread
Id - Thread ID within a block (0 to block_size - 1).
- Topic
- A topic name for pub/sub messaging.
- WarpId
- Warp ID within a block.
Enums§
- Backend
- GPU backend type.
- Context
Backend - Backend-specific context implementation.
- Control
Error - Error codes for control block.
- Delivery
Status - Status of message delivery.
- Fence
Scope - Memory fence scope for synchronization operations.
- Kernel
Mode - Kernel execution mode.
- Kernel
State - Kernel lifecycle state.
- Load
Balancing Strategy - Strategy for balancing load across devices.
- Memory
Order - Memory ordering for atomic operations.
- Priority
- Message priority levels.
- QoS
- Quality of Service level for message delivery.
- Ring
Kernel Error - Comprehensive error type for RingKernel operations.
- Telemetry
Event - A telemetry event that is broadcast to subscribers.
Constants§
- MAX_
CLOCK_ SKEW_ MS - Maximum allowed clock skew in milliseconds.
Traits§
- Device
Memory - Trait for device memory allocation.
- GpuBuffer
- Trait for GPU buffer operations.
- Kernel
Handle Inner - Inner trait for kernel handle implementation.
- Message
Queue - Trait for message queue implementations.
- Ring
Kernel Runtime - Backend-agnostic runtime trait for kernel management.
- Ring
Message - Trait for types that can be sent as kernel messages.
Functions§
- create_
pool - Create a shared memory pool.
Type Aliases§
- BoxFuture
- Type-erased future for async operations.
- Result
- Result type alias for RingKernel operations.
- Shared
Memory Pool - Shared memory pool that can be cloned.
Attribute Macros§
- ring_
kernel - Attribute macro for defining ring kernel handlers.
- stencil_
kernel - Attribute macro for defining stencil kernels that transpile to CUDA.
Derive Macros§
- GpuType
- Derive macro for GPU-compatible types.
- Ring
Message - Derive macro for implementing the RingMessage trait.