15 repository-uri
Systems that maintain file consistency across multiple devices without manual intervention.
Distinguishing note: Focuses on the synchronization domain, distinct from general file management.
Explore 15 awesome GitHub repositories matching devops & infrastructure · Distributed Synchronization. Refine with filters or upvote what's useful.
Spacedrive is a decentralized storage client that functions as a distributed file manager, aggregating local, cloud, and network storage into a single virtual filesystem. It operates on a local-first design, prioritizing offline availability by caching metadata and file chunks locally before synchronizing them across devices. By coordinating data access without relying on a central server, it enables users to maintain a private and secure storage network across their own hardware and cloud accounts. The platform distinguishes itself through a virtual storage layer that maps disparate physical
Keeps files consistent across multiple devices and storage locations by automatically syncing changes in the background.
Beads is a versioned, dependency-aware graph database designed for distributed issue tracking and project management. It functions as an agentic workflow orchestrator, providing a structured environment where tasks, dependencies, and project metadata are linked through relational hierarchies. By maintaining a persistent, version-controlled record of project state, the system enables teams to manage complex work items across multiple repositories and environments. The platform distinguishes itself through its deep integration with automated coding agents, acting as a Model Context Protocol ser
Maintains a consistent, versioned record of project tasks and dependencies across distributed environments.
git-bug is a distributed bug tracker and local-first issue manager that stores bug reports and comments as versioned objects directly within a Git repository. It integrates project management by coupling issue history with source code, using Git as the transport layer to synchronize task data across multiple local clones. The system enables distributed bug tracking without relying on a central server or external hosting provider. It utilizes a local indexing cache to provide near-instant searching and filtering of issue metadata without network latency. The project further supports synchroni
Synchronizes issue tracker state across different machines using Git push and pull as the transport mechanism.
Asio is a C++ library for performing network and low-level I/O operations using a consistent asynchronous model that avoids blocking program execution. It provides a portable, cross-platform interface for network socket communication across different operating systems, and manages multiple asynchronous operations without requiring explicit thread management or locking. The library implements a proactor-based asynchronous model where operations post completion handlers to a queue for later execution, and wraps operating system I/O multiplexing mechanisms like epoll, kqueue, IOCP, and select in
Implements a proactor-based completion model where operations post handlers to a queue for later execution.
Concurrent Ruby is a comprehensive concurrency toolkit for the Ruby language that provides thread-safe data structures, synchronization primitives, and asynchronous execution patterns. It implements core concurrency abstractions including an actor model framework where isolated actors communicate through asynchronous message passing, a future and promise system for composing non-blocking operations, and thread pool executors that manage reusable worker threads for concurrent task execution. The library distinguishes itself through a broad set of coordination mechanisms that go beyond basic th
Implements a thread barrier that synchronizes a group of threads at a common point before proceeding.
This project provides a comprehensive toolset for WebGPU, serving as a graphics API wrapper, compute shader framework, resource manager, and shader toolchain. It enables browser-based GPU acceleration by offloading memory-intensive tasks and data processing from the CPU to the GPU. The framework manages the full lifecycle of GPU operations, from requesting physical hardware adapters and initializing logical devices to configuring programmable render and compute pipelines. It specifically supports the coordination of parallel workgroups and collective subgroup operations for general-purpose co
Ensures data consistency across concurrent invocations using memory barriers and async completion signals.
TileLang is a Python-embedded domain-specific language compiler that JIT-compiles and autotunes GPU kernels. It uses a tile-based DSL, automatic software pipelining, and parallel autotuning to generate optimized GPU kernels at runtime. It supports tensor core operations with Pythonic syntax, automatic memory management, and thread mapping. The compiler searches over tile sizes, thread counts, and scheduling policies, compiling and benchmarking candidates in parallel to find the fastest kernel. It also caches compiled binaries and tuning results to disk for reuse across sessions. TileLang inc
Allocates synchronization barriers for coordinating thread arrivals in GPU kernels.
Dramatiq is a distributed task queue and workload manager used to offload function execution to background workers. It functions as an asynchronous task orchestrator that enables the distribution of computational tasks across a cluster using a pluggable transport layer supporting RabbitMQ and Redis. The framework provides specialized tools for complex task orchestration, including the ability to link background jobs into sequences, pipelines, and barriers. It further manages distributed concurrency through the use of shared mutexes, rate limiters, and exponential backoff retries to prevent re
Coordinates multiple remote workers by blocking execution until a specific number of tasks reach a checkpoint.
NCCL este o bibliotecă de comunicare de înaltă performanță și un framework de calcul distribuit pe GPU, conceput pentru executarea schimburilor de date colective și punct-la-punct pe mai multe GPU-uri în sisteme cu un singur nod sau multi-nod. Servește ca strat de transport RDMA pentru GPU și orchestrator de memorie, facilitând sincronizarea cu lățime de bandă mare a datelor și a gradienților de model pentru antrenarea și inferența distribuită pe GPU. Biblioteca se distinge prin capacitatea sa de a executa primitive de comunicare direct din kernel-urile GPU, eliminând CPU-ul gazdă din calea critică. Utilizează selecția de căi conștientă de topologie pentru a optimiza mișcarea datelor și folosește transportul de rețea bazat pe RDMA, inclusiv InfiniBand și NVLink, pentru a permite accesul la memorie zero-copy între dispozitive pe diferite noduri fizice. Proiectul acoperă o gamă largă de tipare de comunicare colectivă, inclusiv reduceri, broadcast-uri, gather-uri și schimburi all-to-all, alături de accesul la memorie la distanță punct-la-punct. Oferă gestionare cuprinzătoare a comunicatorului pentru inițializarea, partiționarea și redimensionarea grupurilor GPU, precum și gestionarea specializată a memoriei pentru înregistrarea bufferelor și coordonarea memoriei partajate a dispozitivului. Sistemul include o suită de instrumente de monitorizare și observabilitate pentru urmărirea stării, logarea diagnostică și monitorizarea evenimentelor în timp real, precum și interfețe de integrare pentru framework-uri de machine learning, CUDA graphs, MPI și Python.
Executes network barriers across a group of peers to ensure all participating threads reach a common point.
Ignite este un framework de antrenament de nivel înalt pentru rețele neuronale PyTorch, care servește drept motor de antrenament și manager al ciclului de viață al deep learning-ului. Oferă un sistem structurat pentru organizarea și automatizarea buclelor de antrenament și evaluare, gestionând iteratoarele de date și declanșând handler-e de evenimente la etape specifice în timpul procesului de antrenare a modelului. Proiectul se distinge printr-o suită cuprinzătoare de instrumente pentru antrenament distribuit și evaluarea modelelor. Include utilitare pentru sincronizarea gradienților și coordonarea comunicării colective între mai multe GPU-uri sau noduri, precum și o suită de evaluare pentru calcularea metricilor de performanță și efectuarea validării încrucișate (k-fold cross-validation). Capabilitățile sale mai largi acoperă automatizarea fluxului de lucru de antrenament, inclusiv programarea ratei de învățare, oprirea timpurie (early stopping) și optimizarea hiperparametrilor. Framework-ul oferă, de asemenea, instrumente de observabilitate pentru urmărirea experimentelor, profilarea timpului de execuție și antrenamentul cu precizie mixtă pentru a optimiza utilizarea memoriei. Sunt incluse mecanisme de persistență a stării pentru a gestiona checkpoint-urile modelelor și a recupera sesiunile de antrenament. Sunt disponibile medii containerizate pentru a simplifica implementarea și configurarea mediului.
Provides coordination mechanisms that block process execution until all distributed nodes reach a common synchronization point.
SSH.NET is a .NET library that implements the SSH-2 protocol for encrypted remote connections and secure file transfers. It provides a complete SSH-2 protocol stack implementation with a channel multiplexing engine that manages multiple concurrent channels over a single connection, supporting simultaneous shell sessions, remote command execution, SFTP transfers, and port forwarding tunnels. The library includes a pluggable authentication pipeline supporting password, public key, certificate, keyboard-interactive, and multi-factor authentication combinations. The library distinguishes itself t
Encapsulates async operation results in base classes for consistent completion handling across all remote operations.
This project is a cross-platform graphics wrapper and translation layer that implements the OpenGL ES and EGL specifications. It functions as a graphics API bridge, mapping OpenGL ES calls and WebGL content to platform-specific hardware APIs such as Vulkan and Metal to ensure consistent rendering across different operating systems. The system features a shader translation service that validates shading language code and transpiles it into multiple target languages, including HLSL, SPIR-V, and Metal SL. It employs a pluggable backend architecture to select the appropriate hardware rendering AP
Issues read and write barriers for images and buffers to prevent data races between GPU operations.
Acest proiect este un framework cuprinzător pentru dezvoltarea aplicațiilor iOS, axat pe construirea de aplicații mobile care dispun de componente UI personalizate, gestionarea sarcinilor asincrone și persistența datelor locale. Servește drept bază de cunoștințe tehnice pentru ingineria software, oferind instrumente pentru a organiza și publica analize arhitecturale și note în format Markdown. Framework-ul se distinge printr-un strat de stocare robust bazat pe documente, care utilizează înregistrări formatate BSON pentru a efectua operațiuni CRUD într-un magazin de documente NoSQL. Oferă capabilități extinse de integrare a sistemului, inclusiv comunicarea specializată prin extensii de aplicație, trecerea mesajelor între sandbox-uri și prezentarea nativă a share sheet-ului, permițând o interacțiune fluidă între aplicația gazdă și serviciile la nivel de sistem. Proiectul acoperă o suprafață largă de capabilități, inclusiv gestionarea avansată a concurenței cu sincronizare thread-safe, descărcarea randării UI în fundal pentru a menține responsivitatea și suport cuprinzător pentru internaționalizare. Include, de asemenea, utilitare axate pe dezvoltatori pentru generarea de tipuri statice, maparea automată a resurselor și construcția de prototipuri interactive, alături de instrumente specializate pentru monitorizarea beacon-urilor geografice și generarea adaptivă de grafice.
Implements reader-writer locks using dispatch barriers to allow multiple simultaneous reads while ensuring exclusive access for writes.
cppcoro is a C++ coroutine library and concurrency toolkit providing primitives for asynchronous tasks, lazy generators, and non-blocking execution. It functions as an asynchronous I/O framework for managing network sockets and file operations through an event loop. The library features a work-stealing thread pool for distributing tasks across multiple cores and a set of async generators for producing lazy sequences of values both synchronously and asynchronously. It includes a concurrency toolkit with async mutexes, latches, and shared tasks to coordinate multi-threaded execution. Its capab
Implements asynchronous latches that suspend operations until a counter reaches zero.
AsyncEx is a .NET asynchronous synchronization library providing a collection of primitives to coordinate tasks and manage execution flow. It implements mechanisms for asynchronous resource locking, event signaling, and concurrency control to ensure correct execution order in environments supporting async/await. The library includes an asynchronous lock implementation to protect shared resources without blocking threads, an async semaphore controller to limit simultaneous operations, and an event signaling system to manage the startup and shutdown of asynchronous workflows. The toolkit cover
Coordinates the order and timing of multiple async operations using completion signals.