9 repositorios
Iterators that partition data structures across multiple threads for parallel processing.
Distinct from Sequential Iterators: Distinct from Sequential Iterators: focuses on parallelizing data traversal rather than sequential access.
Explore 9 awesome GitHub repositories matching data & databases · Parallel Data Iterators. Refine with filters or upvote what's useful.
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
Tracks completion status and result indices of collection items to maintain original order during parallel processing.
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
Converts sequential data structures into parallel iterators to execute operations across multiple threads.
EnTT is a C++ library designed for data-oriented design and entity component system architecture. It provides a framework for managing game objects and simulation states by separating entity data from logic, allowing for the efficient organization and manipulation of large collections of related data objects. The library utilizes sparse sets to store entities and components in contiguous memory, which facilitates cache-friendly iteration and constant-time lookups. It employs template metaprogramming for compile-time type reflection and type-erasure techniques to provide a unified interface fo
Implements parallel iterators to traverse component pools efficiently for high-frequency simulation updates.
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
Splits data collections into individual units of work for concurrent processing across multiple Go routines.
more-itertools es una biblioteca de extensión para el módulo itertools de Python. Sirve como un toolkit para manipular iterables, proporcionando una amplia gama de rutinas para transformación de datos, generación combinatoria y gestión de estado de iteradores. La biblioteca se distingue por la gestión de estado avanzada y la generación de secuencias complejas. Proporciona capacidades para observar elementos futuros, buscar dentro de secuencias y producir permutaciones, combinaciones y particiones de conjuntos únicas a partir de colecciones que pueden contener elementos duplicados. Su superficie de capacidades más amplia cubre tareas de procesamiento de datos como aplanamiento recursivo, agrupación, relleno y reformateo de flujos de datos. También incluye utilidades para fusión de flujos, ventanas para análisis de vecindad local y sincronización de iteración segura para hilos. El proyecto proporciona además rutinas especializadas para el procesamiento de secuencias numéricas, incluyendo multiplicación de matrices, convolución lineal discreta y transformadas de Fourier.
Wraps iterators in stateful classes to provide advanced capabilities like peeking, seeking, and consumption tracking.
more-itertools is a Python iterable utility library providing advanced functions for manipulating, filtering, and transforming data sequences. It serves as a data stream processing toolkit and a set of utilities for iterator state management, extending the capabilities of the standard Python itertools module. The library includes a combinatorial math toolkit for generating permutations, combinations, and powersets, alongside routines for number theory calculations and matrix operations. It also provides tools for stream state management, allowing users to peek at upcoming elements or seek wit
Ships utilities for peeking at elements and seeking within streams to precisely control sequence consumption.
This repository provides a collection of fundamental computer science algorithms and data structures implemented in Go. It serves as a technical reference and educational resource, offering reusable modules for common computational tasks including data organization, graph analysis, and numerical operations. The library distinguishes itself through the application of idiomatic Go patterns, utilizing generics for type abstraction and interface-driven polymorphism to ensure compile-time type safety. It emphasizes algorithmic efficiency by employing in-place memory mutation to reduce allocations
Employs iterative state management to perform repetitive calculations efficiently while avoiding the stack overhead of deep recursion.
Este repositorio sirve como un recurso educativo completo y referencia técnica para implementar estructuras de datos y algoritmos fundamentales utilizando JavaScript. Proporciona una guía estructurada para dominar conceptos centrales de ciencias de la computación, enfocándose en la aplicación práctica de técnicas de organización de datos y estrategias de resolución de problemas dentro del ecosistema de JavaScript. Los materiales cubren la implementación de patrones de almacenamiento esenciales, incluyendo listas enlazadas, árboles y grafos, junto con el análisis de la eficiencia algorítmica. Al evaluar el tiempo de ejecución y el uso de memoria a través de la complejidad asintótica, el contenido permite a los desarrolladores comparar diferentes enfoques para tareas computacionales e identificar los métodos más eficientes para la recuperación y manipulación de datos. La colección admite la preparación para entrevistas técnicas detallando patrones estándar y lógica para resolver desafíos computacionales complejos. Aborda tanto enfoques iterativos como recursivos para la gestión de estado y la descomposición de problemas, proporcionando una base para escribir código de alto rendimiento en contextos de ingeniería de software profesional.
Manages internal state updates through sequential loops to avoid recursive overhead.
This project is a collection of classic computational algorithms and data structures implemented in JavaScript. It serves as a library of standardized procedures for sorting, searching, and graph traversal, alongside foundational data containers such as linked lists, heaps, trees, and hash tables. The library is designed to support computer science education and technical interview preparation by providing clean, readable implementations of fundamental principles. It emphasizes functional logic isolation and type-agnostic design, ensuring that computational tasks remain decoupled from applica
Uses internal pointers and iterative state management to maintain data structure integrity during operations.