要运行的程序代码:
int main(void)
{
double counter;
double result;
double temp;
for (counter = 0; counter < 2000.0 * 2000.0 * 2000.0 /20.0 + 2200; counter += (5-1)/4)
{
temp = counter / 1979;
result = counter;
}
printf("Result is %lf\\n", result);
return 0;
}
编译后运行的过程:
[test5@cent4 cplus]$ time ./optimize
Result is 400002199.000000\n
real 0m9.041s
user 0m8.988s
sys 0m0.025s
[test5@cent4 cplus]$ time ./optimize1
Result is 400002199.000000\n
real 0m1.589s
user 0m1.585s
sys 0m0.002s
[test5@cent4 cplus]$ time ./optimize2
Result is 400002199.000000\n
real 0m1.574s
user 0m1.566s
sys 0m0.007s
看来有加上优化选项-O或者-O2效果还是有明显的差别的。