我们对在这里我们使用OpenMP的加快我们计算的C ++ 11的项目中使用的Xcode 4.5:
#pragma omp parallel for
for (uint x=1; x<grid.width()-1; ++x) {
for (uint y=1; y<grid.height()-1; ++y) {
// code
}
}
虽然活动监视器显示多个线程正在使用我们观察到仅一个芯被用于该程序:
我们还运行使用GCC 4.7在Ubuntu相同的代码,我们观察到的所有内核争用。 难道说OpenMP的支持已经在苹果LLVM被删除? 是否有OpenMP的选择吗? 由于我们使用C ++ 11层的功能,我们不能切换到GCC。