【发布时间】:2016-06-05 08:54:39
【问题描述】:
我无法在 Visual Studio 2015 中获得 OpenMP 支持。
我已经配置项目选项使用/openmp (project->properties->C/C++->language->OpenMP support:yes),代码如下(很简单的代码,用来测试OpenMP):
#include <iostream>
#include <omp.h>
int main(int argc, char* argv[])
{
int n = 0;
#pragma omp parallel
{
std::cout << std::endl << "Hello World!";
}
return 0;
}
只有一个线程运行并且“Hello World!”只打印一次。
【问题讨论】:
-
您应该使用
omp_get_num_threads函数检查可用的线程数,如果结果为1,则使用omp_set_num_threads设置您想要的线程数。还有其他方法可以设置 OpenMP 的线程数。 -
是的,我之前尝试过,仍然只有一个线程。将添加 num_threads(4) 设置到 #pragma omp 并行指令的结果相同:单线程,单打印。我在网上看到一些信息,不是所有版本的 VS 都支持 OpenMP,所以我想这是因为我使用的是 VS2015 社区。span>
标签: c++ visual-studio-2015 openmp