适用于 Visual Studio 的 OpenMP 3.0

Posted

技术标签:

【中文标题】适用于 Visual Studio 的 OpenMP 3.0【英文标题】:OpenMP 3.0 for Visual Studio 【发布时间】:2016-02-22 15:12:53 【问题描述】:

目前我正在开发一个跨平台框架,我想在其中使用 openmp 的实际功能。 我想利用 openmp 3.0(或更高版本)的“新功能”。 (例如无符号并行循环或任务等, 我已经有一段时间没有在 Windows 平台上开发了 正如我现在所看到的,即使 Visual Studio 2015 也只支持 openmp 2.0(至少在使用 msvc 时,请参阅 All OpenMP Tasks running on the same thread 或 https://blogs.msdn.microsoft.com/vcblog/2014/11/12/visual-studio-2015-preview-is-now-available/)所以我的问题是:

    是否有合理的理由不支持 Visual Studio 中的 openmp3.0? 有没有办法让它在 Visual Studio 下工作? 我知道,我可以使用英特尔 C++ 编译器,但不幸的是,我无法使用它。那么有没有支持 openmp3.0 的英特尔编译器的免费替代品?

提前致谢

【问题讨论】:

Here 你可以找到关于如何将 clang 3.7 包含到 MSVC 2015 更新 1 中的描述。我不知道 Open MP 是否与它一起运行,但 imo 的机会并没有那么糟糕。跨度> 哦,太棒了,谢谢我试试 @davidhigh 嗯?!页面右侧有一条声明No OpenMP support. You will get a diagnostic that says “OpenMP is not supported” @SeverinPappadeux:好的。我还没有看到,可能是因为我对“MSVC 中的 C++1z”感到欣喜若狂。 【参考方案1】:

好吧,您可以尝试适用于 Windows、本机 (mingw64) 和 cygwin 之上的 GCC 端口。

尝试安装msys2,您将获得ming64 以及支持OpenMP 的cygwin 编译器

【讨论】:

【参考方案2】:

你可以试试cygwin

cygwin 是 GNU for windows 的 gcc 编译器。

【讨论】:

以上是关于适用于 Visual Studio 的 OpenMP 3.0的主要内容,如果未能解决你的问题,请参考以下文章

MFC 是不是仅适用于 Visual Studio,不适用于 Visual C++ Express?

是否有适用于 Visual Studio 2010 的 Youtrack 插件?

适用于 Python 的 Visual Studio Code 缩进

是否有大量适用于 Visual Studio 2019 的主题?

适用于 Visual Studio 2012/2013 的 MySQL

适用于 Visual Studio 2012 的 FxCop 12.0