release-2-4-0

# Release 2.4.0 (2020/03/25)

Download
release-2-4-0_1release-2-4-0_download
New Features
release-2-4-0_1release-2-4-0_new_features
Bug Fixes
release-2-4-0_1release-2-4-0_bug_fixes
Miscellaneous Items
release-2-4-0_1release-2-4-0_miscellaneous_items

Cpp-Taskflow 2.4.0 is the 6th release in the 2.x line! This release includes several new changes such as CPU-GPU tasking, improved scheduling flow, documentation, and unit tests.

# Download

Cpp-Taskflow 2.4.0 can be downloaded from here.

# New Features

- added tf::cudaFlow for concurrent CPU-GPU tasking (see GPU Tasking (cudaFlow))

- added a new method tf::Executor::num_topologies to query the number of running taskflows in an executor

- added std::hash support for tf::Task

- added a new work-stealing algorithm capable of general heterogeneous domains

- added unittests for CUDA work (enable by `-DTF_ENABLE_CUDA` during cmake)

# Bug Fixes

- fixed the bug in nested execution (#152)

- fixed the nameless union/struct extension warning in MS environment (#153)

- fixed the warning/error by changing the type of join counter to std::size (#137)

# Miscellaneous Items

- reflected the showcase presentation on CPU-GPU tasking