------- Comment #13 from dominiq at lps dot ens dot fr 2010-08-24 16:19 -------
With the patch in comment #12 I get
[macbook] lin/test% gfc -Ofast -funroll-loops test_fpu.f90
[macbook] lin/test% time a.out
Benchmark running, hopefully as only ACTIVE task
0.99755959009261719
Test1 - Gauss 2000 (101x101) inverts 2.0 sec Err= 0.000000000000006
Test2 - Crout 2000 (101x101) inverts 2.9 sec Err= 0.000000000000014
Test3 - Crout 2 (1001x1001) inverts 3.4 sec Err= 0.000000000000043
Test4 - Lapack 2 (1001x1001) inverts 2.6 sec Err= 0.000000000000250
total = 10.9 sec
11.103u 0.098s 0:11.21 99.8% 0+0k 0+0io 0pf+0w
compared to
[macbook] lin/test% gfcp -Ofast -funroll-loops test_fpu.f90
[macbook] lin/test% time a.out
Benchmark running, hopefully as only ACTIVE task
0.99755959009261719
Test1 - Gauss 2000 (101x101) inverts 2.0 sec Err= 0.000000000000006
Test2 - Crout 2000 (101x101) inverts 2.9 sec Err= 0.000000000000014
Test3 - Crout 2 (1001x1001) inverts 3.4 sec Err= 0.000000000000043
Test4 - Lapack 2 (1001x1001) inverts 2.6 sec Err= 0.000000000000250
total = 10.9 sec
11.114u 0.101s 0:11.22 99.9% 0+0k 0+0io 0pf+0w
So it fixes the slow down. Thanks for the patch.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=45379