12 Repos
Fixed-size circular queues that use indexing to provide constant-time enqueue and dequeue operations.
Distinct from Queue Implementations: Specializes general queue implementations into circular buffers
Explore 12 awesome GitHub repositories matching software engineering & architecture · Ring Buffers. Refine with filters or upvote what's useful.
This project is a comprehensive collection of common computer science algorithms and data structures implemented in Swift. It serves as an educational reference and library for studying computational complexity, algorithmic logic, and data structure engineering through practical code examples. The repository provides a wide suite of data structure implementations, including various types of linked lists, heaps, hash tables, and an extensive range of hierarchical trees such as Red-Black, B-Tree, and Splay trees. It also covers diverse sorting and searching techniques, from basic bubble sort to
Implements a fixed-size queue using circular indexing for efficient, constant-time operations.
The Disruptor is a lock-free inter-thread messaging library and high-performance event bus. It implements a concurrent ring buffer designed for high-concurrency and low-latency message sequencing. The project utilizes a specific messaging architecture to eliminate lock contention, enabling high-throughput event routing and the exchange of continuous event streams between threads. It ensures strict first-in-first-out ordering and immediate data visibility across processing threads. The library provides capabilities for lock-free data streaming, sequential data ordering, and sequence-based eve
Implements a high-performance concurrent ring buffer to sequence events with minimal garbage collection.
Boost is a collection of portable, high-performance source libraries that extend the C++ standard library. It provides a wide range of reusable components, data structures, and algorithms designed to add capabilities to the base language across different platforms. The project is distinguished by its extensive focus on compile-time template metaprogramming and generic programming. It implements advanced architectural patterns such as policy-based design, concept-based type validation, and the use of SFINAE for conditional template resolution to minimize runtime overhead. The library covers a
Provides a standard-compliant ring buffer container for efficient fixed-size circular queuing.
Dieses Projekt ist ein strukturiertes Logging-Framework und eine Bibliothek für Node.js-Anwendungen. Es erstellt maschinenlesbare Log-Datensätze im JSON-Format mit gestuften Schweregraden, um eine konsistente Analyse und zentralisierte Speicherung sicherzustellen. Das System enthält einen Log-Stream-Manager für das Routing von Datensätzen an mehrere Ziele, wie Dateien und Konsolen, sowie ein Command-Line-Interface für das Filtern, Formatieren und Visualisieren roher JSON-Log-Streams. Es unterstützt die Erstellung von Child-Loggern, die übergeordnete Konfigurationen erben und zusätzliche kontextuelle Metadaten zusammenführen. Das Framework deckt ein breites Spektrum operativer Funktionen ab, einschließlich zeitbasierter Dateirotation für das Festplattenmanagement, In-Memory-Ringpuffer für die nachträgliche Wiederherstellung und die Bereitstellung interner Logging-Ereignisse als DTrace-Probes für die Laufzeitbeobachtung in Echtzeit. Es bietet zudem dynamische Call-Site-Introspektion, um Quellort-Metadaten an Logs anzuhängen.
Maintains a fixed-size circular buffer of recent log entries for fast post-mortem retrieval.
Ristretto is a high-performance in-memory cache and concurrent key-value store for Go applications. It provides a thread-safe memory store that manages strict memory bounds and employs probabilistic set filters to reduce lookup overhead. The system is distinguished by an admission-policy cache that utilizes frequency sketches and cost-based eviction to maximize hit ratios. It minimizes contention and improves throughput through the use of striped ring buffers and concurrent map sharding. The project covers a broad range of data management capabilities, including time-based expiration, item f
Buffers updates into multiple independent rings to reduce lock contention and improve write throughput.
The Rust RFCs repository is the formal home for the Rust language evolution process, housing the structured design documents and community review mechanisms that govern changes to the Rust programming language, its compiler, and its standard library. It defines the complete lifecycle for proposing, discussing, and implementing substantial changes through RFC documents, from initial submission and community feedback through final comment periods and sub-team sign-offs. The repository codifies the governance and collaboration processes that shape Rust's development, including mechanisms for com
Defines the slice-based access API for Rust's ring buffer data structure.
Grbl is a CNC motion control firmware and G-code parser designed for milling machines. It serves as a hardware control layer running on ATmega328 microcontrollers to translate G-code instructions into precise motor movements. The system manages stepper motor acceleration and coordinated multi-axis motion to drive milling hardware. It includes a tool probing system for automating workpiece alignment and calculating tool length offsets, as well as homing cycles that use limit switches to establish a precise coordinate origin. The firmware covers broader machine management including spindle and
Stores a sequence of upcoming moves in a circular buffer to prevent pauses between motion blocks.
This is a structured reference that maps Linux kernel network sysctl parameters to their specific roles in the packet processing pipeline, from the network interface card through to the application layer. It covers the full path of packet traversal, including interrupt mitigation, buffer management, queuing disciplines, and TCP auto-tuning mechanisms. The reference details how to configure kernel parameters for connection handling, including TCP listen backlog, SYN queue management, FIN timeout, and syncookies. It also addresses queue management and bufferbloat control through egress queuing
Describes NIC driver ring buffers that temporarily store packets during bursts to prevent drops.
PraisonAI is an autonomous AI agent platform that coordinates multiple LLM-powered agents for research, planning, and execution of complex workflows. It functions as a multi-agent orchestration framework, a workflow builder, and a Model Context Protocol server, while also providing retrieval-augmented generation through vector knowledge bases. Agents can interact via CLI, web, or standardized protocols with sandboxed code execution. The platform distinguishes itself with a rich set of agent communication protocols, including A2A, REST, WebSocket, voice and telephony integration, and MCP, allo
Uses bounded ring buffers to record agent execution metrics without unbounded memory growth.
uthash ist eine makrobasierte Datenstruktur-Bibliothek für C, die Header-only-Implementierungen von Hash-Tabellen, verketteten Listen, Stacks und dynamischen Arrays bereitstellt. Sie ermöglicht schlüsselbasierte Lookups und organisierte Datenspeicherung, ohne dass externe Bibliotheken gelinkt werden müssen. Die Bibliothek nutzt intrusives Linking, um Metadaten über Makros direkt in benutzerdefinierte Strukturen einzubetten. Dieser Ansatz ermöglicht die In-Place-Erweiterung von Strukturen, sodass Hash- und Link-Felder zu bestehenden Structs hinzugefügt werden können, ohne dass separate Speicherallokationen für Container-Knoten erforderlich sind. Das Projekt umfasst zudem spezialisiertes Speicher- und Datenstrommanagement, einschließlich kreisförmiger Puffer mit fester Größe für kontinuierliche Datenströme sowie String-Puffer mit automatischer Speicherverwaltung. Diese Hilfsmittel erleichtern die Datenverarbeitung in ressourcenbeschränkten Umgebungen und eingebetteten Systemen.
Provides fixed-size circular queues to manage continuous data stream flows.
The Intel Processor Performance Monitor is a set of specialized diagnostic tools designed for monitoring raw hardware events, memory latency, PCIe throughput, and processor power states on Intel architecture. The project provides dedicated utilities for measuring data throughput across sockets and PCIe buses, tracking power usage and sleep states to identify frequency throttling, and analyzing cache misses and memory access times. It also includes a hardware event profiler for querying raw core and uncore register events to monitor specific processor behaviors. Capabilities cover comprehensi
Implements high-frequency performance metric storage using circular buffers to minimize sampling overhead.
Rueidis is a high-performance Redis client library for Go that provides a type-safe and asynchronous interface for interacting with Redis servers. It includes a full implementation of the Redis serialization protocol and a dedicated connection manager to handle pooling, multiplexing, and automatic pipelining. The library is distinguished by its support for RDMA connectivity to reduce latency and CPU overhead. It features a distributed lock manager that implements majority-based locking and optimistic concurrency control, as well as client-side caching with invalidation signals to minimize net
Uses a circular ring-buffer for efficient queuing of requests and retrieval of command results.