OpenMp根据变量设置并行循环的线程数
Posted
技术标签:
【中文标题】OpenMp根据变量设置并行循环的线程数【英文标题】:OpenMp set number of threads for parallel loop depending on variable 【发布时间】:2013-10-08 12:48:26 【问题描述】:有没有办法根据变量的值在 OpenMP 中为区域并行设置线程数?最初对于整个应用程序的线程数 = nofCores。在我的 AMD FX 8350 上,nofCores =8。对于这个区域,如果变量是 3,那么我只需要 3 个线程。如果variable>cores,那么线程数应该保持等于nofCores。
我不想为所有应用程序全局设置线程数。只针对这个特定的并行循环。
对不起,如果这是一个幼稚的问题,但我是 OpenMP 的新手。
【问题讨论】:
确保查看文档;它不是那么巨大的。 【参考方案1】:当然 .. 只需将其添加到您的 parallel for
指令中即可:
#pragma parallel for num_threads(variable)
for( ... )
【讨论】:
应该是#pragma omp parallel for
?以上是关于OpenMp根据变量设置并行循环的线程数的主要内容,如果未能解决你的问题,请参考以下文章