23 Repos
Utilities for applying functions to data in parallel across distributed environments.
Distinguishing note: Focuses on parallel transformation logic rather than batch processing.
Explore 23 awesome GitHub repositories matching data & databases · Parallel Data Transformation. Refine with filters or upvote what's useful.
Ray is a distributed computing framework designed to scale Python and Java applications across clusters by abstracting task scheduling and resource management. It functions as a resource-aware execution engine that manages task dependencies, placement, and fault tolerance across networked compute nodes. At its core, the system provides a stateful actor model, allowing developers to define classes that run in dedicated processes to maintain and mutate internal state across remote method calls. The framework distinguishes itself through a robust cross-language interoperability layer, enabling f
Applies user-defined functions to dataset rows, automatically parallelizing work across the cluster.
Genesis World is an embodied AI simulation platform designed for training robotic agents through physics-based interactions. It centers on a multi-physics simulation engine that integrates rigid body, particle, and finite element method dynamics, supported by a parallel simulation kernel compiler that translates Python functions into optimized GPU and CPU kernels. The platform features a photorealistic robot renderer that utilizes path-tracing and Gaussian Splatting to generate synthetic training data. It includes a domain randomization framework to vary lighting and physical parameters acros
Accelerates data-parallel computations by distributing top-level simulation loop iterations across hardware threads.
Vector is a high-performance observability data pipeline designed to collect, transform, and route logs, metrics, and traces across distributed infrastructure. It functions as a modular engine that decouples data ingestion from processing and transmission, utilizing a component-based architecture to connect diverse sources to multiple destinations. The project distinguishes itself through a focus on reliability and flow control. It implements backpressure-aware data movement to prevent data loss during traffic spikes and utilizes disk-backed event buffering to ensure durability during network
Executes stateless data transformations in parallel to maximize throughput.
Datasets is a library designed for the management, processing, and sharing of large-scale data collections for machine learning workflows. It functions as both a data processing framework and a versioning platform, providing tools to organize, filter, and transform massive datasets while ensuring reproducibility across research and development teams. The library distinguishes itself by enabling the handling of datasets that exceed available system memory. It utilizes memory-mapped file access, disk-based caching, and lazy iterative streaming to maintain performance when working with large-sca
Distributes data transformation tasks across multiple CPU cores to accelerate filtering and processing pipelines.
Codon is an LLVM-based Python compiler and statically typed implementation that translates source code into optimized machine instructions. It functions as a high-performance numerical backend and a GPU computing framework designed to remove runtime overhead. The project implements a compiled alternative to NumPy, translating array logic directly into machine code. It differentiates itself by generating specialized hardware kernels for graphics processors and utilizing static type inference to enable aggressive machine-code optimization. The system provides capabilities for parallel workload
Distributes loop iterations across physical hardware threads to maximize CPU throughput.
Dask ist ein Framework für paralleles Rechnen und ein verteilter Task-Scheduler, der darauf ausgelegt ist, Python-Data-Science-Workflows von einzelnen Maschinen auf große Cluster zu skalieren. Es fungiert als Cluster-Ressourcenmanager, der die Berechnungslogik orchestriert, indem Aufgaben und deren Abhängigkeiten als gerichtete azyklische Graphen dargestellt werden. Diese Architektur ermöglicht es dem System, die Verteilung von Workloads auf verfügbare Hardware zu automatisieren und gleichzeitig komplexe Ausführungsanforderungen zu verwalten. Das Projekt zeichnet sich durch eine Lazy-Evaluation-Engine aus, die Datenoperationen verzögert, bis sie explizit angefordert werden, was eine globale Graphoptimierung und effiziente Ressourcenzuweisung ermöglicht. Es integriert speicherbewusstes Data-Spilling, um Systemabstürze bei der Verarbeitung von Datensätzen zu verhindern, die den verfügbaren Speicher überschreiten, und nutzt Task-Graph-Fusion, um Sequenzen von Operationen in einzelne Ausführungsschritte zu kombinieren, wodurch Scheduling-Overhead und Inter-Node-Kommunikation minimiert werden. Die Plattform bietet eine umfassende Oberfläche für die Datenanalyse im großen Maßstab, einschließlich Unterstützung für verteiltes maschinelles Lernen, Integration in das Hochleistungsrechnen und parallele Datenverarbeitung. Sie bietet umfangreiche Werkzeuge für das Cluster-Lebenszyklusmanagement, Performance-Profiling und die Echtzeitüberwachung der Aufgabenausführung. Benutzer können diese Umgebungen über verschiedene Infrastrukturen hinweg bereitstellen, einschließlich lokaler Hardware, Cloud-Anbietern, containerisierten Systemen und Hochleistungsrechner-Clustern.
Distributes computational tasks across multiple cores or networked machines to accelerate data analysis and handle datasets that exceed single-machine memory capacity.
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
Transforms sequential data structures into parallel iterators to partition work across multiple processor cores.
dbt-core is a command-line framework for transforming data within a warehouse using modular SQL and version control. It functions as a data transformation engine that enables users to define data structures and business logic through declarative configuration files, which the system then compiles into executable code. By managing complex data dependencies through a directed acyclic graph, it ensures that transformation tasks execute in the correct order while maintaining a manifest-driven state to track lineage and execution history. The project distinguishes itself through an adapter-based d
Executes multiple nodes of a data transformation graph concurrently to reduce total project runtime by adjusting active threads.
Ragas is an evaluation framework designed to measure the performance of retrieval-augmented generation pipelines and autonomous agent workflows. It provides a comprehensive suite of tools for benchmarking system outputs, utilizing language models as automated judges to score performance against defined rubrics and reference data. By standardizing inputs, retrieved contexts, and generated responses into a unified schema, the project enables consistent analysis across complex AI applications. The framework distinguishes itself through its ability to generate synthetic test datasets from existin
Runs multiple graph processing tasks simultaneously to improve efficiency when applying extractors or builders.
Taskflow is a C++ task-parallel framework designed to build high-performance parallel workflows and complex dependency graphs. It provides a programming model that organizes computational work into directed acyclic graphs, enabling developers to manage concurrency, resource scheduling, and task dependencies across multi-core CPUs and GPU accelerators. The framework distinguishes itself through its ability to orchestrate heterogeneous systems, allowing for the integration of hardware-accelerated kernels and memory operations into unified execution pipelines. It supports dynamic runtime subflow
Aggregates elements from a collection into a single result using parallel reduction patterns within a task graph.
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
Provides a concurrent map-reduce tool for transforming data slices and processing streams in parallel.
PocketFlow is a graph-based framework for designing and executing large language model operations and reasoning patterns. It serves as an orchestrator for building goal-oriented autonomous agents, multi-agent systems, and retrieval-augmented generation pipelines. The system is distinguished by its ability to coordinate autonomous AI agents that use shared memory and tools to solve complex goals, supported by a structured output engine that enforces schema-consistent responses. It utilizes graph-based workflow orchestration to manage sequences of model operations and supports supervisor-based
Splits large datasets into chunks for parallel processing and aggregates the results into a final output.
h2o-3 is a distributed machine learning platform and automated machine learning framework designed for training and deploying predictive models using distributed in-memory computing. It functions as a deep learning framework and a distributed model scoring engine, capable of operating as a Kubernetes ML cluster to process large datasets in parallel. The platform distinguishes itself through automated machine learning capabilities that automatically select the best algorithms and hyperparameters to optimize model performance. It provides specialized deep learning toolkits for tasks including i
Executes parallel tasks by moving computation to data nodes and aggregating the results at a central initiator.
oneAPI Threading Building Blocks (oneTBB)
Provides parallelfor and parallelreduce algorithms that split data ranges into chunks for concurrent processing.
Performs a distributed map-reduce operation across nodes with minimal code using a remote execution ability.
Osmedeus is a security workflow orchestration engine that coordinates AI agents, shell commands, and scanning tools through declarative YAML pipelines. It functions as a distributed security scanner, a declarative workflow automator, and an AI agent framework for security, enabling automated multi-step security analysis with conditional branching, parallel execution, and distributed workers. The engine distinguishes itself through a hybrid runner model that executes workflow steps on the local host, inside Docker containers, or over SSH to remote machines, selected per step or module. It supp
Processes lists of items in parallel within workflow steps using a foreach executor.
Provides utilities for performing single-pass map-reduce operations on arrays.
ArrayFire ist ein hardware-agnostisches Compute-Framework und eine JIT-kompilierte Tensor-Engine für numerische Hochleistungsberechnungen. Es dient als GPU-Bibliothek für numerische Berechnungen und Toolkit für parallele Signalverarbeitung, das Hardware-Backends abstrahiert und es ermöglicht, denselben Code auf verschiedenen GPU-Architekturen und CPUs auszuführen. Das Projekt zeichnet sich durch eine JIT-Engine aus, die Ausdruckskompilierung verwendet, um Operationen zu verschmelzen und den Speicher-Overhead zu minimieren. Es nutzt einen verzögerten Ausführungsgraphen zur Optimierung von Berechnungsketten und bietet Interoperabilitäts-Primitive, um Daten und Ausführungskontexte mit externen Compute-Plattformen wie CUDA und OpenCL zu teilen. Die Bibliothek deckt ein breites Spektrum an Fähigkeiten ab, einschließlich paralleler linearer Algebra, digitaler Signalverarbeitung und beschleunigter Computer Vision. Sie bietet Werkzeuge für die Implementierung von maschinellem Lernen, Simulationen für Finanzmodelle und die Lösung partieller Differentialgleichungen für physikalische Systemsimulationen. Das Tensor-Managementsystem verwaltet die Zuweisung mehrdimensionaler Arrays, Slicing sowie Datentransfers zwischen Host und Gerät.
Distributes high-level loop iterations across physical hardware threads to maximize GPU and CPU throughput.
Async ist eine Swift-Bibliothek, die einen Wrapper für Grand Central Dispatch bereitstellt, um die Verwaltung asynchroner Aufgaben und Warteschlangen zu vereinfachen. Sie fungiert als Task-Scheduler für die Ausführung, Zeitsteuerung und Orchestrierung von Codeblöcken. Das Projekt enthält einen Task-Chainer, um Operationen über verschiedene Threads hinweg ohne verschachtelte Callback-Strukturen zu sequenzieren, sowie einen Concurrent-Loop-Wrapper, der Iterationen über mehrere Threads verteilt. Zudem bietet es ein Token-basiertes Abbruchsystem, um ausstehende Operationen in der Ausführungswarteschlange zu verfolgen und zu entfernen, bevor sie ausgeführt werden. Die Bibliothek deckt das Concurrency-Management durch die Koordination asynchroner Gruppen und die Synchronisation mehrerer Aufgaben ab, um Aktionen bei kollektivem Abschluss auszulösen.
Runs multiple blocks of code simultaneously by wrapping concurrent iteration functions to reduce total processing time.
ndarray ist eine Bibliothek für mehrdimensionale Arrays für Rust, die als Framework für lineare Algebra und wissenschaftliches Rechnen dient. Sie bietet die Kerninfrastruktur für die Erstellung und Manipulation von n-dimensionalen Arrays und fungiert sowohl als paralleler Array-Prozessor als auch als Toolkit für numerische Datenanalysen. Die Bibliothek zeichnet sich durch effizientes Slicing und Memory-Views aus, was den Datenaustausch ohne Kopieren ermöglicht. Sie nutzt optimierte Backend-Mathe-Bibliotheken für schnelle Matrixmultiplikationen und verteilt rechenintensive mathematische Iterationen auf mehrere CPU-Threads, um die Verarbeitung zu beschleunigen. Das Projekt deckt ein breites Spektrum mathematischer Operationen ab, darunter elementweise Arithmetik, achsenbasierte Datenaggregation und Skalarproduktberechnungen. Zudem sind umfassende Hilfsprogramme für die Array-Manipulation enthalten, wie Reshaping, Flattening, Stacking und die Generierung von Koordinatengittern, sowie Unterstützung für die randomisierte Array-Generierung und Serialisierung.
Distributes element-wise operations and axis reductions across multiple CPU cores using parallel iterators.