2022年ICC与GCC编译器的对比 .pdf
NeoStack 开发工具实用例子性能对比分析说明书上周收到了Intel开发工具实用例子介绍,针对典型几个例子和自己做的详细介绍如下:一、使用icc 的例子:1、MySQL在基于 Pentium4、Itanium2 和 64 位 Xeon的系统上分别使用icc 和个 gcc编译器编译的MySQL 代码进行测试, 由于 icc 多变性,所以使用不同的编译选项进行编译:普通的 -O2 和更具有侵略性的选项,将它们与gcc 相同选项编译结果进行对比,如下图:SetQuery使用的时间(秒)Intel Petium 4 Intel Itanium 2 Intel Xeon EM64 -O2 Aggressive -O2 Aggressive -O2 Aggressive Intel C+编译器550 519 581 567 265 263 GNU C 编译器666 665 692 671 628 637 执行时间缩减比17 22 16 15 58 59 注:1、Intel Pentium 4:MySQL版本 4.1.12, icc 9.0, gcc 3.4.4 , 操作系统为基于P4的 SUSE Server8。2,硬件环境是:P4 2 。7G ; 1G 内存;512K L3 cache;超线程名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 1 页,共 4 页 - - - - - - - - - 开关关闭。2、Itanium 2:MySQL版本 4.1.12,icc 9.0, gcc 3.4.4,操作系统是基于Itanium 2服务器的RHEL AS 2.1, 硬件环境: Itaniium 2 1.2G; 1G 内存; 6M L3 cache。3、Intel Xeon EM64: MySQL版本 4.1.12,icc 9.0, gcc 3.2.3;操作系统是基于64位的 Xeon 服务器的 RHEL AS3 Update 2, 硬件环境:两路 Intel Xeon处理器 3.2G; 4G 内存; 1M L2 cache, 超线程开关打开;4、icc针对P4选项:-O3 -ip ; gcc选项:-O3 -fomit-frame-pointer -feild-constructors fno-rtti -fno-exception 5、icc 针对 I2 选项: -O1 6、icc 针对 em64选项: -O3 Intel处理器Intel C+编译器选项GNU C 编译器选项icc 代码执行时间gcc 代码执行时间Intel编译器性能提高Petium 4 O2 O2 1034 1236 16% Petium 4 O2, IPO O3, fomit 995 1160 14% Itanium 2 O2 O2 771 1030 25% Itanium 2 O2, IPO O3, fomit 769 1007 24% 注: MySQl 4.0.3,icc 7.1 , 在 P4 上 gcc 3.1 ,在 I2 上 gcc3.2 ; 基于 P4 处理器的服务器版本是RHEL7.1; 基于 I2 处理器的服务器版本是RHL AS 。名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 2 页,共 4 页 - - - - - - - - - 2、使用 Ipp和 ICC 在提高视频图象传播质量方面发挥了重大作用,IPP 提供了跨平台信号和多媒体库以及抽象函数用来提供一系列的多媒体、音频、视频、图象处理、语音处理、信号处理、数学例程函数库。Intel C 编译器提供了高级优化选项,如SSE2 和 Intel NetBurst微结构, icc能极大的提高应用程序的性能。下面是 ImageCom公司在 P4 1 。7G 处理其上使用IPP 和 ICC 提高其视频数据传输质量,降低成本的数据,当ImageCom Pc 编码器对80 秒的 CIF 视频数据进行代码转换,原来花了123 秒,使用了IPP 后,该时间缩短位84 秒,性能提高了32 ;当单独使用 ICC 编译以后,该时间缩短为69 , 性能提高了44 ;然而当同时使用IPP 和 ICC后,时间缩短为57 秒,性能提高了54 ,如下表所示:ImageCom编码器配置Intel Pentium 4处理器系统Intel IPP Intel C 编译器80 秒数据流编码时间性能提升比123 sec 0Y 84 sec 32 Y 69 sec 44 Y Y 57 54 3、Fluent公司的软件被用来模拟、清晰看见, 预见液体流动、大规模热量转移和医学的反映。产品工程师们使用Fluent的软件来建立虚拟原型和模拟计划做的和已经存在的设计的表现,工程师们使用软件来创建模拟模型来更好的理解包括温度,流动速度、压力、喧嚣几流动路径的那些设计。Fluent工程师为了测试Intel编译器是否能提升它们的软件在Intel 处理器系统上的性能, 他们运行了五个不同的分别用gcc 和 icc 编译的工业模型模拟程序,他们发现每个模型类型, 其测试的benchmark率(指在同一台机器上24 小时运行的benchmark数) ,icc 的性能都比gcc 好,性能提升范围从9 37 。见下表所示:使用 Intel编译器性能提升名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 3 页,共 4 页 - - - - - - - - - 4、MUSIC MATCH公司使用了Intel Vtune和 ICC编译器大大提升了该公司产品在Pentium 4 处理器上的性能,特别是使用ICC 编译器降低了从音频CD 和 WAV 文件转化为 MP3 文件的时间,结果达到了37 的速度提升。他们还使用VTune性能分析器大大缩短了优化MUSICMATCH代码所付出的努力。二、 Kaspersky实验室使用Vtune定位软件性能瓶颈:使用 VTune 后, Kaspersky各个扫描模块性能提升情况如下表所示:6、在基于 Pentium 4 处理器的中标普华服务器3.0.2系统上测试MySQL使用 ICC 编译后 的 性 能 , 选 择ICC编 译 选 项-O3 -ip, gcc选 项-O3 -fomit-frame-pointer -feild-constructors fno-rtti -fno-exception,使用 sql-bench工具测试结果如下:MySQL操作GCC ICC 性能提升ATIS 18sec 17sec 6Big-table 18sec 15sec 17 connect 75 sec 69 sec 8Insert 1040 946 10 Select 319 298 7名师资料总结 - - -精品资料欢迎下载 - - - - - - - - - - - - - - - - - - 名师精心整理 - - - - - - - 第 4 页,共 4 页 - - - - - - - - -