在Visual Studio 2017中使用OpenMP 3/4

Roi*_*ton 7 c++ openmp clang-cl visual-studio-2017

尝试使用OpenMP 3中的功能

#pragma omp parallel for collapse(2)
Run Code Online (Sandbox Code Playgroud)

在Visual Studio 2017中; 我越来越error c3005: 'collapse' unexpected token encountered on openmp 'parallel for' directive

Visual Studio 2017似乎只支持OpenMP2.在一个支持OpenMP4.5请求中,来自VS团队的说法

我们目前没有计划.

另一个答案说

幸运的是,clang-cl已成为OpenMP 4支持的可行替代方案.在最坏的情况下,您仍然可以启用/ fallback选项.

如何在Visual Studio 2017中使用clang-cl以及什么是后备选项?

Tra*_*s3r 2

更新:集成已得到改进,您现在甚至可以通过 VS 安装程序安装它。他们还致力于 /MP 支持。


您可以从http://llvm.org/builds/获取 clang-cl

但从 VS2017 开始,您可能会遇到集成问题:

/fallback 是一个 clang-cl 选项,如果它自己无法编译某些内容,它会回退到 Microsoft 的编译器。


但请记住,不支持 /MP hack:http://clang-developers.42468.n3.nabble.com/clang-windows-clang-cl-support-for-MP-tp4045651p4045659.html

  • 现在可以通过 https://marketplace.visualstudio.com/items?itemName=LLVMExtensions.llvm-toolchain 扩展在 VS 中轻松启用 LLVM/Clang。 (5认同)