Intel C++编译器
编辑英特尔 C/C++ 编译器,简称 ICC,是由处理器制造商英特尔提供的带有 C 和 C++ 前端的编译器。 当前版本的编译器可用于操作系统 Linux、Windows 和 Mac OS X 以及处理器架构 IA-32、x86-64(Intel 64、AMD64)。 编译器 11.x 版支持 IA-64 (Itanium2)。 Composer 产品包既可用于特定语言,也可用于 C/C++ 和 Fortran,并且每个包都包含所有英特尔性能库(IPP、MKL 等)。 提到的所有编译器都支持 OpenMP。
这些编译器与 Windows 上的 GCC 和 Microsoft 编译器兼容。 它们具有其他功能,例如自动矢量化和对 SIMD 指令集扩展 MMX、SSE、SSE2、SSE3、SSE4 和 AVX 的支持。
批评
编辑只有 Intel CPU 才能实现最佳性能。 编译器生成的 CPU 调度函数在运行时读取 CPU 供应商字符串,并仅为 GenuineIntel 处理器运行优化代码,而不考虑实际存在的指令集。
“如果供应商字符串显示‘GenuineIntel’,那么它会使用最佳代码路径。如果 CPU 不是来自英特尔,那么在大多数情况下,它将运行最慢的代码版本,即使 CPU 完全兼容更好的版本。”
“如果供应商字符串是‘GenuineIntel’,它会使用最佳代码路径。 如果 CPU 不是英特尔的,在大多数情况下,最慢的代码版本将运行,即使 CPU 与更好的版本完全兼容。”
在 2009 年之后,这种行为被注意到:
“英特尔® 编译器、相关库和相关开发工具可能会或可能不会针对非英特尔微处理器进行相同程度的优化,以实现并非英特尔微处理器独有的优化。
内容由匿名用户提供,本内容不代表vibaike.com立场,内容投诉举报请联系vibaike.com客服。如若转载,请注明出处:https://vibaike.com/376341/