docs/release-4-1-0.html
| | Taskflow: A General-purpose Task-parallel Programming System |
Loading...
Searching...
No Matches
Release 4.1.0 (2026/06/19)
Following v4.0, this release (v4.1) further modernizes the codebase with C++20 concepts to improve extensibility, readability, and type safety. It introduces new parallel algorithms, including N-dimensional parallel iteration and parallel merge, as well as a redesigned profiler that improves scalability by replacing D3-based rendering with Canvas. This release also expands the documentation with many new examples and tutorials to help users learn and adopt Taskflow more effectively.
Taskflow 4.1.0 can be downloaded here.
To use Taskflow v4.1.0, you need a compiler that supports C++20:
NoteIf your project does not support C++20, please use Taskflow v3.11.0, which can be downloaded here.
refactored the codebase with C++20 concept to enhance readability
added bulk cache update method in executor
added more unit tests to test_notifiers.cpp
added a new unittest test_partitioners.cpp
added module support under taskflow/modules/
added adopted module task to support composable tasking with move semantics
added a new parallel-for algorithm over a multi-dimensional index range
added a new parallel-merge algorithm tf::Taskflow::merge
improved the dump format with proper indention
improved the dump format of tf::Subflow with cluster-level edges
optimized executor member variable data layout to reduce false sharing
num_topologies to a cache linenotifier to a cache lineoptimized tf::Executor::run(Taskflow&&) with asynchronous tasking
optimized the locking cost of topology
introduced a new profiler to replace the existing tfprof
removed extra copy on dependency tasks when creating a dependent-async task
floor_log2 due to duplication with C++20 std::bit_widthcpu_pause due to platform-dependent implementationtf::Future<T> from std::future (#761)N is zero in for_each_by_indexfind_if where result is dangling under N=0tf::IndexRange::discrete_domain to tf::IndexRange::unravelNoteThe newest tfprof can only take .tfp generated by v4.1, which introduces a more efficient format to load by the browser than the previous version. For .tfp generated before v4.1, please refer to the old version of tfprof at pre-v4.0.
switched to the native doxygen for C++20 support
revised Cookbook
revised Composable Tasking
revised Profile Taskflow Programs
revised Parallel Iterations
revised Learning from Examples
revised Profile Taskflow Programs
added Parallel Merge
If you are interested in collaborating with us on applying Taskflow to your projects, please feel free to reach out to Dr. Tsung-Wei Huang!