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
·
cpp-taskflow avatar

cpp-taskflow/cpp-taskflow

0
View on GitHub↗
12,014 stars·1,396 forks·C++·4 vuestaskflow.github.io↗

Cpp Taskflow

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 to identify bottlenecks.

The library covers a broad range of parallel computing capabilities, including the orchestration of modular graph compositions and recursive subflows. It supports diverse execution patterns such as asynchronous task launching and conditional tasking to manage real-time control-flow decisions within a workflow.

Features

  • C++ Task Engines - Provides a high-performance C++ framework for composing asynchronous tasks and GPU-offloaded workloads into parallel graphs.
  • Execution Graphs - Provides a framework for constructing and managing directed acyclic graphs to execute interdependent tasks in parallel.
  • Heterogeneous Workflow Orchestrators - Integrates hardware-accelerated GPU kernels into unified parallel execution pipelines via a specialized runtime.
  • Task Schedulers - Features a task scheduler that manages execution order and dependencies to maximize core utilization and throughput.
  • GPU Acceleration Libraries - Provides libraries for offloading intensive scientific computations from the C++ execution graph to the GPU.
  • Headless GPU Compute Engines - Accelerates scientific workloads by executing general-purpose parallel calculations on the GPU without a display window.
  • High-Performance Computing - Implements high-performance parallel algorithms such as reductions and sorts for efficient processing of large datasets.
  • Parallel Algorithms - Ships a library of fundamental data-parallel operations, including parallel reductions and sorts.
  • Task Scheduling - Provides a scheduler that resolves complex task dependencies using directed acyclic graphs to maximize hardware utilization.
  • Dependency-Aware Task Orchestration - Ensures tasks execute in parallel only after their required prerequisites in the dependency structure are complete.
  • Recursive Parallel Patterns - Implements nested dependency structures within C++ workflows to handle recursive computations in parallel.
  • Parallel Execution Profilers - Provides diagnostic tools to analyze the performance of task-based programs and optimize work distribution.
  • Work-Stealing Schedulers - Implements work-stealing schedulers to dynamically balance computational tasks across available hardware threads.
  • Lock-Free Atomic Containers - Utilizes lock-free atomic containers for task submission and retrieval to minimize synchronization overhead between worker threads.
  • Conditional Branching - Implements logic for routing execution paths based on real-time control-flow decisions within the task graph.
  • Recursive Subflow Generators - Supports the dynamic generation of nested sub-graphs to handle recursive parallel workloads within a task flow.
  • Execution Graph Compositions - Implements modular graph compositions that allow pre-defined task blocks to be combined into larger, reusable workflows.
  • Parallel Task Spawning - Supports spawning multiple concurrent operations independently of the main graph to explore runtime parallelism.
  • Task Dependency Visualizers - Includes utilities for exporting and inspecting task graph structures to debug execution flows and identify bottlenecks.
  • Concurrency Libraries - Library for parallel task programming and scheduling.

Historique des stars

Graphique de l'historique des stars pour cpp-taskflow/cpp-taskflowGraphique de l'historique des stars pour cpp-taskflow/cpp-taskflow

Recherche par IA

Explorez plus de dépôts awesome

Décrivez vos besoins en langage naturel — l'IA classe des milliers de projets open source sélectionnés par pertinence.

Start searching with AI

Questions fréquentes

Que fait cpp-taskflow/cpp-taskflow ?

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.

Quelles sont les fonctionnalités principales de cpp-taskflow/cpp-taskflow ?

Les fonctionnalités principales de cpp-taskflow/cpp-taskflow sont : C++ Task Engines, Execution Graphs, Heterogeneous Workflow Orchestrators, Task Schedulers, GPU Acceleration Libraries, Headless GPU Compute Engines, High-Performance Computing, Parallel Algorithms.

Quelles sont les alternatives open-source à cpp-taskflow/cpp-taskflow ?

Les alternatives open-source à cpp-taskflow/cpp-taskflow incluent : taskflow/taskflow — Taskflow is a C++ task-parallel framework designed to build high-performance parallel workflows and complex dependency… dask/dask — Dask is a parallel computing framework and distributed task scheduler designed to scale Python data science workflows… parallel101/course — This project is a technical curriculum and set of educational resources focused on parallel programming,… crossbeam-rs/crossbeam — Crossbeam is a concurrency toolkit for Rust providing low-level primitives for writing multi-threaded programs. It… anthonycalandra/modern-cpp-features — This project is a comprehensive collection of reference materials, including a language cheatsheet, a standard library… nvidia/isaac-gr00t.

Alternatives open source à Cpp Taskflow

Projets open source similaires, classés selon le nombre de fonctionnalités partagées avec Cpp Taskflow.
  • 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

    C++concurrent-programmingcuda-programminggpu-programming
    Voir sur GitHub↗12,013
  • dask/daskAvatar de dask

    dask/dask

    13,746Voir sur GitHub↗

    Dask is a parallel computing framework and distributed task scheduler designed to scale Python data science workflows from single machines to large clusters. It functions as a cluster resource manager that orchestrates computational logic by representing tasks and their dependencies as directed acyclic graphs. This architecture allows the system to automate the distribution of workloads across available hardware while managing complex execution requirements. The project distinguishes itself through a lazy evaluation engine that defers data operations until they are explicitly requested, enabl

    Pythondasknumpypandas
    Voir sur GitHub↗13,746
  • 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

    C++coursecppcpp17
    Voir sur GitHub↗4,166
  • 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

    Rustconcurrencydata-structureslock-free
    Voir sur GitHub↗8,492
  • Voir les 30 alternatives à Cpp Taskflow→