14 repository-uri
Strategies for partitioning parallel workloads across multiple physical processor cores.
Distinct from Multi-GPU Workload Distribution: Candidates are limited to GPU-specific distribution or networking cores, whereas this is general CPU multi-core scaling.
Explore 14 awesome GitHub repositories matching operating systems & systems programming · Multi-Core Workload Distribution. Refine with filters or upvote what's useful.
HVM2 is a high-performance execution environment for pure functional programs, implemented as a systems-level runtime in Rust. It functions as a massively parallel functional runtime that uses interaction combinators to achieve automatic parallelism across multi-core CPUs and GPUs. The project distinguishes itself by using a graph-rewriting computational model to execute programs via local reduction rules, which eliminates the need for manual locks or atomic operations. It employs beta-optimal reduction and lazy evaluation to optimize higher-order functions and eliminate redundant computation
Partitions functional workloads across multiple physical processor cores using a work-stealing scheduler.
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
Distributes computational workloads across multiple processor cores to ensure efficient hardware utilization.
oneAPI Threading Building Blocks (oneTBB)
Distributes workload across multiple processor cores without manual thread management, improving throughput on multi-core hardware.
OCaml is a strongly typed functional language featuring a sophisticated type system and a focus on safety and expressiveness. It provides a comprehensive compiling toolchain that transforms source code into either portable bytecode or high-performance native binaries. The project is distinguished by a shared memory parallel runtime that executes computations across multiple processor cores using domains, and an algebraic effect system for managing side effects and control flow through execution context handlers. It also includes a dedicated parser generator to automatically create lexers and
Provides a shared-memory parallel runtime that executes computations across multiple processor cores using domains.
BLAKE3 este o implementare de înaltă performanță a algoritmului de hashing criptografic BLAKE3, utilizat pentru calcularea digest-urilor de date securizate și a amprentelor digitale. Funcționează ca un instrument de hashing criptografic paralel care distribuie sarcinile de lucru pe mai multe fire de execuție ale procesorului pentru a procesa rapid seturi de date mari. Proiectul oferă instrumente specializate pentru hashing cu cheie și generarea de coduri de autentificare a mesajelor. Include, de asemenea, funcționalitate pentru derivarea cheilor criptografice, permițând crearea de sub-chei secrete unice dintr-o cheie master și șiruri de context. Implementarea suportă verificarea integrității datelor prin calculul hash paralel și streaming-ul verificat al datelor. Aceste capabilități sunt oferite ca o bibliotecă cross-language pentru medii Rust și C și includ o interfață de linie de comandă pentru calcularea digest-urilor fișierelor sau a input-ului standard.
Distributes the hash tree computation across multiple processor cores to accelerate large file processing.
seL4 is a formally verified microkernel whose C implementation is backed by machine-checked mathematical proofs of correctness, confidentiality, integrity, and availability. It enforces strict isolation between processes through hardware-enforced address space separation and a capability-based access control system, where each process holds explicit rights only to the resources it has been granted. The kernel exposes hardware resources through a minimal API of system calls that manage threads, address spaces, and inter-process communication, with synchronous IPC supporting sender-identifying b
Runs separate single-core kernel instances on each core for multi-core operation.
Leaf este un framework de server de jocuri scris în Go, conceput pentru construirea backend-urilor de jocuri multiplayer. Oferă o arhitectură modulară care organizează logica serverului în module independente și include un scheduler de task-uri concurente pentru gestionarea funcțiilor ordonate, întârziate sau recurente. Framework-ul dispune de un server TCP și WebSocket care gestionează conexiuni simultane printr-o singură interfață. Încorporează un router de mesaje capabil să decodeze date Protobuf și JSON pentru a mapa pachetele de rețea primite către module interne specifice ale serverului. Sistemul include capabilități pentru rutare de rețea multi-protocol, distribuția sarcinilor de lucru pe mai multe nuclee și logarea evenimentelor de sistem. De asemenea, oferă utilitare pentru încărcarea fișierelor de configurare CSV în structuri indexate rezidente în memorie pentru căutări rapide de date.
Distributes processing tasks across multiple physical CPU cores to handle a higher volume of simultaneous users.
nng este o bibliotecă de mesagerie fără broker și o implementare modernă a protocolului nanomsg. Oferă un transport de rețea asincron pentru comunicarea între procese distribuite, utilizând input și output non-blocking pentru a distribui traficul de rețea pe mai multe nuclee CPU. Biblioteca permite implementarea unor modele de mesagerie scalabile, cum ar fi request-reply și publish-subscribe, fără a fi nevoie de un broker de mesaje central. Include protocoale de criptare încorporate pentru a oferi un transport securizat al mesajelor și a proteja transmisiile de date între nodurile de rețea. Proiectul acoperă arhitectura sistemelor distribuite, inclusiv descoperirea serviciilor și mesageria inter-proces. Utilizează un strat de transport pluggable și o stivă de protocoale stratificată pentru a gestiona comunicarea prin diverse medii de rețea.
Distributes network workloads across multiple CPU cores using asynchronous operations to increase throughput.
Coconut este un limbaj de programare funcțional care compilează în Python. Funcționează ca un compilator sursă-la-sursă, traducând sintaxa funcțională de nivel înalt în cod Python compatibil pentru a menține compatibilitatea la runtime. Limbajul introduce un sistem logic pentru pattern matching și destructurarea structurilor de date complexe. Oferă un mecanism pentru optimizarea apelurilor terminale (tail call optimization) pentru a preveni erorile de stack overflow în timpul apelurilor recursive profunde și utilizează un motor de evaluare leneșă (lazy evaluation) pentru a amâna calculele până când rezultatele sunt explicit necesare. Proiectul include suport pentru tipuri de date algebrice, operatori de pipeline și aplicare parțială. De asemenea, oferă un framework pentru procesarea paralelă a datelor prin distribuirea operațiunilor de mapare pe mai multe nuclee CPU.
Provides a framework to split mapping operations across multiple CPU cores for parallel data processing.
pgBadger is a PostgreSQL log analyzer and database performance profiler that parses database logs to generate detailed reports on slow queries and system errors. It functions as a statistics visualizer, transforming raw logs into interactive charts and graphs to monitor system trends. The tool utilizes a multi-core log processor to distribute parsing across CPU cores, accelerating the analysis of large volumes of database activity logs. It provides a mechanism for remote log analysis by retrieving and parsing files from distant servers via secure shell connections. The system covers database
Utilizes multi-core parallel processing to accelerate the analysis of large database log files.
Mezzano is a self-hosted operating system written entirely in Common Lisp. It employs a language-integrated kernel architecture where both the kernel and user-space applications execute within a single, unified high-level language runtime. The system is designed for both bare-metal environments, booting from physical external media, and as a guest operating system within virtual machine software. It implements symmetric multiprocessing to distribute computational workloads across multiple CPU cores. The environment includes capabilities for automated memory recovery via generational garbage
Distributes computational tasks across multiple processor cores using symmetric multiprocessing to increase execution speed.
TinyOBJLoader is a single-header C++ library designed for parsing Wavefront OBJ files. It functions as a stream-based text parser that extracts vertex, normal, and texture data into structured arrays for use in graphics and physics engines. The project distinguishes itself as a high-performance geometry loader that utilizes multi-threading to distribute the processing of large-scale 3D environments across multiple CPU cores. It includes a mesh triangulator that converts complex polygons into triangles to ensure compatibility with standard graphics hardware. The library supports a variety of
Distributes the processing of large 3D model files across multiple CPU cores to reduce scene loading times.
tinyobjloader is a header-only C++ library for parsing Wavefront OBJ and MTL files. It extracts 3D mesh geometry, shape topology, and material definitions into memory, supporting the conversion of formatted text strings or files into vertex, normal, and texture coordinate data structures. The library provides a triangulation pipeline that converts complex, multi-vertex polygons into triangles using 2D projection and ear-clipping algorithms. It supports physically based rendering setups by extracting PBR material parameters and texture maps from material library files. To handle large dataset
Accelerates the conversion of large geometry files into vertex arrays using multi-threaded parallel parsing.
ISPC is a vectorizing compiler and SIMD parallel programming language that implements a single program multiple data model. It serves as a toolchain for translating C-based code with parallel extensions into optimized machine code for various CPU and GPU architectures using an LLVM backend. The compiler is designed for cross-platform SIMD toolchain support, generating specialized instruction sets for x86 SSE/AVX, ARM NEON, and Intel GPU from a single source. It features a runtime dispatch mechanism that selects the most efficient hardware-specific implementation for the current system during
Distributes vectorized workloads across multiple processor cores to achieve near-linear performance scaling.