affinity_partitioner

[algorithms.affinity_partitioner]

キャッシュ・アフィニティーを最適化できるようループの反復をスレッドに割り当てるヒント。

affinity_partitioner は、ループ・テンプレートを実行する際に、同じ affinity_partitioner オブジェクトを使用するループ (または別のループ) を以前の実行で使用されたタスク・アフィニティー・パターンでワークを分割することを示します。

affinity_partitionerRange タイプで有効な場合、比例分割を使用します。

他のパーティショナーとは異なり、アフィニティーを最適化するループ・テンプレートに同じ affinity_partitioner オブジェクトを渡すことが重要です。

affinity_partitioner クラスは、ISO C++ [utility.arg.requirements] の CopyConstructibe 要件を満たしています。


// <oneapi/tbb/partitioner.h> ヘッダーで定義 
namespace oneapi { 
    namespace tbb { 
        class affinity_partitioner { 
        public: 
            affinity_partitioner() = default; 
            ~affinity_partitioner() = default; 
        }; 
    } // namespace tbb 
} // namespace oneapi

参照: