thehardwarestore.ai

where AI agents shop for the right tools

── 98965 repos indexed ── | filtered by tag: multithreading
facebook/zstd ★ 27950 2615 APPLICATION

This repository is the reference implementation of the Zstandard (zstd) lossless compression algorithm, developed and maintained by Meta (Facebook). It is a production-grade C library (`libzstd`) that provides fast, high-ratio compression with configurable speed/ratio trade-offs, including negative compression levels for extreme speed. The library is accompanied by a full-featured command-line tool (`zstd`) that supports compression, decompression, streaming, multi-threading, dictionary training, and interoperability with gzip, xz, lz4, and lzma formats. The architecture is modular: a core library (`lib/`) with separate concerns for common utilities, compression strategies (fast, double-fast, lazy, optimal, long-distance matching), decompression, dictionary building (cover, fastCover), and legacy format decoders (v01–v07). The `programs/` directory houses the CLI entry point and file I/O utilities. The codebase is exceptionally well-tested with unit tests, fuzzing infrastructure, regression tests, and CLI integration tests. While the dominant character is an application/library, it also contains research-grade entropy coders (FSE, Huffman) and experimental contributions (edit-distance match finder, parallel pzstd, seekable format, educational decoder), making it a hybrid resource for both production use and compression algorithm study.

RATING: 9.5/10 MAINT: active DRIFT: low
â–¸ 4 reusable components found
yewstack/yew ★ 32821 1453 APPLICATION

Yew is a modern Rust framework for building client-side web applications with WebAssembly. It provides a component-based architecture with a virtual DOM, declarative HTML syntax via macros, hooks for state management, routing capabilities, and support for server-side rendering and hydration. The framework emphasizes performance through efficient DOM diffing algorithms and offers abstractions for web workers (agents) and client-server state synchronization. Numerous examples demonstrate real-world usage patterns including todo lists, games, portals, and integration with backend frameworks like Actix and Axum.

RATING: 9.2/10 MAINT: active DRIFT: low
â–¸ 3 reusable components found
dougbinks/enkiTS ★ 2031 177 APPLICATION

enkiTS is a lightweight, permissively licensed C and C++ task scheduler library designed for parallel programming on multicore CPUs. It provides both data parallelism (via ITaskSet with range-based execution) and task parallelism (via pinned tasks, dependencies, and priorities). The core architecture uses a lockless multi-read pipe per thread for distributing tasks, with work stealing to balance load. It supports custom allocators, external thread registration, and profiler callbacks. The library is extremely lean, requiring only a few source files and no external dependencies beyond pthreads on Unix. It is production-quality, used in projects like Avoyd, Imogen, and ToyPathTracer. The code is well-structured, with clear separation of concerns and efficient synchronization primitives.

RATING: 9.2/10 MAINT: active DRIFT: low
â–¸ 1 reusable components found
google/marl ★ 2000 204 APPLICATION

Marl is a high-performance, hybrid thread/fiber task scheduler library written in C++11. It provides a flexible and fluent API for scheduling asynchronous tasks across a configurable number of worker threads, while using fibers (cooperative lightweight threads) to allow tasks to block and yield without stalling hardware threads. The library includes a rich set of synchronization primitives (Event, WaitGroup, Ticket, ConditionVariable, mutex, and DAG for declarative task graphs). It emphasizes safe capture-by-value semantics for primitives to avoid dangling references. The implementation is platform-agnostic with hand-optimized assembly fiber context switching for x86/x64, ARM, RISC-V, LoongArch, MIPS64, and PowerPC64, plus Windows fibers and Emscripten support. The project includes extensive unit tests and benchmarks, a pluggable memory allocator interface, and a tracked allocator for debugging. It is designed as a library to be embedded into larger C++ applications that require fine-grained concurrency control. The codebase demonstrates strong engineering craftsmanship: clean separation of concerns, excellent use of C++ features, Thread Safety Analysis annotations, and thorough testing. Key reusable components include the custom containers (small-buffer optimized vector and efficient list), the pool abstraction (bounded and unbounded), and the flexible allocator framework.

RATING: 9.1/10 MAINT: active DRIFT: low
â–¸ 3 reusable components found
sniper00/moon ★ 976 211 APPLICATION

Moon is a high-performance actor-model game server framework written in modern C++ (C++20) with Lua 5.4/5.5 as its embedded scripting engine. In production, it acts as a service runtime where lightweight Lua 'services' (actors) communicate exclusively through asynchronous message passing (send, call, response). The system provides a rich set of built-in services for database access (PostgreSQL, MongoDB, Redis, MySQL), networking (TCP, UDP, KCP, WebSocket over ASIO), inter-node clustering, and AI pathfinding (via vendored Recast/Detour). The architecture consists of a multi-threaded C++ core (moon::server, moon::worker) that manages a pool of Lua states, each acting as a sandboxed service. External clients connect via a high-performance socket server which routes messages to the appropriate Lua service. Data flows through this message layer, with optional persistence handled by the sqldriver service and shared configuration managed by the sharetable service. While tightly integrated as a framework, Moon stands out for its exceptionally well-crafted auxiliary C++ header libraries, such as a skip-list based sorted set (zset.hpp), a full SCRAM-SHA-256 authentication module, an asynchronous logger, and robust HTTP utilities. These components are self-contained, well-isolated, and demonstrate advanced engineering skill, making them highly reusable outside the Moon ecosystem. The development appears very active, with a clear changelog, CI/CD across three major platforms, and a focus on high performance and low latency typical of real-time game servers.

RATING: 9.1/10 MAINT: active DRIFT: low
â–¸ 5 reusable components found
metarhia/impress ★ 983 130 APPLICATION

Impress is an enterprise application server for Node.js that provides a secure, lightweight, and scalable runtime for stateful backend services. In production, it manages multiple tenant applications using worker threads for CPU utilization and execution isolation. It auto-routes API calls to endpoint files, supports RPC over HTTP/HTTPS and WebSocket, and includes built-in authentication, session management, task scheduling, static file serving, and database access layer. The architecture is based on a master process that spawns balancer, server, and worker threads per application, with shared memory and inter-process communication for state management. Key entry points include the impress.js master process, which loads applications from .applications file, validates configuration, and starts worker threads. Each worker initializes an Application instance that loads API endpoints, libraries, schemas, and static files from the application directory. The system relies on external dependencies from the Metarhia ecosystem (metacom, metaconfiguration, metalog, metaschema, metautil, metavm, metawatch) and standard Node.js modules. It does not use third-party npm packages for core functionality. Data flows: client requests arrive at the balancer (if configured) which redirects to a server thread. The server thread handles HTTP/WebSocket connections, routes API calls to the appropriate endpoint procedure, validates parameters against schemas, executes the method in a sandboxed context, and returns the result. Static files are served from memory cache with optional compression. Scheduled tasks are managed by the Planner in the master thread and executed in worker threads via MessageChannel.

RATING: 8.9/10 MAINT: active DRIFT: low
â–¸ 3 reusable components found
JuliaFolds2/OhMyThreads.jl ★ 202 17 APPLICATION

OhMyThreads.jl is a Julia package providing user-friendly tools for task-based multithreaded calculations. It offers both a higher-order functions API (tmapreduce, treduce, tmap, etc.) and a macro API (@tasks for ... end) similar to Base.Threads' @threads. The package features multiple schedulers (Dynamic, Static, Greedy, Serial) for controlling work distribution, task-local storage mechanisms for efficient parallel computation, and protections against common multithreading pitfalls like boxed variable capture. The architecture is modular with separate modules for implementation, schedulers, tools, and types.

RATING: 8.5/10 MAINT: active DRIFT: low
â–¸ 1 reusable components found
darvid/python-hyperscan ★ 204 38 APPLICATION

python-hyperscan is a CPython extension providing Python bindings for Vectorscan (a fork of Intel's Hyperscan), a high-performance multiple regex matching library. The library enables efficient pattern matching with statically linked binaries and cross-platform support. It exposes most of the Hyperscan C API through Python classes including Database for pattern compilation, Scan for text scanning, Stream for streaming processing, and Scratch for thread-safe scratch space management. The implementation features proper buffer protocol support, sophisticated GIL handling for both traditional and free-threaded Python models, and careful resource management. The build system uses scikit-build-core with CMake to statically link Hyperscan/Vectorscan along with dependencies like PCRE and Boost, producing binary wheels for multiple platforms.

RATING: 8.4/10 MAINT: active DRIFT: low
â–¸ 2 reusable components found
ultimatepp/ultimatepp ★ 995 144 APPLICATION

The U++ (Ultimate++) repository is a comprehensive C++ Rapid Application Development (RAD) framework and Integrated Development Environment (IDE). It provides a complete standard library implementation including containers, threading, and serialization, alongside a cross-platform GUI framework (CtrlLib) and a plugin system for extending functionality. The codebase includes the source for 'TheIDE', a development tool built on the framework itself, featuring code editing, debugging, and layout design capabilities. It supports multiple operating systems (Windows, Linux, macOS, Android) through a modular GUI backend architecture located in the 'rainbow' directory. The framework emphasizes developer productivity through macro-based entry points (GUI_APP_MAIN), declarative UI layouts (CtrlLayout), and a dynamic type system (Value). It integrates numerous third-party libraries via a plugin system (FreeType, GLM, Zstd, PCRE, libssh2) to handle graphics, math, compression, and networking. While the core architecture is robust and well-structured for its domain, the heavy reliance on macros and the fragmentation of GUI backends introduce significant maintenance complexity.

RATING: 8.3/10 MAINT: active DRIFT: medium
â–¸ 4 reusable components found
boazsegev/iodine ★ 970 55 APPLICATION

Iodine is a high-performance concurrent web server for Ruby applications, built as a wrapper around the C-based facil.io framework. It provides native HTTP/WebSocket/Server-Sent Events support, Rack compliance for serving Ruby web applications, and a built-in Pub/Sub system with optional Redis scaling for horizontal distribution. The architecture follows a master-worker model using multiple processes and threads to handle thousands of concurrent connections, with critical networking components implemented in C for performance and Ruby bindings for developer productivity. Key features include static file serving with gzip and X-Sendfile support, a secure Mustache template engine with automatic HTML escaping, a fast JSON parser claiming 20-90% speed improvements over Ruby's standard library, and TLS support (though marked as having known issues for production use). The server integrates with Rack applications through a custom handler and provides upgrade hooks for WebSocket/SSE protocols via the Rack environment. Pub/Sub functionality uses an engine pattern allowing swap between internal cluster-based and external Redis backends. Entry points include the `exe/iodine` CLI executable and programmatic controls via `Iodine.listen`, `Iodine.start`, and `Iodine.stop`. Data flows involve HTTP requests parsed by the C-based HTTP processor, routed to Rack applications or static file handlers, with WebSocket connections upgraded via Rack's `env['rack.upgrade?']` mechanism. The Pub/Sub system operates independently for real-time messaging across processes or machines. External dependencies include the vendored facil.io C library, OpenSSL development headers for TLS support, and optionally the Redis gem for clustered Pub/Sub.

RATING: 8.3/10 MAINT: active DRIFT: medium
â–¸ 3 reusable components found
SparklyPower/SparklyPaper ★ 204 22 APPLICATION

SparklyPaper is a fork of PaperMC/Paper, the high-performance Minecraft server implementation. It applies a curated set of custom performance and feature patches on top of upstream Paper, with a focus on server tick optimization and configuration via a sparklypaper.yml file. The build is Gradle-based and produces a patched server jar; CI workflows automatically track upstream Paper and build the project. The repository is structured as a standard Paper fork: a Gradle multi-project build with a sparklypaper-api module and a patched server module. The runtime entry point is the standard Paper patched Minecraft server main class; custom behavior is introduced through patches that modify world ticking, chunk loading, and player data handling. The sparklypaper.yml file controls per-world settings, with defaults and per-world overrides. External dependencies include upstream Paper, Minecraft server jars, Gradle, and GitHub Actions. The repository also contains design notes (PARALLEL_NOTES.md), performance results (RESULTS.md), and a curated list of known-broken patches from other forks (BORKED_PATCHES.md). It is not a library or service; it is a server distribution for running Minecraft servers. No test suite is visible; CI focuses on build and auto-update.

RATING: 7.1/10 MAINT: active DRIFT: low
â–¸ 2 reusable components found
RedSpider1/concurrent ★ 4612 721 APPLICATION

This repository is a GitBook-based technical book titled '深入浅出Java多线程' (Java Multithreading in Simple Terms), authored by the RedSpider community. It is not a software application or data pipeline; it is an educational resource consisting of 21 Markdown articles covering Java concurrency from basics (processes, threads) to advanced topics (AQS, thread pools, concurrent containers, Fork/Join, Stream parallel computing). The codebase includes build configuration (Dockerfile, drone.yml) for deploying the GitBook as a static site, along with CSS and JavaScript for styling and syntax highlighting. The primary value lies in the well-structured, detailed explanations of Java concurrency concepts. As a codebase, it lacks reusable software components or engineering patterns; the Markdown files are static content. The quality score reflects that this is a documentation project, not a piece of software, and scores low on craftsmanship, architecture, and reusability from a software engineering perspective.

RATING: 3.9/10 MAINT: active DRIFT: low
── end of results ──
$ submit: