awesome-repositories.com
Blog
awesome-repositories.com

Découvrez les meilleurs dépôts open-source grâce à notre recherche par IA.

ExplorerRecherches sélectionnéesAlternatives open sourceLogiciels auto-hébergésBlogPlan du site
ProjetÀ proposNotre méthodologiePresseServeur MCP
Mentions légalesConfidentialitéConditions d'utilisation
© 2026 Bringes Technology SRL·VAT RO45896025·hello@awesome-repositories.com
·

13 dépôts

Awesome GitHub RepositoriesParallel Algorithms

Implementations of fundamental data-parallel operations for high-performance computing.

Distinct from Parallel Matrix Operations: Focuses on general-purpose parallel algorithms like sorting and reduction, distinct from specific scan or matrix operations.

Explore 13 awesome GitHub repositories matching scientific & mathematical computing · Parallel Algorithms. Refine with filters or upvote what's useful.

Awesome Parallel Algorithms GitHub Repositories

Trouvez les meilleurs dépôts grâce à l'IA.Nous recherchons les dépôts les plus pertinents grâce à l'IA.
  • anthonycalandra/modern-cpp-featuresAvatar de AnthonyCalandra

    AnthonyCalandra/modern-cpp-features

    21,765Voir sur GitHub↗

    This project is a comprehensive collection of reference materials, including a language cheatsheet, a standard library reference, and a concurrency reference. It serves as a guide to modern C++ development, focusing on language syntax, standard library utilities, and template metaprogramming patterns. The repository provides specific guidance on template metaprogramming through a dedicated guide covering compile-time evaluation, type deduction, and variadic template execution. The materials cover a broad range of capabilities, including asynchronous programming, memory management, and system

    Details the execution of standard library search and sort operations across multiple processor cores.

    cppcpp11cpp14
    Voir sur GitHub↗21,765
  • dask/daskAvatar de dask

    dask/dask

    13,746Voir sur GitHub↗

    Dask est un framework de calcul parallèle et un planificateur de tâches distribué conçu pour mettre à l'échelle les flux de travail de science des données Python, des machines uniques aux grands clusters. Il fonctionne comme un gestionnaire de ressources de cluster qui orchestre la logique computationnelle en représentant les tâches et leurs dépendances sous forme de graphes acycliques dirigés. Cette architecture permet au système d'automatiser la distribution des charges de travail sur le matériel disponible tout en gérant des exigences d'exécution complexes. Le projet se distingue par un moteur d'évaluation paresseuse qui diffère les opérations sur les données jusqu'à ce qu'elles soient explicitement demandées, permettant une optimisation globale du graphe et une allocation efficace des ressources. Il intègre le déversement de données conscient de la mémoire pour éviter les plantages du système lors du traitement de jeux de données dépassant la mémoire disponible, et il utilise la fusion de graphes de tâches pour combiner des séquences d'opérations en étapes d'exécution uniques, minimisant la surcharge de planification et la communication entre nœuds. La plateforme fournit une surface de capacités complète pour l'analyse de données à grande échelle, incluant le support pour l'apprentissage automatique distribué, l'intégration du calcul haute performance et le traitement de données parallèle. Elle offre des outils étendus pour la gestion du cycle de vie des clusters, le profilage des performances et la surveillance en temps réel de l'exécution des tâches. Les utilisateurs peuvent déployer ces environnements sur diverses infrastructures, incluant le matériel local, les fournisseurs cloud, les systèmes conteneurisés et les clusters de calcul haute performance.

    Wraps standard functions into lazy execution graphs that can be evaluated in parallel across threads or distributed clusters.

    Pythondasknumpypandas
    Voir sur GitHub↗13,746
  • srush/gpu-puzzlesAvatar de srush

    srush/GPU-Puzzles

    12,242Voir sur GitHub↗

    GPU-Puzzles is an interactive learning environment and tutorial designed for mastering CUDA GPU kernel development. It serves as an educational tool and lab where users solve coding puzzles to understand how to map high-level logic to low-level GPU hardware instructions. The platform focuses on teaching parallel computing concepts and GPU architecture. Users practice developing parallel algorithms and managing GPU memory through a series of hands-on challenges. The environment utilizes a bridge between Python and CUDA to execute kernels and provide real-time feedback by validating outputs ag

    Provides practical training in developing parallel algorithms to improve performance on CUDA-supported hardware.

    Jupyter Notebookcudamachine-learningpuzzles
    Voir sur GitHub↗12,242
  • cpp-taskflow/cpp-taskflowAvatar de cpp-taskflow

    cpp-taskflow/cpp-taskflow

    12,014Voir sur GitHub↗

    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

    Ships a library of fundamental data-parallel operations, including parallel reductions and sorts.

    C++
    Voir sur GitHub↗12,014
  • taskflow/taskflowAvatar de taskflow

    taskflow/taskflow

    12,013Voir sur GitHub↗

    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

    Provides a comprehensive suite of parallel algorithms for data processing, such as sorting, reduction, and prefix sums.

    C++concurrent-programmingcuda-programminggpu-programming
    Voir sur GitHub↗12,013
  • dusty-nv/jetson-inferenceAvatar de dusty-nv

    dusty-nv/jetson-inference

    8,734Voir sur GitHub↗

    jetson-inference is a set of libraries and tools for executing optimized deep learning models on embedded GPU hardware. Its primary purpose is to enable real-time computer vision and AI inference at the edge with low latency and high throughput. The project distinguishes itself through high-performance streaming analytics and the ability to execute concurrent AI pipelines on auto-grade silicon. It provides specialized support for multi-sensor stream processing, utilizing zero-copy data transport to load camera frames directly into GPU memory. The codebase covers a broad surface of capabiliti

    Provides GPU-accelerated implementations of fundamental data-parallel operations like sort, scan, and reduction.

    C++caffecomputer-visiondeep-learning
    Voir sur GitHub↗8,734
  • crossbeam-rs/crossbeamAvatar de crossbeam-rs

    crossbeam-rs/crossbeam

    8,492Voir sur GitHub↗

    Crossbeam is a concurrency toolkit for Rust providing low-level primitives for writing multi-threaded programs. It focuses on lock-free data structures and memory management primitives designed for shared-memory concurrent environments. The project includes a work-stealing scheduler that uses double-ended queues to balance workloads across multiple processor cores. This system enables the implementation of work-stealing deques to distribute tasks and prevent bottlenecks. The toolkit covers broader capabilities for parallel algorithm development, multi-threaded task scheduling, and general co

    Enables the development of complex parallel algorithms while maintaining strict data consistency.

    Rustconcurrencydata-structureslock-free
    Voir sur GitHub↗8,492
  • uxlfoundation/onetbbAvatar de uxlfoundation

    uxlfoundation/oneTBB

    6,678Voir sur GitHub↗

    oneAPI Threading Building Blocks (oneTBB)

    Provides parallel versions of common algorithms like for_each, reduce, and sort for data-parallel programming.

    C++composabilityflowgraphheterogeneousprogramming
    Voir sur GitHub↗6,678
  • nvidia/isaac-gr00tAvatar de NVIDIA

    NVIDIA/Isaac-GR00T

    6,222Voir sur GitHub↗

    Offloads C++17 parallel algorithms from the STL to NVIDIA GPUs without requiring directives or annotations.

    Jupyter Notebook
    Voir sur GitHub↗6,222
  • balloonwj/cppguideAvatar de balloonwj

    balloonwj/CppGuide

    6,030Voir sur GitHub↗

    CppGuide is a curated collection of educational resources and practical guides focused on C++ server development, Linux kernel internals, concurrent programming, network protocols, and security exploitation. It provides structured learning paths for backend developers, covering everything from interview preparation to building high-performance network servers and understanding operating system fundamentals. The guide distinguishes itself by offering in-depth, hands-on tutorials that walk through real-world implementations, including building a Redis-like server from scratch, designing custom

    Provides tutorials on executing standard algorithms in parallel using C++ execution policies.

    Voir sur GitHub↗6,030
  • nvidia/thrustAvatar de NVIDIA

    NVIDIA/thrust

    5,003Voir sur GitHub↗

    Thrust est une bibliothèque d'algorithmes parallèles C++ qui fournit une suite d'interfaces inspirées de la bibliothèque standard pour une exécution sur du matériel multi-cœur et accélérateur. Elle sert de bibliothèque de données accélérée par CUDA et d'interface de programmation parallèle générique conçue pour permettre un traitement de données haute performance sur GPU et CPU. Le projet implémente une couche d'abstraction portable qui permet des flux de travail informatiques hétérogènes, permettant à la même logique d'algorithme de base de s'exécuter sur différents accélérateurs matériels. Ceci est réalisé grâce à une conception de politique de programmation générique et un modèle d'exécution agnostique du backend qui mappe les appels fonctionnels de haut niveau vers le matériel parallèle. La bibliothèque couvre un large éventail de capacités de calcul haute performance, y compris la manipulation de données parallèles, les réductions numériques et la gestion de la mémoire de périphérique. Elle fournit des outils spécialisés pour transférer des données entre la mémoire du système hôte et la mémoire du périphérique discret afin de faciliter les opérations à grande échelle comme le tri et la recherche.

    Provides parallel versions of C++ Standard Template Library (STL) algorithms optimized for device-side execution.

    C++algorithmscppcpp11
    Voir sur GitHub↗5,003
  • thrust/thrustAvatar de thrust

    thrust/thrust

    5,003Voir sur GitHub↗

    Thrust est une bibliothèque de calcul hétérogène et une bibliothèque de modèles C++ qui fournit une collection de modèles de haut niveau pour exécuter des opérations de données parallèles. Elle fonctionne comme une bibliothèque d'algorithmes parallèles conçue pour fonctionner sur différents backends matériels, incluant les CPU multicœurs et le matériel GPU NVIDIA. Le framework utilise une implémentation header-only et une interface de politique de programmation générique pour abstraire les différences entre les modèles de mémoire et d'exécution CPU et GPU. Il emploie une abstraction de données basée sur les itérateurs pour fournir une interface uniforme d'accès aux éléments à travers la RAM hôte et la VRAM du périphérique. La bibliothèque couvre des capacités de traitement parallèle, incluant le tri de données parallèle et le traitement de réduction agrégée pour calculer des valeurs sur de grands jeux de données. Ces opérations sont gérées via une bibliothèque de programmation parallèle CUDA pour le calcul haute performance sur matériel GPU.

    Provides a comprehensive collection of high-level parallel algorithms for data-parallel operations.

    C++
    Voir sur GitHub↗5,003
  • parallel101/courseAvatar de parallel101

    parallel101/course

    4,166Voir sur GitHub↗

    This project is a technical curriculum and set of educational resources focused on parallel programming, high-performance computing, and systems programming. It provides a structured course covering the implementation of parallel algorithms and multithreading techniques for processing large datasets. The project includes a systems programming guide for modern language features, a framework for lock-free concurrency patterns, and a manual for optimizing CPU and GPU performance through assembly analysis and cache management. The material covers hardware performance tuning, the implementation o

    Implements fundamental data-parallel operations such as reductions, scans, and matrix multiplication.

    C++coursecppcpp17
    Voir sur GitHub↗4,166
  1. Home
  2. Scientific & Mathematical Computing
  3. Parallel Algorithms

Explorer les sous-tags

  • Parallel Algorithm TrainingEducational practice focusing on the implementation and optimization of data-parallel algorithms. **Distinct from Parallel Algorithms:** Focuses on the training and practice aspect rather than just the implementation of the algorithms themselves.
  • Standard C++ Parallel Algorithm OffloadsOffloads C++17 parallel algorithms from the STL to NVIDIA GPUs without requiring directives or annotations. **Distinct from Parallel Algorithms:** Distinct from Parallel Algorithms: focuses specifically on offloading standard C++ parallel algorithms to GPUs, not general-purpose parallel algorithm implementations.