苹果Clang和Homebrew支持openmp的Clang有区别吗?



我想知道苹果提供的Clang编译器与Homebrew提供的OpenMP附带的Clang编译器相比是否有任何优势?如果切换到OpenMP Clang(不管多线程能力),会有任何性能损失吗?

我也发现这个老问题没有好的答案


更新我用苹果的Clang和主流的Clang编译OOFEM,出现了同样的问题,

苹果的Clang:实时消耗:000h:01m:26s

主流Clang:实时消耗:000h:01m:24s

在启用多线程的情况下,性能是相似的。我还注意到的一个区别是,苹果的Clang似乎忽略了一些CMake选项,例如-DOpenMP_CXX_FLAGS="-I/usr/local/opt/libomp/include"对苹果的Clang没有影响,而与主流的Clang工作得很好。

有区别吗?

如前所述,答案本身。它们是两个不同的编译器,我们不知道苹果在它们里面做了什么。我们知道他们不提供OpenMP支持,所以这至少是一个区别。

切换到OpenMP Clang会有性能损失吗(不管多线程能力)?

我对此表示怀疑,但既然您清楚地测量了性能并使用了两个编译器,您似乎可以很好地告诉我们:-)

最新更新