tbb::interface9::internal::old_auto_partition_type Class Reference

Backward-compatible partition for auto and affinity partition objects. More...

`#include <partitioner.h>`

Inheritance diagram for tbb::interface9::internal::old_auto_partition_type:
Collaboration diagram for tbb::interface9::internal::old_auto_partition_type:

## Public Member Functions

bool | should_execute_range (const task &t)
| old_auto_partition_type (const auto_partitioner &)
| old_auto_partition_type (const affinity_partitioner &)
| old_auto_partition_type (old_auto_partition_type &pt, split)
Public Member Functions inherited from tbb::internal::partition_type_base
void | set_affinity (task &)
void | note_affinity (task::affinity_id)
task * | continue_after_execute_range ()
bool | decide_whether_to_delay ()
void | spawn_or_delay (bool, task &b)

## Private Attributes

size_t | num_chunks

## Static Private Attributes

static const size_t | VICTIM_CHUNKS = 4

## Detailed Description

Backward-compatible partition for auto and affinity partition objects.

Definition at line 561 of file partitioner.h.

## Constructor & Destructor Documentation

## old_auto_partition_type() [1/3]

tbb::interface9::internal::old_auto_partition_type::old_auto_partition_type | ( | const auto_partitioner & |  | ) |

inline

Definition at line 570 of file partitioner.h.

: num_chunks(internal::get_initial_auto_partitioner_divisor()*__TBB_INITIAL_CHUNKS/4) {}
__TBB_INITIAL_CHUNKS
#define __TBB_INITIAL_CHUNKS
Definition: partitioner.h:25
tbb::internal::get_initial_auto_partitioner_divisor
size_t __TBB_EXPORTED_FUNC get_initial_auto_partitioner_divisor()
Definition: task.cpp:149
tbb::interface9::internal::old_auto_partition_type::num_chunks
size_t num_chunks
Definition: partitioner.h:562

## old_auto_partition_type() [2/3]

tbb::interface9::internal::old_auto_partition_type::old_auto_partition_type | ( | const affinity_partitioner & |  | ) |

inline

Definition at line 572 of file partitioner.h.

: num_chunks(internal::get_initial_auto_partitioner_divisor()*__TBB_INITIAL_CHUNKS/4) {}

## old_auto_partition_type() [3/3]

tbb::interface9::internal::old_auto_partition_type::old_auto_partition_type | ( | old_auto_partition_type & | pt,
|  | split |
| ) |  |

inline

Definition at line 574 of file partitioner.h.

{
num_chunks = pt.num_chunks = (pt.num_chunks+1u) / 2u;
}

References num_chunks.

## Member Function Documentation

## should_execute_range()

bool tbb::interface9::internal::old_auto_partition_type::should_execute_range | ( | const task & | t | ) |

inline

Definition at line 565 of file partitioner.h.

{
if( num_chunks<VICTIM_CHUNKS && t.is_stolen_task() )
num_chunks = VICTIM_CHUNKS;
return num_chunks==1;
}
tbb::interface9::internal::old_auto_partition_type::VICTIM_CHUNKS
static const size_t VICTIM_CHUNKS
Definition: partitioner.h:563

References tbb::task::is_stolen_task().

Here is the call graph for this function:

## Member Data Documentation

## num_chunks

size_t tbb::interface9::internal::old_auto_partition_type::num_chunks

private

Definition at line 562 of file partitioner.h.

Referenced by old_auto_partition_type().

## VICTIM_CHUNKS

const size_t tbb::interface9::internal::old_auto_partition_type::VICTIM_CHUNKS = 4

static private

Definition at line 563 of file partitioner.h.

The documentation for this class was generated from the following file:

- partitioner.h

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.