tbb::strict_ppl Namespace Reference

For internal use only. More...

## Namespaces

| internal

## Classes

class | concurrent_queue
| A high-performance thread-safe non-blocking concurrent queue. More...

## Functions

template<typename Index , typename Function , typename Partitioner >
void | parallel_for_impl (Index first, Index last, Index step, const Function &f, Partitioner &partitioner)
| Implementation of parallel iteration over stepped range of integers with explicit step and partitioner. More...
template<typename Index , typename Function >
void | parallel_for (Index first, Index last, Index step, const Function &f)
| Parallel iteration over a range of integers with a step provided and default partitioner. More...
template<typename Index , typename Function >
void | parallel_for (Index first, Index last, Index step, const Function &f, const simple_partitioner &partitioner)
| Parallel iteration over a range of integers with a step provided and simple partitioner. More...
template<typename Index , typename Function >
void | parallel_for (Index first, Index last, Index step, const Function &f, const auto_partitioner &partitioner)
| Parallel iteration over a range of integers with a step provided and auto partitioner. More...
template<typename Index , typename Function >
void | parallel_for (Index first, Index last, Index step, const Function &f, const static_partitioner &partitioner)
| Parallel iteration over a range of integers with a step provided and static partitioner. More...
template<typename Index , typename Function >
void | parallel_for (Index first, Index last, Index step, const Function &f, affinity_partitioner &partitioner)
| Parallel iteration over a range of integers with a step provided and affinity partitioner. More...
template<typename Index , typename Function >
void | parallel_for (Index first, Index last, const Function &f)
| Parallel iteration over a range of integers with a default step value and default partitioner. More...
template<typename Index , typename Function >
void | parallel_for (Index first, Index last, const Function &f, const simple_partitioner &partitioner)
| Parallel iteration over a range of integers with a default step value and simple partitioner. More...
template<typename Index , typename Function >
void | parallel_for (Index first, Index last, const Function &f, const auto_partitioner &partitioner)
| Parallel iteration over a range of integers with a default step value and auto partitioner. More...
template<typename Index , typename Function >
void | parallel_for (Index first, Index last, const Function &f, const static_partitioner &partitioner)
| Parallel iteration over a range of integers with a default step value and static partitioner. More...
template<typename Index , typename Function >
void | parallel_for (Index first, Index last, const Function &f, affinity_partitioner &partitioner)
| Parallel iteration over a range of integers with a default step value and affinity partitioner. More...
template<typename Index , typename Function , typename Partitioner >
void | parallel_for_impl (Index first, Index last, Index step, const Function &f, Partitioner &partitioner, tbb::task_group_context &context)
| Implementation of parallel iteration over stepped range of integers with explicit step, task group context, and partitioner. More...
template<typename Index , typename Function >
void | parallel_for (Index first, Index last, Index step, const Function &f, tbb::task_group_context &context)
| Parallel iteration over a range of integers with explicit step, task group context, and default partitioner. More...
template<typename Index , typename Function >
void | parallel_for (Index first, Index last, Index step, const Function &f, const simple_partitioner &partitioner, tbb::task_group_context &context)
| Parallel iteration over a range of integers with explicit step, task group context, and simple partitioner. More...
template<typename Index , typename Function >
void | parallel_for (Index first, Index last, Index step, const Function &f, const auto_partitioner &partitioner, tbb::task_group_context &context)
| Parallel iteration over a range of integers with explicit step, task group context, and auto partitioner. More...
template<typename Index , typename Function >
void | parallel_for (Index first, Index last, Index step, const Function &f, const static_partitioner &partitioner, tbb::task_group_context &context)
| Parallel iteration over a range of integers with explicit step, task group context, and static partitioner. More...
template<typename Index , typename Function >
void | parallel_for (Index first, Index last, Index step, const Function &f, affinity_partitioner &partitioner, tbb::task_group_context &context)
| Parallel iteration over a range of integers with explicit step, task group context, and affinity partitioner. More...
template<typename Index , typename Function >
void | parallel_for (Index first, Index last, const Function &f, tbb::task_group_context &context)
| Parallel iteration over a range of integers with a default step value, explicit task group context, and default partitioner. More...
template<typename Index , typename Function >
void | parallel_for (Index first, Index last, const Function &f, const simple_partitioner &partitioner, tbb::task_group_context &context)
| Parallel iteration over a range of integers with a default step value, explicit task group context, and simple partitioner. More...
template<typename Index , typename Function >
void | parallel_for (Index first, Index last, const Function &f, const auto_partitioner &partitioner, tbb::task_group_context &context)
| Parallel iteration over a range of integers with a default step value, explicit task group context, and auto partitioner. More...
template<typename Index , typename Function >
void | parallel_for (Index first, Index last, const Function &f, const static_partitioner &partitioner, tbb::task_group_context &context)
| Parallel iteration over a range of integers with a default step value, explicit task group context, and static partitioner. More...
template<typename Index , typename Function >
void | parallel_for (Index first, Index last, const Function &f, affinity_partitioner &partitioner, tbb::task_group_context &context)
| Parallel iteration over a range of integers with a default step value, explicit task group context, and affinity_partitioner. More...

## Detailed Description

For internal use only.

## Function Documentation

## parallel_for() [1/20]

template<typename Index , typename Function >

void tbb::strict_ppl::parallel_for | ( | Index | first,
|  | Index | last,
|  | const Function & | f
| ) |  |

Parallel iteration over a range of integers with a default step value and default partitioner.

Definition at line 315 of file tbb/parallel_for.h.

{
parallel_for_impl<Index,Function,const auto_partitioner>(first, last, static_cast<Index>(1), f, auto_partitioner());
}
tbb::internal::last
auto last(Container &c) -> decltype(begin(c))
Definition: _range_iterator.h:40
tbb::internal::first
auto first(Container &c) -> decltype(begin(c))
Definition: _range_iterator.h:34

References tbb::internal::first(), and tbb::internal::last().

Here is the call graph for this function:

## parallel_for() [2/20]

template<typename Index , typename Function >

void tbb::strict_ppl::parallel_for | ( | Index | first,
|  | Index | last,
|  | const Function & | f,
|  | affinity_partitioner & | partitioner
| ) |  |

Parallel iteration over a range of integers with a default step value and affinity partitioner.

Definition at line 335 of file tbb/parallel_for.h.

{
parallel_for_impl(first, last, static_cast<Index>(1), f, partitioner);
}
tbb::strict_ppl::parallel_for_impl
void parallel_for_impl(Index first, Index last, Index step, const Function &f, Partitioner &partitioner, tbb::task_group_context &context)
Implementation of parallel iteration over stepped range of integers with explicit step,...
Definition: tbb/parallel_for.h:342

References tbb::internal::first(), tbb::internal::last(), and parallel_for_impl().

Here is the call graph for this function:

## parallel_for() [3/20]

template<typename Index , typename Function >

void tbb::strict_ppl::parallel_for | ( | Index | first,
|  | Index | last,
|  | const Function & | f,
|  | affinity_partitioner & | partitioner,
|  | tbb::task_group_context & | context
| ) |  |

Parallel iteration over a range of integers with a default step value, explicit task group context, and affinity_partitioner.

Definition at line 403 of file tbb/parallel_for.h.

{
parallel_for_impl(first, last, static_cast<Index>(1), f, partitioner, context);
}

References tbb::internal::first(), tbb::internal::last(), and parallel_for_impl().

Here is the call graph for this function:

## parallel_for() [4/20]

template<typename Index , typename Function >

void tbb::strict_ppl::parallel_for | ( | Index | first,
|  | Index | last,
|  | const Function & | f,
|  | const auto_partitioner & | partitioner
| ) |  |

Parallel iteration over a range of integers with a default step value and auto partitioner.

Definition at line 325 of file tbb/parallel_for.h.

{
parallel_for_impl<Index,Function,const auto_partitioner>(first, last, static_cast<Index>(1), f, partitioner);
}

References tbb::internal::first(), and tbb::internal::last().

Here is the call graph for this function:

## parallel_for() [5/20]

template<typename Index , typename Function >

void tbb::strict_ppl::parallel_for | ( | Index | first,
|  | Index | last,
|  | const Function & | f,
|  | const auto_partitioner & | partitioner,
|  | tbb::task_group_context & | context
| ) |  |

Parallel iteration over a range of integers with a default step value, explicit task group context, and auto partitioner.

Definition at line 393 of file tbb/parallel_for.h.

{
parallel_for_impl<Index,Function,const auto_partitioner>(first, last, static_cast<Index>(1), f, partitioner, context);
}

References tbb::internal::first(), and tbb::internal::last().

Here is the call graph for this function:

## parallel_for() [6/20]

template<typename Index , typename Function >

void tbb::strict_ppl::parallel_for | ( | Index | first,
|  | Index | last,
|  | const Function & | f,
|  | const simple_partitioner & | partitioner
| ) |  |

Parallel iteration over a range of integers with a default step value and simple partitioner.

Definition at line 320 of file tbb/parallel_for.h.

{
parallel_for_impl<Index,Function,const simple_partitioner>(first, last, static_cast<Index>(1), f, partitioner);
}

References tbb::internal::first(), and tbb::internal::last().

Here is the call graph for this function:

## parallel_for() [7/20]

template<typename Index , typename Function >

void tbb::strict_ppl::parallel_for | ( | Index | first,
|  | Index | last,
|  | const Function & | f,
|  | const simple_partitioner & | partitioner,
|  | tbb::task_group_context & | context
| ) |  |

Parallel iteration over a range of integers with a default step value, explicit task group context, and simple partitioner.

Definition at line 388 of file tbb/parallel_for.h.

{
parallel_for_impl<Index,Function,const simple_partitioner>(first, last, static_cast<Index>(1), f, partitioner, context);
}

References tbb::internal::first(), and tbb::internal::last().

Here is the call graph for this function:

## parallel_for() [8/20]

template<typename Index , typename Function >

void tbb::strict_ppl::parallel_for | ( | Index | first,
|  | Index | last,
|  | const Function & | f,
|  | const static_partitioner & | partitioner
| ) |  |

Parallel iteration over a range of integers with a default step value and static partitioner.

Definition at line 330 of file tbb/parallel_for.h.

{
parallel_for_impl<Index,Function,const static_partitioner>(first, last, static_cast<Index>(1), f, partitioner);
}

References tbb::internal::first(), and tbb::internal::last().

Here is the call graph for this function:

## parallel_for() [9/20]

template<typename Index , typename Function >

void tbb::strict_ppl::parallel_for | ( | Index | first,
|  | Index | last,
|  | const Function & | f,
|  | const static_partitioner & | partitioner,
|  | tbb::task_group_context & | context
| ) |  |

Parallel iteration over a range of integers with a default step value, explicit task group context, and static partitioner.

Definition at line 398 of file tbb/parallel_for.h.

{
parallel_for_impl<Index,Function,const static_partitioner>(first, last, static_cast<Index>(1), f, partitioner, context);
}

References tbb::internal::first(), and tbb::internal::last().

Here is the call graph for this function:

## parallel_for() [10/20]

template<typename Index , typename Function >

void tbb::strict_ppl::parallel_for | ( | Index | first,
|  | Index | last,
|  | const Function & | f,
|  | tbb::task_group_context & | context
| ) |  |

Parallel iteration over a range of integers with a default step value, explicit task group context, and default partitioner.

Definition at line 383 of file tbb/parallel_for.h.

{
parallel_for_impl<Index,Function,const auto_partitioner>(first, last, static_cast<Index>(1), f, auto_partitioner(), context);
}

References tbb::internal::first(), and tbb::internal::last().

Here is the call graph for this function:

## parallel_for() [11/20]

template<typename Index , typename Function >

void tbb::strict_ppl::parallel_for | ( | Index | first,
|  | Index | last,
|  | Index | step,
|  | const Function & | f
| ) |  |

Parallel iteration over a range of integers with a step provided and default partitioner.

Definition at line 289 of file tbb/parallel_for.h.

{
parallel_for_impl<Index,Function,const auto_partitioner>(first, last, step, f, auto_partitioner());
}

References tbb::internal::first(), and tbb::internal::last().

Here is the call graph for this function:

## parallel_for() [12/20]

template<typename Index , typename Function >

void tbb::strict_ppl::parallel_for | ( | Index | first,
|  | Index | last,
|  | Index | step,
|  | const Function & | f,
|  | affinity_partitioner & | partitioner
| ) |  |

Parallel iteration over a range of integers with a step provided and affinity partitioner.

Definition at line 309 of file tbb/parallel_for.h.

{
parallel_for_impl(first, last, step, f, partitioner);
}

References tbb::internal::first(), tbb::internal::last(), and parallel_for_impl().

Here is the call graph for this function:

## parallel_for() [13/20]

template<typename Index , typename Function >

void tbb::strict_ppl::parallel_for | ( | Index | first,
|  | Index | last,
|  | Index | step,
|  | const Function & | f,
|  | affinity_partitioner & | partitioner,
|  | tbb::task_group_context & | context
| ) |  |

Parallel iteration over a range of integers with explicit step, task group context, and affinity partitioner.

Definition at line 376 of file tbb/parallel_for.h.

{
parallel_for_impl(first, last, step, f, partitioner, context);
}

References tbb::internal::first(), tbb::internal::last(), and parallel_for_impl().

Here is the call graph for this function:

## parallel_for() [14/20]

template<typename Index , typename Function >

void tbb::strict_ppl::parallel_for | ( | Index | first,
|  | Index | last,
|  | Index | step,
|  | const Function & | f,
|  | const auto_partitioner & | partitioner
| ) |  |

Parallel iteration over a range of integers with a step provided and auto partitioner.

Definition at line 299 of file tbb/parallel_for.h.

{
parallel_for_impl<Index,Function,const auto_partitioner>(first, last, step, f, partitioner);
}

References tbb::internal::first(), and tbb::internal::last().

Here is the call graph for this function:

## parallel_for() [15/20]

template<typename Index , typename Function >

void tbb::strict_ppl::parallel_for | ( | Index | first,
|  | Index | last,
|  | Index | step,
|  | const Function & | f,
|  | const auto_partitioner & | partitioner,
|  | tbb::task_group_context & | context
| ) |  |

Parallel iteration over a range of integers with explicit step, task group context, and auto partitioner.

Definition at line 366 of file tbb/parallel_for.h.

{
parallel_for_impl<Index,Function,const auto_partitioner>(first, last, step, f, partitioner, context);
}

References tbb::internal::first(), and tbb::internal::last().

Here is the call graph for this function:

## parallel_for() [16/20]

template<typename Index , typename Function >

void tbb::strict_ppl::parallel_for | ( | Index | first,
|  | Index | last,
|  | Index | step,
|  | const Function & | f,
|  | const simple_partitioner & | partitioner
| ) |  |

Parallel iteration over a range of integers with a step provided and simple partitioner.

Definition at line 294 of file tbb/parallel_for.h.

{
parallel_for_impl<Index,Function,const simple_partitioner>(first, last, step, f, partitioner);
}

References tbb::internal::first(), and tbb::internal::last().

Here is the call graph for this function:

## parallel_for() [17/20]

template<typename Index , typename Function >

void tbb::strict_ppl::parallel_for | ( | Index | first,
|  | Index | last,
|  | Index | step,
|  | const Function & | f,
|  | const simple_partitioner & | partitioner,
|  | tbb::task_group_context & | context
| ) |  |

Parallel iteration over a range of integers with explicit step, task group context, and simple partitioner.

Definition at line 361 of file tbb/parallel_for.h.

{
parallel_for_impl<Index,Function,const simple_partitioner>(first, last, step, f, partitioner, context);
}

References tbb::internal::first(), and tbb::internal::last().

Here is the call graph for this function:

## parallel_for() [18/20]

template<typename Index , typename Function >

void tbb::strict_ppl::parallel_for | ( | Index | first,
|  | Index | last,
|  | Index | step,
|  | const Function & | f,
|  | const static_partitioner & | partitioner
| ) |  |

Parallel iteration over a range of integers with a step provided and static partitioner.

Definition at line 304 of file tbb/parallel_for.h.

{
parallel_for_impl<Index,Function,const static_partitioner>(first, last, step, f, partitioner);
}

References tbb::internal::first(), and tbb::internal::last().

Here is the call graph for this function:

## parallel_for() [19/20]

template<typename Index , typename Function >

void tbb::strict_ppl::parallel_for | ( | Index | first,
|  | Index | last,
|  | Index | step,
|  | const Function & | f,
|  | const static_partitioner & | partitioner,
|  | tbb::task_group_context & | context
| ) |  |

Parallel iteration over a range of integers with explicit step, task group context, and static partitioner.

Definition at line 371 of file tbb/parallel_for.h.

{
parallel_for_impl<Index,Function,const static_partitioner>(first, last, step, f, partitioner, context);
}

References tbb::internal::first(), and tbb::internal::last().

Here is the call graph for this function:

## parallel_for() [20/20]

template<typename Index , typename Function >

void tbb::strict_ppl::parallel_for | ( | Index | first,
|  | Index | last,
|  | Index | step,
|  | const Function & | f,
|  | tbb::task_group_context & | context
| ) |  |

Parallel iteration over a range of integers with explicit step, task group context, and default partitioner.

Definition at line 356 of file tbb/parallel_for.h.

{
parallel_for_impl<Index,Function,const auto_partitioner>(first, last, step, f, auto_partitioner(), context);
}

References tbb::internal::first(), and tbb::internal::last().

Here is the call graph for this function:

## parallel_for_impl() [1/2]

template<typename Index , typename Function , typename Partitioner >

void tbb::strict_ppl::parallel_for_impl | ( | Index | first,
|  | Index | last,
|  | Index | step,
|  | const Function & | f,
|  | Partitioner & | partitioner
| ) |  |

Implementation of parallel iteration over stepped range of integers with explicit step and partitioner.

Definition at line 275 of file tbb/parallel_for.h.

{
if (step <= 0 )
internal::throw_exception(internal::eid_nonpositive_step); // throws std::invalid_argument
else if (last > first) {
// Above "else" avoids "potential divide by zero" warning on some platforms
Index end = (last - first - Index(1)) / step + Index(1);
tbb::blocked_range<Index> range(static_cast<Index>(0), end);
internal::parallel_for_body<Function, Index> body(f, first, step);
tbb::parallel_for(range, body, partitioner);
}
}
end
void const char const char int ITT_FORMAT __itt_group_sync x void const char ITT_FORMAT __itt_group_sync s void ITT_FORMAT __itt_group_sync p void ITT_FORMAT p void ITT_FORMAT p no args __itt_suppress_mode_t unsigned int void size_t ITT_FORMAT d void ITT_FORMAT p void ITT_FORMAT p __itt_model_site __itt_model_site_instance ITT_FORMAT p __itt_model_task __itt_model_task_instance ITT_FORMAT p void ITT_FORMAT p void ITT_FORMAT p void size_t ITT_FORMAT d void ITT_FORMAT p const wchar_t ITT_FORMAT s const char ITT_FORMAT s const char ITT_FORMAT s const char ITT_FORMAT s no args void ITT_FORMAT p size_t ITT_FORMAT d no args const wchar_t const wchar_t ITT_FORMAT s __itt_heap_function void size_t int ITT_FORMAT d __itt_heap_function void ITT_FORMAT p __itt_heap_function void void size_t int ITT_FORMAT d no args no args unsigned int ITT_FORMAT u const __itt_domain __itt_id ITT_FORMAT lu const __itt_domain __itt_id __itt_id __itt_string_handle ITT_FORMAT p const __itt_domain __itt_id ITT_FORMAT p const __itt_domain __itt_id __itt_timestamp __itt_timestamp end
Definition: ittnotify_static.h:182
tbb::parallel_for
void parallel_for(const Range &range, const Body &body)
Parallel iteration over range with default partitioner.
Definition: tbb/parallel_for.h:200
tbb::internal::throw_exception
void throw_exception(exception_id eid)
Versionless convenience wrapper for throw_exception_v4()
Definition: tbb_exception.h:105
tbb::internal::eid_nonpositive_step
@ eid_nonpositive_step
Definition: tbb_exception.h:70
tbb::blocked_range
A range over which to iterate.
Definition: blocked_range.h:45

References tbb::internal::eid_nonpositive_step, end, tbb::internal::first(), tbb::internal::last(), tbb::parallel_for(), and tbb::internal::throw_exception().

Referenced by parallel_for().

Here is the call graph for this function:
Here is the caller graph for this function:

## parallel_for_impl() [2/2]

template<typename Index , typename Function , typename Partitioner >

void tbb::strict_ppl::parallel_for_impl | ( | Index | first,
|  | Index | last,
|  | Index | step,
|  | const Function & | f,
|  | Partitioner & | partitioner,
|  | tbb::task_group_context & | context
| ) |  |

Implementation of parallel iteration over stepped range of integers with explicit step, task group context, and partitioner.

Definition at line 342 of file tbb/parallel_for.h.

{
if (step <= 0 )
internal::throw_exception(internal::eid_nonpositive_step); // throws std::invalid_argument
else if (last > first) {
// Above "else" avoids "potential divide by zero" warning on some platforms
Index end = (last - first - Index(1)) / step + Index(1);
tbb::blocked_range<Index> range(static_cast<Index>(0), end);
internal::parallel_for_body<Function, Index> body(f, first, step);
tbb::parallel_for(range, body, partitioner, context);
}
}

References tbb::internal::eid_nonpositive_step, end, tbb::internal::first(), tbb::internal::last(), tbb::parallel_for(), and tbb::internal::throw_exception().

Here is the call graph for this function:

Copyright © 2005-2020 Intel Corporation. All Rights Reserved.

Intel, Pentium, Intel Xeon, Itanium, Intel XScale and VTune are registered trademarks or trademarks of Intel Corporation or its subsidiaries in the United States and other countries.

* Other names and brands may be claimed as the property of others.