请教:double比float算起来还快?# Programming - 葵花宝典
l*e
1 楼
我在dual core Opetron 64位 Ubuntu 机器上用g++ -O3 ./test.cpp -o test 编译的
两个程序。time显示第一个只用0.195s 但第二个却用了0.668s。有人知道为什么么?
难道说如果用64位机器把所有用float的地方换成double反而会节省时间? 谢谢。
int main()
{
for(double b=0;b<1;b+=1e-4) for(double a=0;a<1;a+=1e-4);
}
int main()
{
for(float b=0;b<1;b+=1e-4) for(float a=0;a<1;a+=1e-4);
}
两个程序。time显示第一个只用0.195s 但第二个却用了0.668s。有人知道为什么么?
难道说如果用64位机器把所有用float的地方换成double反而会节省时间? 谢谢。
int main()
{
for(double b=0;b<1;b+=1e-4) for(double a=0;a<1;a+=1e-4);
}
int main()
{
for(float b=0;b<1;b+=1e-4) for(float a=0;a<1;a+=1e-4);
}