Loop optimization
Walter Bright
newshound1 at digitalmars.com
Fri May 21 18:42:10 PDT 2010
kai wrote:
> Here is a boiled down test case:
>
> void main (string[] args)
> {
> double [] foo = new double [cast(int)1e6];
> for (int i=0;i<1e3;i++)
> {
> for (int j=0;j<1e6-1;j++)
> {
> foo[j]=foo[j]+foo[j+1];
> }
> }
> }
>
> Any ideas?
for (int j=0;j<1e6-1;j++)
The j<1e6-1 is a floating point operation. It should be redone as an int one:
j<1_000_000-1
More information about the Digitalmars-d-learn
mailing list