29 مستودعات
Techniques that map files directly into process memory to avoid redundant data copying between kernel and user space.
Explore 29 awesome GitHub repositories matching data & databases · Zero-Copy Memory Mappings. Refine with filters or upvote what's useful.
Meilisearch is a Rust-based search engine providing typo-tolerant full-text and vector-based semantic search with real-time conversational capabilities.
Maps database files directly into memory to eliminate redundant data copying between kernel and user space.
simdjson is a high-performance, header-only C++ library designed for parsing, querying, and serializing JSON data with minimal memory overhead. It functions as a hardware-aware data processing engine that leverages vector instructions to achieve gigabyte-per-second parsing speeds. By detecting host processor capabilities at runtime, the library automatically selects the most efficient instruction sets to accelerate structural analysis and validation. The library distinguishes itself through a focus on extreme efficiency and resource management. It utilizes memory mapping and padded buffer ali
The library provides direct access to memory-mapped files or string buffers to enable efficient processing of large data structures without intermediate copies.
Candle is a minimalist machine learning framework and deep learning inference engine designed for the Rust programming language. It functions as a low-level tensor computation library, providing the necessary primitives for multi-dimensional array operations and mathematical transformations required to execute pre-trained neural network models. The framework distinguishes itself through a focus on memory efficiency and hardware utilization. It employs static-typed tensor operations to enforce shape validation and memory safety at compile time, while utilizing a lazy-loaded computational graph
Uses zero-copy memory mapping to access model weights directly from disk, reducing data duplication and memory footprint.
This project is a cross-platform graphics and compute framework that provides a unified, hardware-agnostic abstraction layer for rendering and parallel processing. It enables developers to build high-performance applications that execute consistently across diverse operating systems and hardware backends, including Vulkan, Metal, and DirectX. By mapping high-level graphics commands to native APIs, it serves as a portable foundation for both real-time 3D rendering and general-purpose GPU computing. The framework distinguishes itself through a robust architecture that supports both native deskt
Transfers processed results from graphics memory back to the host system by mapping buffers for reading.
This is a mobile object database and NoSQL local data store that replaces relational tables with a schema-based model. It functions as a reactive data store, using live object observations and change notifications to trigger automatic user interface refreshes. The system provides built-in mobile cloud data synchronization to keep local datasets consistent with a remote server across multiple devices. It also includes security features for encrypted local storage, protecting sensitive on-disk data using at-rest encryption keys and fine-grained access control. Broad capabilities include object
Uses zero-copy memory mappings to read data directly from the database map without intermediate allocations.
Realm-Cocoa is a NoSQL mobile database engine and reactive object database designed for local data storage on mobile devices. It serves as a non-relational alternative to Core Data and SQLite, storing data as objects rather than tables. The system functions as an encrypted local store that protects sensitive application data using encryption. It provides reactive data synchronization, allowing application objects and user interfaces to update automatically when the underlying database changes.
Maps database files directly into memory to read data without copying bytes into the application heap.
Mold is a high-performance linker designed to replace standard system tools for the creation of executable binaries and shared libraries. It functions as a drop-in replacement for existing linkers, focusing on accelerating the final build phase of large software projects to improve developer productivity. The tool achieves its performance by utilizing multi-threaded processing to distribute the linking of object files across multiple CPU cores. It supports cross-architecture binary linking, allowing it to process compiled files for diverse platforms efficiently. By intercepting standard linke
Maps input object files directly into the process address space to minimize data copying and reduce system call overhead.
Redpanda is a distributed event streaming engine designed to serve as a high-performance, drop-in replacement for existing event-driven architectures. It provides a foundation for building and scaling applications that require reliable data movement, analytical querying, and strict operational compliance across both cloud and self-managed environments. The platform distinguishes itself through a shared-nothing architecture that utilizes thread-per-core execution and a non-blocking asynchronous input/output engine to maximize throughput. It maintains data consistency through a consensus-based
Implements a zero-copy data path using memory mapping to minimize CPU cycles and memory allocation overhead.
OpenVINO is an AI inference engine and model serving platform designed to execute optimized deep learning models across CPUs, GPUs, and NPUs through a unified API. It includes a model optimization toolkit for converting, quantizing, and compressing models from various frameworks, alongside a specialized generative AI runtime for large language models. The project distinguishes itself through a plugin-based hardware acceleration layer that maps neural network operations to vendor-specific drivers. It features advanced execution mechanisms such as continuous batching, speculative decoding, and
Eliminates data duplication overhead by sharing memory buffers between the host and hardware accelerators.
Seastar is a C++ server application framework and asynchronous programming library designed for building high-performance, shared-nothing server applications. It functions as a high-performance I/O engine providing direct disk and network access through a shared-nothing framework that partitions data and execution across CPU cores. The framework distinguishes itself through a thread-per-core architecture that eliminates locking and resource contention by assigning one execution thread to each physical CPU core. It implements a userspace TCP/IP stack and kernel-bypass techniques, integrating w
Moves data directly between storage devices and application memory using DMA-based APIs for maximum efficiency.
Sled is an embedded key-value store and ACID-compliant database designed for high-performance data persistence. It functions as a log-structured storage engine that organizes data using B+ trees to support efficient range queries and prefix scans. The engine implements a zero-copy data store model, utilizing epoch-based reclamation to provide direct references to cached values without memory allocations. It distinguishes itself through a combination of write-ahead logging, page cache optimizations to reduce write amplification on flash storage, and serializable transactions for atomic multi-k
Provides direct references to cached values using epoch-based reclamation to eliminate memory allocations during reads.
Crossbeam is a concurrency toolkit for Rust providing low-level primitives for writing multi-threaded programs. It focuses on lock-free data structures and memory management primitives designed for shared-memory concurrent environments. The project includes a work-stealing scheduler that uses double-ended queues to balance workloads across multiple processor cores. This system enables the implementation of work-stealing deques to distribute tasks and prevent bottlenecks. The toolkit covers broader capabilities for parallel algorithm development, multi-threaded task scheduling, and general co
Implements epoch-based reclamation to safely defer memory deletion in concurrent environments.
Kitex is a high-performance remote procedure call framework for building distributed microservices in Go. It provides a communication system compatible with gRPC and Protobuf standards and includes a suite of tools for microservices governance. The framework features proxyless service mesh integration, which allows it to manage network traffic and governance directly without adding sidecar proxy latency. It optimizes data throughput through a high-performance communication library that minimizes memory copies. The system covers a broad surface of distributed capabilities, including service d
Reduces memory overhead and increases throughput by utilizing direct memory access during codec operations.
Hertz is a high-performance Go HTTP framework designed for building scalable microservices, RESTful APIs, and AI applications. It functions as a high-performance web server and a communication framework for microservices, utilizing non-blocking I/O and zero-copy memory management to handle high-concurrency traffic. The project distinguishes itself through a microservices communication toolkit that supports high-efficiency remote procedure calls via gRPC and Thrift protocols. It implements an asynchronous middleware engine based on an onion model, allowing for a pluggable request-response pipe
Implements zero-copy memory management using reference counting to handle high-concurrency traffic with minimal memory overhead.
MessagePack-CSharp is a high-performance binary serialization library for .NET applications that converts object graphs into the MessagePack format. It functions as a C# data serialization toolkit and a polymorphic binary encoder capable of handling abstract classes and interfaces using union keys to identify concrete derived types. The library provides a binary format transcoder to transform binary data into human-readable JSON for debugging. It supports ahead-of-time formatter generation to avoid runtime overhead and implements LZ4 binary compression to reduce the size of serialized data.
Provides high-throughput serialization by performing unsafe memory copies of primitive arrays to bypass element-by-element processing.
Pony is an open-source, actor-model, capabilities-secure, high performance programming language
Manages memory through compiler-inserted reference counting driven by reference capabilities, eliminating the need for a tracing garbage collector.
cuml هي مكتبة وإطار عمل للتعلم الآلي مسرع بواسطة GPU يستخدم CUDA لتسريع معالجة البيانات الجدولية وتنفيذ النماذج. توفر مجموعة من الأدوات لتدريب ونشر نماذج التصنيف، والانحدار، والتجميع على وحدات معالجة الرسومات NVIDIA وعناقيد GPU. تم تصميم المكتبة لقابلية التوسع، حيث توفر بيئة تعلم آلي موزعة على GPU يمكنها توزيع الحساب والبيانات عبر مسرعات أجهزة وعقد متعددة للتعامل مع مجموعات البيانات التي تتجاوز ذاكرة الجهاز الواحد. تعكس واجهات المقدر القياسية للسماح باستبدال النماذج القائمة على CPU بإصدارات مسرعة بواسطة GPU داخل سير العمل الحالي. يغطي المشروع مجموعة واسعة من قدرات التعلم الآلي، بما في ذلك التعلم الخاضع للإشراف، والتجميع غير الخاضع للإشراف، والبحث عن أقرب جار، وتقليل الأبعاد عالي الأبعاد. كما يتضمن معالجة بيانات جدولية مسرعة بواسطة الأجهزة لتوسيع الميزات والترميز، واستخراج ميزات النص، وتحليل السلاسل الزمنية، وقابلية تفسير تنبؤ النموذج. تشمل الأدوات المساعدة أدوات لإنشاء مجموعات بيانات اصطناعية، وتسلسل حالة النموذج، وحساب مقاييس أداء النموذج.
Uses shared memory pointers and standard array interfaces to move data between libraries without expensive serialization.
NCCL هي مكتبة اتصالات عالية الأداء وإطار عمل حوسبة GPU موزع مصمم لتنفيذ تبادلات البيانات الجماعية ومن نقطة إلى نقطة عبر وحدات GPU متعددة في أنظمة أحادية أو متعددة العقد. تعمل كطبقة نقل GPU RDMA ومنسق ذاكرة، مما يسهل مزامنة البيانات وتدرجات النماذج ذات النطاق الترددي العالي للتدريب والاستدلال الموزع على GPU. تتميز المكتبة بقدرتها على تنفيذ بدائيات الاتصال مباشرة من نواة GPU، مما يزيل وحدة المعالجة المركزية المضيفة من المسار الحرج. وتستخدم اختيار المسار الواعي بالطوبولوجيا لتحسين حركة البيانات وتوظف نقل الشبكة القائم على RDMA، بما في ذلك InfiniBand و NVLink، لتمكين الوصول إلى الذاكرة بدون نسخ (Zero-copy) بين الأجهزة عبر عقد مادية مختلفة. يغطي المشروع مجموعة واسعة من أنماط الاتصال الجماعي، بما في ذلك الاختزالات، والبث، والتجميع، وتبادلات الكل إلى الكل، إلى جانب الوصول إلى الذاكرة عن بُعد من نقطة إلى نقطة. ويوفر إدارة شاملة للمتصلين لتهيئة وتقسيم وتغيير حجم مجموعات GPU، بالإضافة إلى إدارة ذاكرة متخصصة لتسجيل المخازن المؤقتة وتنسيق ذاكرة الجهاز المشتركة. يتضمن النظام مجموعة من أدوات المراقبة والقابلية للملاحظة لتتبع الصحة، وتسجيل التشخيص، ومراقبة الأحداث في الوقت الفعلي، بالإضافة إلى واجهات تكامل لإطارات عمل تعلم الآلة، و CUDA graphs، و MPI، و Python.
Maps user memory regions directly to network interfaces to eliminate intermediate CPU copies during data transfers.
MemoryPack is a high-performance binary serialization library for C# and Unity. It provides a zero-allocation data pipeline and a schema-evolution framework designed to minimize memory allocations and encoding overhead. The project utilizes compile-time source generators to avoid runtime reflection and implements a zero-encoding binary format for maximum throughput. It distinguishes itself through a zero-allocation approach that reuses object instances to reduce garbage collection pressure and copies the memory layout of unmanaged structs directly to binary streams. The library covers binary
Implements high-speed serialization by copying the memory layout of blittable structs directly to the output stream.
rkyv is a zero-copy deserialization framework for Rust that provides a binary serialization format for memory-mappable data archives. It allows complex data structures to be mapped to bytes and accessed directly from a buffer without allocating new memory or copying data. The project enables the serialization of polymorphic types and trait objects, maintaining their dynamic behavior and structure within the binary form. It utilizes relative-pointer addressing and byte-aligned structure packing to ensure data remains valid regardless of where it is loaded in memory. The framework covers high-
Maps byte buffers directly to memory addresses to enable data access without allocation or copying.