28 repository-uri
Mechanisms for passing data between processes using shared memory to reduce latency.
Distinguishing note: Focuses on memory-efficient frame passing between threads.
Explore 28 awesome GitHub repositories matching data & databases · Shared Memory Buffers. Refine with filters or upvote what's useful.
QtScrcpy is a cross-platform desktop application designed for mirroring and controlling Android devices. It functions as a high-performance client that captures mobile display output and streams it to a computer monitor, enabling real-time interaction through a persistent connection. The application distinguishes itself by supporting the simultaneous management of multiple mobile devices from a single interface, allowing for batch operations and synchronized inputs. Users can map standard desktop mouse and keyboard actions to mobile touch events using custom scripts, facilitating efficient na
Passes decoded video frames between threads using efficient memory pointers to avoid copying.
PostgreSQL is an object-relational database management system designed for the persistent storage and retrieval of structured information. It functions as an ACID-compliant database server, utilizing standard query language protocols to maintain data consistency and reliability across large-scale application datasets. The system distinguishes itself through an extensible architecture that allows for the definition of custom data types, operators, and indexing methods. It employs multi-version concurrency control to enable simultaneous read and write operations without blocking, supported by a
Provides a global memory area for frequently accessed data pages to minimize disk I/O.
Tracy is a real-time performance profiling framework for C and C++ applications. It provides a software instrumentation library that captures high-resolution telemetry data, which is then visualized through a separate graphical interface to identify bottlenecks and resource allocation issues. The system utilizes a client-server architecture that enables remote profiling, allowing performance data to be captured on a target machine and analyzed on a workstation. It employs lock-free event logging and shared-memory ring buffers to minimize the overhead of data collection, ensuring that the main
Employs circular buffers in shared memory to store telemetry events with minimal overhead.
This project provides a full Python interpreter compiled to WebAssembly, enabling the execution of Python code and scientific libraries directly within web browsers and server-side environments. By bridging the gap between language runtimes, it allows developers to run computational tasks, manage packages, and perform data analysis in client-side environments without requiring a backend server. The platform distinguishes itself through a comprehensive foreign function interface that enables bidirectional data exchange, object proxying, and function calling between Python and JavaScript. It in
Enables high-performance data processing by transferring raw memory buffers and typed arrays between language runtimes.
MNN is a high-performance inference engine and framework designed for on-device machine learning. It provides a comprehensive environment for executing, optimizing, and deploying neural network models directly on mobile and resource-constrained edge devices. The framework distinguishes itself through a robust model optimization toolkit that supports quantization, compression, and structural graph manipulation to minimize memory footprint and maximize execution speed. It features a modular architecture that abstracts hardware-specific backends, allowing models to run efficiently across diverse
Minimizes resource overhead by sharing thread pools and memory buffers across multiple concurrent model execution sessions.
F Prime este un framework bazat pe componente, conceput pentru dezvoltarea și implementarea software-ului pentru sisteme embedded și zbor spațial. Acesta oferă o arhitectură modulară care decuplează logica software de interfețele de comunicare, permițând dezvoltatorilor să definească structurile sistemului printr-un limbaj de modelare specific domeniului. Această abordare bazată pe modele permite generarea automată de cod, asigurând consistența în topologii complexe de sistem, menținând în același timp contracte stricte de interfață între modulele software. Framework-ul se distinge prin sistemul său integrat de build și suita de operațiuni cu date la sol. Acesta automatizează întregul ciclu de viață al software-ului embedded, de la compilarea încrucișată și gestionarea dependențelor până la generarea interfețelor de telemetrie și comandă. Prin furnizarea unui mediu unificat atât pentru software-ul de zbor de la bord, cât și pentru monitorizarea la sol, facilitează integrarea, testarea și controlul sistemelor embedded distribuite pe diverse platforme hardware. Dincolo de arhitectura sa de bază, proiectul include instrumente cuprinzătoare pentru observabilitatea sistemului, inclusiv vizualizarea telemetriei în timp real, logarea evenimentelor și trasarea diagnosticelor. Acesta suportă o gamă largă de scenarii de implementare, de la medii bare-metal la sisteme de operare în timp real, și oferă mecanisme pentru gestionarea memoriei, modelarea comportamentului bazat pe stări și execuția asincronă a sarcinilor. Proiectul este menținut ca un depozit C++ cu documentație extinsă și suport pentru sistemul de build pentru dezvoltare multi-platformă.
Provides port-based memory allocation for data containers to support component-level data production.
The Android NDK samples provide a comprehensive collection of code examples demonstrating how to integrate C and C++ native code into Android applications. This repository serves as a practical guide for developers utilizing the Android Native Development Kit to implement performance-critical application components that require direct hardware access and low-level system interaction. The project highlights the use of the Java Native Interface to bridge managed code with native modules, enabling cross-language function calls and efficient data exchange. It demonstrates how to manage native act
Shares raw memory regions between managed and native layers to eliminate expensive data copying.
RealtimeSTT is a local speech-to-text engine and real-time automatic speech recognition server. It utilizes transformer-based recognition and omnilingual pipelines to convert live audio streams into text, providing a WebSocket-based streaming API for raw PCM audio transmission. The project is distinguished by a dual-backend transcription pipeline that uses a lightweight engine for immediate partial suggestions and a heavier model for final high-accuracy results. It includes a wake word detection system to trigger recording and employs a shared-resource inference model to distribute heavy spee
Loads heavy speech models into memory once and shares them across multiple concurrent user sessions to minimize overhead.
Napajs is an embeddable JavaScript engine and multi-threaded runtime designed to be integrated directly into other software applications as a component. It serves as a parallel computation framework that allows JavaScript code to execute across multiple threads, bypassing the standard single-threaded event loop limitation to handle CPU-intensive tasks. The runtime is distinguished by its ability to load and execute modules from the NPM ecosystem and its pluggable execution environment. This architecture allows for custom implementations of memory allocation, system logging, and performance me
Transports typed arrays via shared memory buffers to allow multiple threads to modify data without copying.
Torch7 is a scientific computing environment and tensor computation library used for deep learning research and numerical analysis. It functions as a Lua-based framework for training neural networks and learning agents, providing a toolkit for implementing architectures and training through reinforcement learning algorithms. The project is distinguished by its tight integration with C, utilizing a binding layer to map high-level scripting to low-level C structures for direct memory access. It supports hardware-accelerated computation by offloading linear algebra and convolution operations to
Creates new tensors that reference existing memory buffers to allow shared modifications without duplication.
wasm-bindgen is a glue code generator and interoperability tool that facilitates high-level communication and data exchange between compiled Rust modules and JavaScript environments. It functions as a memory bridge and type definition generator, allowing the exchange of complex data types and the calling of functions across execution boundaries. The project distinguishes itself by automating the conversion of data types and function signatures using attribute-based bindings. It generates the necessary JavaScript and WebAssembly wrappers to manage linear memory mapping and creates automatic Ty
Provides shared memory buffers and atomic operations to coordinate execution across multiple web worker threads.
Neon is a framework for writing high-performance native Node.js modules using the Rust programming language. It serves as a foreign function interface bridge and a toolchain for bootstrapping, compiling, and managing Rust-based extensions. The project provides a cross-language memory manager that handles buffers and object borrowing to ensure safe memory access between Rust and JavaScript. It enables the mapping of data types and function calls across the language boundary, allowing Rust functions to be exported to the script environment and JavaScript functions to be called from Rust. The f
Provides shared memory buffers to allow zero-copy data exchange between Rust and JavaScript.
ANE is an open-source framework for training neural networks directly on Apple's Neural Engine hardware, bypassing Apple's public Core ML toolchain through reverse-engineered private APIs. It provides low-level control over the ANE, enabling developers to compile custom compute graphs into binary kernels, partition transformer model layers into hardware-compatible subgraphs, and share GPU-allocated memory with the Neural Engine via zero-copy IOSurface buffers. The framework distinguishes itself by offering direct access to hardware performance counters and power telemetry for benchmarking thr
Shares GPU-allocated buffers directly with the Neural Engine via IOSurface to eliminate data copying.
fio este un instrument de benchmarking pentru performanța stocării și un generator sintetic de sarcini I/O. Acesta funcționează ca un profiler de dispozitive de stocare și un motor de replay pentru urme I/O, permițând măsurarea throughput-ului și a latenței pentru dispozitivele de stocare și sistemele de fișiere. Proiectul se distinge prin capacitatea sa de a acționa ca un tester de stres pentru stocarea distribuită, gestionând mai multe backend-uri de server la distanță printr-un singur controler pentru a evalua stocarea în rețea. Include, de asemenea, capabilități specializate pentru analiza deduplicării stocării prin generarea de buffere de date redundante pentru a testa eficiența subsistemelor de deduplicare. Instrumentul acoperă o gamă largă de capabilități, inclusiv simularea sarcinilor I/O complexe cu dimensiuni de bloc și adâncime I/O controlabile, analiza inactivității CPU și colectarea statisticilor dispozitivelor. Oferă observabilitate prin vizualizarea metricilor de performanță, histograme de latență și monitorizarea stării de echilibru (steady-state). Sarcinile pot fi declanșate prin argumente de linie de comandă sau fișiere de configurare detaliate pentru a automatiza scenarii complexe de benchmarking.
Uses shared-memory semaphore locks to coordinate execution and track the state of concurrent child processes.
opencv4nodejs este un set de wrappere JavaScript și un addon nativ C++ care oferă binding-uri Node.js pentru biblioteca OpenCV. Funcționează ca o bibliotecă de computer vision și framework de procesare a imaginilor, expunând algoritmi C++ de înaltă performanță către un mediu JavaScript. Proiectul permite executarea algoritmilor de viziune pentru detectarea fețelor, urmărirea obiectelor și analizarea datelor vizuale folosind rețele neuronale profunde. Include capabilități pentru clasificarea tiparelor de date, recunoașterea tiparelor de text și identificarea punctelor de reper faciale și a gesturilor. Framework-ul acoperă o suprafață largă de capabilități, inclusiv procesarea automată a imaginilor, recunoașterea optică a caracterelor și analiza video în timp real. Oferă instrumente pentru operațiuni aritmetice pe matrice, acces la datele pixelilor și gestionarea fișierelor imagine și a capturii video live. Gestionarea resurselor este realizată prin executarea asincronă a sarcinilor și urmărirea memoriei externe pentru a menține responsivitatea event loop-ului.
Utilizes shared memory buffers to pass large image matrices between JavaScript and C++ without expensive data copying.
monoio este un runtime asincron de înaltă performanță și un executor pentru Rust. Implementează un model de concurență thread-per-core care fixează sarcinile pe nuclee CPU specifice pentru a elimina overhead-ul de sincronizare și migrarea datelor. Runtime-ul utilizează interfața io_uring pentru a efectua apeluri de sistem non-blocante și pentru a reduce copierea memoriei între kernel și user mode. Utilizează un driver I/O de înaltă performanță și wrapping zero-copy pentru fluxuri TCP pentru a gestiona transferul de date prin buffere de memorie partajată. Proiectul oferă capabilități pentru gestionarea afinității nucleelor CPU, programarea sistemelor cu latență scăzută și rețelistică de înaltă performanță. Include un backend de driver I/O pluggable și configurații pentru blocarea memoriei pentru a menține buffere stabile între spațiul utilizatorului și cel al kernelului.
Uses shared-memory buffers to create stable communication channels between user space and kernel mode.
node-opencv este un addon nativ C++ de înaltă performanță și un bridge care conectează aplicațiile Node.js la biblioteca OpenCV. Servește ca toolkit de procesare a imaginilor și bibliotecă de computer vision, permițând codului JavaScript să execute algoritmi de viziune și operațiuni de manipulare a imaginilor prin binding-uri native. Proiectul oferă capabilități specializate pentru detectarea feței și a formelor, precum și recunoașterea identității faciale folosind modele antrenate. Include instrumente pentru urmărirea mișcării obiectelor prin flux optic și scăderea fundalului, alături de capacitatea de a identifica tipare specifice și de a analiza contururile formelor. Toolkit-ul acoperă o gamă largă de funcții de procesare a imaginilor, inclusiv analiza histogramelor de culoare, transformări geometrice și extracția de feature-uri prin detectarea marginilor. De asemenea, suportă gestionarea media prin încărcarea fișierelor de imagine, capturarea fluxului camerei live și randarea primitivelor geometrice direct pe bufferele de imagine.
Utilizes zero-copy image buffers to share raw pixel data between JavaScript and C++ without expensive copying.
Diffusion Policy is a robot learning framework that uses diffusion models to map visual observations to precise action trajectories. It functions as an imitation learning toolkit and visuomotor policy learner, providing a system to train neural networks that replicate human behavior by generating robotic movements based on image and sensor data. The framework employs a conditional denoising process to sample sequences of robotic movements, allowing it to handle multimodal action distributions where multiple valid trajectories may exist for a single state. It utilizes score-based action modeli
Employs shared-memory buffering to capture high-frequency camera data and reduce processing latency.
QtAV este un motor media cross-platform și un framework multimedia care combină decodarea FFmpeg cu framework-ul Qt pentru randarea audio și video. Funcționează ca un player video accelerat hardware, un renderer video OpenGL și un transcoder de fluxuri multimedia. Proiectul se distinge printr-un strat de decodare cu abstractizare hardware care utilizează interfețe GPU precum VA-API și VideoToolbox pentru a decoda video de înaltă rezoluție. Utilizează o cale de transfer de memorie de tip zero-copy pentru a muta datele video decodate direct către API-urile grafice, reducând overhead-ul CPU și permițând randarea YUV de înaltă performanță. Motorul acoperă o gamă largă de capabilități, inclusiv controlul redării multimedia, sincronizarea fluxurilor și extragerea metadatelor. Oferă instrumente pentru procesarea video prin shadere și filtre personalizate, precum și transcodarea media și capturarea cadrelor. Suportul de randare se extinde la conținut HDR, subtitrări de înaltă fidelitate și afișarea coperților de albume. Framework-ul se integrează direct cu bucla de evenimente și sistemul de semnale Qt pentru a lega controalele de redare și suprafețele de ieșire video la interfața utilizator.
Implements a zero-copy path to transfer decoded video data directly to GPU buffers, reducing CPU overhead.
This project is an X11 window system server that coordinates graphical output and input devices. It functions as a display server, a hardware driver manager for graphics and input modules, and a graphics server capable of rendering directly to a generic framebuffer. The server provides multi-seat display management to isolate input and display devices for different concurrent users. It also implements namespace isolation to separate clients and restrict resource access, preventing interference between different user sessions or processes. The system manages GPU driver integration through dyn
Transfers pixel data between clients and server using shared memory buffers for efficient graphical updates.