taskflow/3.7.0

A fast C++ header-only library to help you quickly write parallel programs with complex task dependencies.
Recipe info
2024-05-07

Available packages
Header Only

Install
Add the following line to your conanfile.txt:
[requires]
taskflow/3.7.0

Using taskflow

Note

If you are a new Conan user, we recommend reading the how to consume packages tutorial.

If you need additional assistance, please ask a question in the Conan Center Index repository.

Simplest use case consuming this recipe and assuming CMake as your local build tool:

[requires]
taskflow/3.7.0
[generators]
CMakeDeps
CMakeToolchain
[layout]
cmake_layout
from conan import ConanFile
from conan.tools.cmake import cmake_layout


class ExampleRecipe(ConanFile):
    settings = "os", "compiler", "build_type", "arch"
    generators = "CMakeDeps", "CMakeToolchain"

    def requirements(self):
        self.requires("taskflow/3.7.0")

    def layout(self):
        cmake_layout(self)

Now, you can run this Conan command to locally install (and build if necessary) this recipe and its dependencies (if any):

$ conan install conanfile.txt --build=missing

Useful information to take into account to consume this library:


These are the main declared targets:

  • CMake package name(s): Taskflow
  • CMake target name(s): Taskflow::Taskflow
  • pkg-config file name(s): taskflow.pc

A simple use case using the CMake file name and the global target:

# ...
find_package(Taskflow REQUIRED)
# ...
target_link_libraries(YOUR_TARGET Taskflow::Taskflow)

These are all the available headers. Some of these ones might be non-public; make sure of it by visiting the taskflow homepage listed above:

#include "taskflow/algorithm/critical.hpp"
#include "taskflow/algorithm/data_pipeline.hpp"
#include "taskflow/algorithm/find.hpp"
#include "taskflow/algorithm/for_each.hpp"
#include "taskflow/algorithm/launch.hpp"
#include "taskflow/algorithm/partitioner.hpp"
#include "taskflow/algorithm/pipeline.hpp"
#include "taskflow/algorithm/reduce.hpp"
#include "taskflow/algorithm/scan.hpp"
#include "taskflow/algorithm/sort.hpp"
#include "taskflow/algorithm/transform.hpp"
#include "taskflow/core/async.hpp"
#include "taskflow/core/async_task.hpp"
#include "taskflow/core/declarations.hpp"
#include "taskflow/core/environment.hpp"
#include "taskflow/core/error.hpp"
#include "taskflow/core/executor-module-opt.hpp"
#include "taskflow/core/executor.hpp"
#include "taskflow/core/flow_builder.hpp"
#include "taskflow/core/graph.hpp"
#include "taskflow/core/notifier.hpp"
#include "taskflow/core/observer.hpp"
#include "taskflow/core/semaphore.hpp"
#include "taskflow/core/task.hpp"
#include "taskflow/core/taskflow.hpp"
#include "taskflow/core/topology.hpp"
#include "taskflow/core/tsq.hpp"
#include "taskflow/core/worker.hpp"
#include "taskflow/cuda/algorithm/find.hpp"
#include "taskflow/cuda/algorithm/for_each.hpp"
#include "taskflow/cuda/algorithm/matmul.hpp"
#include "taskflow/cuda/algorithm/merge.hpp"
#include "taskflow/cuda/algorithm/reduce.hpp"
#include "taskflow/cuda/algorithm/scan.hpp"
#include "taskflow/cuda/algorithm/sort.hpp"
#include "taskflow/cuda/algorithm/transform.hpp"
#include "taskflow/cuda/algorithm/transpose.hpp"
#include "taskflow/cuda/cuda_capturer.hpp"
#include "taskflow/cuda/cuda_device.hpp"
#include "taskflow/cuda/cuda_error.hpp"
#include "taskflow/cuda/cuda_execution_policy.hpp"
#include "taskflow/cuda/cuda_graph.hpp"
#include "taskflow/cuda/cuda_memory.hpp"
#include "taskflow/cuda/cuda_meta.hpp"
#include "taskflow/cuda/cuda_object.hpp"
#include "taskflow/cuda/cuda_optimizer.hpp"
#include "taskflow/cuda/cuda_stream.hpp"
#include "taskflow/cuda/cuda_task.hpp"
#include "taskflow/cuda/cudaflow.hpp"
#include "taskflow/dsl/connection.hpp"
#include "taskflow/dsl/dsl.hpp"
#include "taskflow/dsl/meta_macro.hpp"
#include "taskflow/dsl/task_analyzer.hpp"
#include "taskflow/dsl/task_dsl.hpp"
#include "taskflow/dsl/task_trait.hpp"
#include "taskflow/dsl/tuple_utils.hpp"
#include "taskflow/dsl/type_list.hpp"
#include "taskflow/sycl/algorithm/reduce.hpp"
#include "taskflow/sycl/algorithm/sycl_for_each.hpp"
#include "taskflow/sycl/algorithm/sycl_transform.hpp"
#include "taskflow/sycl/sycl_execution_policy.hpp"
#include "taskflow/sycl/sycl_graph.hpp"
#include "taskflow/sycl/sycl_meta.hpp"
#include "taskflow/sycl/sycl_task.hpp"
#include "taskflow/sycl/syclflow.hpp"
#include "taskflow/taskflow.hpp"
#include "taskflow/utility/iterator.hpp"
#include "taskflow/utility/macros.hpp"
#include "taskflow/utility/math.hpp"
#include "taskflow/utility/object_pool.hpp"
#include "taskflow/utility/os.hpp"
#include "taskflow/utility/serializer.hpp"
#include "taskflow/utility/singleton.hpp"
#include "taskflow/utility/small_vector.hpp"
#include "taskflow/utility/stream.hpp"
#include "taskflow/utility/traits.hpp"
#include "taskflow/utility/uuid.hpp"