Skip to content

Wrap remaining tbb:: calls under tf:: #5

Description

@ZigaSajovic

Most of our threading is wrapped under tf::, but a few tbb:: calls still leak through. Containing all of it in one place would make it straightforward to swap in taskflow, std::execution, or something else to see how they compare.

Usage Count Files
tbb::parallel_sort ~15 11
tbb::parallel_invoke ~20 9
tbb::task_group ~15 8
tbb::this_task_arena::max_concurrency ~4 4

current_thread_index is already behind tf::local_value, local_buffer, local_vector. Will need attention when porting though—same as how these can't cross task arena boundaries today.

Wrappers

tf::parallel_sort(range);
tf::parallel_sort(first, last, comp);

tf::parallel_invoke(f1, f2, ...);

tf::task_group tg;
tg.run([&] { ... });
tg.wait();

tf::max_concurrency();

Activity

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

      Milestone

      No milestone

      Relationships

      None yet

      Development

      No branches or pull requests

      Issue actions