54 Repos
Systems for executing multiple tasks across projects in parallel while respecting dependency constraints.
Distinct from Task Scheduling: Focuses on parallel execution within a dependency-aware build system rather than general task scheduling.
Explore 54 awesome GitHub repositories matching software engineering & architecture · Parallel Task Executors. Refine with filters or upvote what's useful.
Lerna is a monorepo management tool, build orchestrator, and package publisher for JavaScript and TypeScript projects. It enables the management of multiple packages within a single shared repository, providing utilities for workspace organization and the coordinated publishing of packages to a registry. The tool distinguishes itself through dependency-aware task orchestration and automated version management. It uses topological sorting to sequence tasks and utilizes content-hash caching to skip redundant executions when input files remain unchanged. Versioning is automated by parsing standa
Runs independent scripts across multiple packages simultaneously while respecting dependency constraints.
This project is a build orchestration engine and development toolkit designed for managing large-scale monorepos. It provides a unified workspace environment that maps project relationships and dependencies, enabling the system to perform intelligent impact analysis and execute only the tasks affected by specific code changes. The system distinguishes itself through a persistent daemon that monitors file changes for near-instant feedback and a content-addressable caching mechanism that stores task outputs to prevent redundant computation across local and remote environments. It further suppor
Executes multiple tasks across projects in parallel while respecting dependency constraints to maximize build performance.
Async is a JavaScript asynchronous flow library designed to manage the execution and coordination of asynchronous tasks in Node.js and the browser. It provides functional utilities to wrap, process, and orchestrate complex asynchronous workflows. The library distinguishes itself through a comprehensive task orchestrator that handles dependency graphs to resolve circular references and manages concurrent task queues. It includes a unification bridge that allows callback-style and promise-based functions to operate within the same execution interface. The project covers several primary capabil
Spawns multiple concurrent operations within a shared scope and merges all results upon completion.
DataX is a distributed data integration framework and plugin-based ETL tool designed for synchronizing large datasets between heterogeneous sources and destinations. It functions as a JDBC data migration engine and offline synchronization tool, enabling the movement of data between relational databases, NoSQL stores, and object storage. The system utilizes a plugin-based connector architecture that decouples reader and writer logic, allowing it to map and transform data types across different storage engines using a standardized internal representation. This design supports heterogeneous data
Splits large datasets into concurrent tasks based on primary keys to increase synchronization speed.
This project is a collection of educational resources and reference implementations for the Apache Flink stream processing framework. It provides a learning resource focused on mastering distributed stream processing through implementation guides, performance tuning tutorials, and practical examples. The repository features detailed walkthroughs for building real-time data pipelines using the DataStream and Table APIs. It includes specific integration examples for connecting Apache Flink with Kafka brokers and Elasticsearch indices, as well as reference implementations for real-time deduplica
Controls parallelism by dividing task manager memory into fixed resource slots to isolate subtasks on a node.
Cargo is the official build system and package manager for the Rust programming language. It provides a unified command-line interface that orchestrates the entire development lifecycle, including compiling source code, managing complex dependency graphs, running tests, and distributing packages through a centralized registry. By utilizing declarative manifest files, it ensures that builds remain reproducible and consistent across different environments. The tool distinguishes itself through its deep integration with the Rust compiler and its sophisticated approach to project management. It f
Uses a jobserver protocol to manage concurrency across processes and respect system resource limits.
Workflow is an asynchronous C++ task engine designed for building distributed systems and high-performance network services. It provides a framework for orchestrating complex sequences of network, file, and computational operations, allowing developers to compose these tasks into parallel workflows. The library functions as a toolkit for implementing scalable servers and clients for protocols such as HTTP, Redis, MySQL, and Kafka. It distinguishes itself through a task-based concurrency model that manages non-blocking operations and coordinates service discovery, load balancing, and traffic r
Connects multiple asynchronous tasks into directed graphs to run dependent operations simultaneously while ensuring correct data flow.
PromiseKit is a future-based concurrency framework and promise library for Swift and Objective-C. It functions as an asynchronous workflow coordinator, representing the eventual result of an operation to simplify concurrency logic and replace nested callback structures. The framework enables the coordination of both sequential and parallel asynchronous tasks. It provides a structured pipeline for chaining operations, allowing the results of one task to be passed into the next and facilitating the execution of multiple operations simultaneously. The library includes a state-machine based reso
Spawns multiple concurrent operations within a shared scope and merges their results upon completion.
Rayon is a data parallelism library for Rust that provides a framework for converting sequential computations into parallel operations. It enables the transformation of standard data structures and loops into parallel iterators, allowing workloads to be distributed across multiple processor cores. By utilizing a work-stealing scheduler, the library dynamically balances tasks to maximize throughput and minimize execution time. The library distinguishes itself through its focus on safe, scoped task synchronization, which ensures that all spawned operations complete before a scope exits to preve
Spawns multiple operations within a shared scope to perform concurrent calculations and merge results.
This repository is a comprehensive collection of instructional guides and practical examples for Python development, focusing on machine learning, data science, and web scraping. It provides implementations for neural networks, reinforcement learning algorithms, and deep learning architectures using PyTorch, alongside detailed manuals for scientific computing and data visualization. The project distinguishes itself by offering specialized tutorials on concurrent programming to optimize CPU performance and guides for setting up Linux development environments. It covers the implementation of ad
Uses process pools to manage collections of worker processes for executing independent functions in parallel.
Coder is a self-hosted platform for provisioning and managing isolated, containerized development environments. It provides a centralized infrastructure for teams to deploy ephemeral workspaces on private cloud or on-premises hardware, ensuring consistent toolchains and dependencies across distributed development environments. The platform distinguishes itself through its focus on secure, infrastructure-as-code governance and autonomous agent integration. It allows organizations to define reusable, versioned environment templates that integrate with existing identity providers and role-based
Spawns independent sub-agents to handle concurrent work, maintaining focused context windows and improving performance for complex assignments.
Cpp-taskflow is a C++ task-parallelism framework and task graph scheduler designed to manage and execute complex dependency graphs of parallel tasks across CPU and GPU hardware. It provides a parallel algorithm library for high-performance implementations of reductions, sorts, pipelines, and iterations. The framework distinguishes itself through its ability to offload heavy computational workloads from a task graph to graphics processors for acceleration. It also includes a task profiling tool and a performance analysis interface for visualizing task execution flow and dependency structures t
Supports spawning multiple concurrent operations independently of the main graph to explore runtime parallelism.
co is a JavaScript generator control flow library and non-blocking workflow engine. It manages asynchronous logic by using generators and promises to simulate a synchronous coding style. The project transforms generator functions into standard functions that return promises, ensuring compatibility with non-generator interfaces. It also functions as a promise-based asynchronous orchestrator that executes multiple operations concurrently through the recursive resolution of nested promise collections. The library provides high-level primitives for asynchronous flow control and non-blocking work
Resolves nested arrays or objects of promises recursively to ensure complete parallel task execution.
Agent-S is a multimodal AI agent and LLM desktop automation framework designed to control operating systems through graphical user interface interactions. It functions as a computer use interface, utilizing vision-language grounding to translate natural language goals into precise screen coordinates and system actions. The project differentiates itself by combining structured accessibility tree inspection with vision-based element localization. It manages cross-application workflows by mapping conceptual descriptions to physical pixels and simulating low-level keyboard and mouse events to mov
Executes multiple task attempts in parallel to select the most successful outcome.
Modin is a distributed dataframe library and parallel data processing engine designed to handle large datasets that exceed system memory. It functions as a distributed computing framework that parallelizes data manipulation tasks across multiple CPU cores or clusters to increase throughput and avoid memory errors. The project mirrors the Pandas API, allowing for the distribution of data workflows without changing core code logic. It utilizes a pluggable backend interface, which enables users to switch between different distributed execution engines to optimize performance based on available h
Distributes individual dataframe operations across available hardware threads to maximize processing throughput.
conc is a Go concurrency library and structured concurrency framework providing primitives for managing parallel tasks, mapping slices, and collecting results. It implements a system for spawning scoped tasks to ensure all child processes complete before their parent exits. The library includes a goroutine pool manager to limit active concurrent processes and a panic-safe task runner that catches panics in goroutines and propagates stack traces to the parent. It also provides a concurrent map-reduce tool for transforming data slices and processing streams in parallel while maintaining the ori
Runs a collection of functions concurrently and aggregates results into a single data structure.
Quantaxis is a quantitative trading framework designed for building, backtesting, and executing automated strategies across global equities, futures, and cryptocurrencies. It integrates an event-driven backtesting engine, a multi-market execution gateway for order routing, and a quantitative data pipeline for ingesting and storing multi-asset market data. The system features a Rust-accelerated financial library that utilizes Apache Arrow for high-performance technical indicator calculation and zero-copy data processing. It provides a containerized infrastructure model designed for orchestrati
Executes computations across multiple threads and processes using parallel task executors.
SeaTunnel is a distributed data integration engine designed to synchronize structured and unstructured data across diverse sources and sinks. It functions as a multi-engine execution framework that can run data integration tasks across different distributed computing backends to optimize workload performance. The project is distinguished by a visual data pipeline designer for configuring workflows without manual code and a specialized change data capture tool for streaming incremental database updates. It also includes an enrichment pipeline that integrates large language models and embedding
Controls parallel execution by assigning task groups to specific resource slots to manage cluster concurrency.
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
Distributes recursive operations across multiple threads using promises to prevent deadlocks during sub-task completion.
Lefthook ist ein Git-Hook-Manager und Workflow-Automatisierer, der einen konfigurationsgesteuerten Ansatz verwendet, um Skripte zu verwalten, die durch Versionskontrollereignisse ausgelöst werden. Es fungiert als paralleler Task-Runner, der mehrere Skripte gleichzeitig ausführt, um die für Pre-Commit- oder Pre-Push-Prüfungen erforderliche Zeit zu reduzieren. Das Projekt bietet einen containerisierten Hook-Runner, um konsistente Abhängigkeiten und Toolsets auf verschiedenen Entwicklerrechnern sicherzustellen. Es unterstützt zudem die Monorepo-Orchestrierung durch die Ausführung von Skripten in spezifischen Unterverzeichnissen und die Verwaltung komplexer Projektstrukturen. Das System umfasst Funktionen für musterbasiertes Dateifiltern, um Qualitätssicherungsaufgaben nur auf geänderte Assets anzuwenden. Es unterstützt zudem die manuelle Aufgabenausführung, das Tagging und Gruppieren von Befehlen sowie lokale Konfigurations-Overrides für umgebungsspezifische Einstellungen.
Executes multiple independent shell commands in parallel to minimize the time spent waiting for hook completion.