1 前言
Intel和GNU的编译器均实现了对OpenMP API的支持,这里列出各代编译器对OpenMP标准的支持情况,方便使用OpenMP的各种特性。
2 编译器对OpenMP标准的支持
以下内容来源于OpenMP API specification,这里也仅粗略给出最常见的供应商Intel和开源社区GNU对OpenMP标准的支持,且大量partially support并未说明具体支持情况,仅供大家粗略定位,具体支持情况需要具体测试分析。
2.1 Intel
Intel version | OpenMP version | language |
---|---|---|
12.0/13.0/14.0 | 3.1 | C/C++/Fortran |
15.0/16.0 | 4.0 | C/C++/Fortran |
17.0/18.0/19.0 | 4.5 | C/C++/Fortran |
19.1 | 4.5 and subset of 5.0 | C/C++/Fortran |
2.2 OpenMP
gcc version | OpenMP version | language |
---|---|---|
4.2.0 | 2.5 | C/C++/Fortran |
4.4.0 | 3.0 | C/C++/Fortran |
4.7.0 | 3.1 | C/C++/Fortran |
4.9.0 | 4.0 | C/C++ |
4.9.1 | 4.0 | C/C++/Fortran |
6.1 | 4.5 | C/C++ |
7.1 | 4.5 | C/C++/partially supported for Fortran |
9.1 | 5.0 | partially support for C/C++ |