主题:[讨论]64位win7中ivf, 为什么计算速度影响结果?
在Property page中将 Optimiaztion 设置为 Custom时,计算结果是:0.1439476 1.903212
而 将 Optimiaztion 设置为 Maxmize Speed plus Higher Level Optimiaztions时,计算结果是:0.1440349 7.8000501E-02
为什么结果相差:0.1439476 ? 0.1440349
程序如下:
Program Main
Implicit None
Integer, Parameter :: N = 70
integer :: i , j , k , l
Real :: V , time1 , time2
open(unit=1,file='dj.dat')
V = 0.0
time1 = 0.0
time2 = 0.0
Call CPU_TIME( time1 )
Do i = 1 , N
Do j = 1, N
Do k = 1 , N
Do l = 1 , N
100 V = V + sin( i * 1.0 ) * cos( j * 1.0 ) * cos( k * 1.0 ) * sin( l * 1.0 )
End Do
End Do
End Do
End Do
Call CPU_TIME( time2 )
Write(*,*) V , time2 - time1
End Program Main
各位大虾,请给理由. 谢谢!
而 将 Optimiaztion 设置为 Maxmize Speed plus Higher Level Optimiaztions时,计算结果是:0.1440349 7.8000501E-02
为什么结果相差:0.1439476 ? 0.1440349
程序如下:
Program Main
Implicit None
Integer, Parameter :: N = 70
integer :: i , j , k , l
Real :: V , time1 , time2
open(unit=1,file='dj.dat')
V = 0.0
time1 = 0.0
time2 = 0.0
Call CPU_TIME( time1 )
Do i = 1 , N
Do j = 1, N
Do k = 1 , N
Do l = 1 , N
100 V = V + sin( i * 1.0 ) * cos( j * 1.0 ) * cos( k * 1.0 ) * sin( l * 1.0 )
End Do
End Do
End Do
End Do
Call CPU_TIME( time2 )
Write(*,*) V , time2 - time1
End Program Main
各位大虾,请给理由. 谢谢!