8 dépôts
Abstractions that transform sequential data structures into parallel streams for multi-threaded processing.
Distinct from Parallel Data Transformation: Distinct from Parallel Data Transformation: focuses on the iterator-based interface for data partitioning rather than general transformation logic.
Explore 8 awesome GitHub repositories matching data & databases · Parallel Iterators. Refine with filters or upvote what's useful.
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.
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.
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.
oneAPI Threading Building Blocks (oneTBB)
Provides parallelfor and parallelreduce algorithms that split data ranges into chunks for concurrent processing.
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.
ArrayFire est un framework de calcul agnostique au matériel et un moteur de tenseurs compilé JIT conçu pour le calcul numérique haute performance. Il sert de bibliothèque de calcul numérique GPU et de toolkit de traitement du signal parallèle qui abstrait les backends matériels, permettant à la même base de code de s'exécuter sur diverses architectures GPU et CPU. Le projet se distingue par un moteur JIT qui utilise la compilation d'expressions pour fusionner les opérations et minimiser la surcharge mémoire. Il emploie un graphe d'exécution différée pour optimiser les chaînes de calcul et fournit des primitives d'interopérabilité pour partager des données et des contextes d'exécution avec des plateformes de calcul externes comme CUDA et OpenCL. La bibliothèque couvre un large éventail de capacités, incluant l'algèbre linéaire parallèle, le traitement du signal numérique et la vision par ordinateur accélérée. Elle fournit des outils pour l'implémentation de l'apprentissage automatique, la simulation de modélisation financière et la résolution d'équations aux dérivées partielles pour les simulations de systèmes physiques. Son système de gestion de tenseurs gère l'allocation de tableaux multidimensionnels, le découpage et les transferts de données hôte-périphérique.
Distributes high-level loop iterations across physical hardware threads to maximize GPU and CPU throughput.
Async is a Swift library that provides a wrapper for Grand Central Dispatch to simplify the management of asynchronous tasks and queues. It functions as a task scheduler for the execution, timing, and orchestration of code blocks. The project includes a task chainer to sequence operations across different threads without nested callback structures and a concurrent loop wrapper that distributes iterations across multiple threads. It also features a token-based cancellation system to track and remove pending operations from the execution queue before they run. The library covers concurrency ma
Runs multiple blocks of code simultaneously by wrapping concurrent iteration functions to reduce total processing time.
ndarray est une bibliothèque de tableaux multidimensionnels pour Rust qui sert de framework d'algèbre linéaire et d'outil de calcul scientifique. Elle fournit l'infrastructure de base pour créer et manipuler des tableaux n-dimensionnels, fonctionnant à la fois comme un processeur de tableaux parallèle et une boîte à outils pour l'analyse de données numériques. La bibliothèque se distingue en fournissant un découpage (slicing) et des vues mémoire efficaces, permettant le partage de données sans copie. Elle tire parti de bibliothèques mathématiques backend optimisées pour la multiplication de matrices à haute vitesse et distribue les itérations mathématiques lourdes sur plusieurs threads CPU pour accélérer le traitement. Le projet couvre un large éventail d'opérations mathématiques, notamment l'arithmétique élément par élément, l'agrégation de données basée sur les axes et les calculs de produit scalaire. Elle inclut également des utilitaires complets pour la manipulation de tableaux tels que le remodelage, l'aplatissement, l'empilement et la génération de grilles de coordonnées, ainsi qu'une prise en charge de la génération de tableaux aléatoires et de la sérialisation.
Distributes element-wise operations and axis reductions across multiple CPU cores using parallel iterators.