[原] Intel平台gcc4,gcc3,icc测试
Posted by bianbian on 2007-09-24 12:20
本文Tags: gcc, icc, Intel, slackware, 测试
[from zhch begin]
以一个简单的计算程序为例:
int main() {
double s=0;
int i;
for(i=200000001; i>=1; i-=4) s+=1.0/i-1.0/(i+2);
printf(”Pi=%f\n”, s*4);
}
这是一个常见的算Pi的程序,基本算法是Pi/4=1-1/3+1/5-1/7+…..
[from zhch end]
Slackware 12.0预装了gcc 4.1.2,我手动装了gcc 3.4.6,和icc 10.0。下面是测试结果:
bbs@bbs:~/test$ gcc -o PI.gcc PI.c -O3 -march=pentium4 -msse2 -mmmx
PI.c: In function ‘main’:
PI.c:5: warning:incompatible implicit declaration of built-in function ‘printf’
bbs@bbs:~/test$ icc -o PI.icc PI.c -O3 -xP
PI.c(5): warning #266: function “printf” declared implicitly
printf(”Pi=%f\n”, s*4);
^
PI.c(4): (col. 9) remark: LOOP WAS VECTORIZED.
bbs@bbs:~/test$ gcc3 -o PI.gcc3 PI.c -O3 -march=pentium4 -msse2 -mmmx
bbs@bbs:~/test$ time PI.gcc; time PI.gcc3; time PI.icc
Pi=3.141593
real 0m1.568s
user 0m1.544s
sys 0m0.016s
Pi=3.141593
real 0m1.551s
user 0m1.544s
sys 0m0.008s
Pi=3.141593
real 0m1.246s
user 0m1.212s
sys 0m0.012s
测试环境:Intel(R) Xeon(TM) MP CPU 3.00GHz * 4, 8G MEM
文件大小:
bbs@bbs:~/test$ v PI*
-rw-r–r– 1 bbs bbs 140 2007-09-23 22:28 PI.c
-rwxr-xr-x 1 bbs bbs 6365 2007-09-23 23:08 PI.gcc*
-rwxr-xr-x 1 bbs bbs 6343 2007-09-23 23:47 PI.gcc3*
-rwxr-xr-x 1 bbs bbs 19769 2007-09-23 23:08 PI.icc*
果然跟一些文章说的,gcc4比gcc3编译结果和运算速度都有所下降,icc在Intel平台下确实优化比较明显,毕竟是自己家的东西。
标签: gcc, icc, Intel, slackware, 测试遵守创作共用协议,转载请链接形式注明来自http://bianbian.org 做人要厚道
相关日志
Posted in C/C++, Linux, Technology | 1 Comment »