c – Xcode 4.5和OpenMP with Clang(Apple LLVM)仅使用一个核心
发布时间:2020-12-14 19:45:26 所属栏目:百科 来源:网络整理
导读:我们在C 11项目中使用 Xcode 4.5,我们使用OpenMP来加速计算: #pragma omp parallel forfor (uint x=1; xgrid.width()-1; ++x) { for (uint y=1; ygrid.height()-1; ++y) { // code }} 虽然活动监视器显示程序正在使用多个线程,但我们发现只使用了一个核心:
我们在C 11项目中使用
Xcode 4.5,我们使用OpenMP来加速计算:
#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上运行相同的代码,我们观察到所有核心上的争用.是否已在Apple LLVM中删除了OpenMP支持?有没有替代OpenMP? 解决方法
Clang还不支持OpenMP(它还没有删除 – 它从来就不存在).您可以使用Apple的Grand Central Dispatch(GCD)任务系统,也可以使用Intel的
Threading Building Blocks(TBB).
(编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |