3

我想使用 Intel TBB 和 Cilk Plus 为 Intel Xeon Phi 编写并行代码,但我遇到了线程关联性问题。我想将一个线程绑定到一个逻辑核心。是否可以像在 OpenMP 中一样设置亲和力?我的意思是 KMP_AFFINITY="compact"。先感谢您。:)

4

1 回答 1

3

是的,这是可能的,而且建议与 Xeon Phi 上的 affinity_partitioner 结合使用。详情请参阅博客。这是一个简短的代码片段,可让您了解它的外观:

class pinning_observer: public tbb::task_scheduler_observer {
public:
    pinning_observer();
    /*override*/ void on_scheduler_entry( bool );
    ~pinning_observer();
};

pinning_observer pinner;
pinner.observe( true );

Cilk Plus 中没有任何特殊的方法可以这样做。

于 2015-02-09T10:25:45.093 回答