I hope this is the right place to report this kind of problem.
If not, please set me straight.
Fortran performance seems to depend sensitively on how arrays are
indexed at the moment. Thus
real x(n)
do i=1,n
...
enddo
generates code that significantly outperforms
real x(0:n-1)
do i=0,n-1
...
enddo
A test code is attached to this email, which shows a factor of nearly
5 in performance -- big enough to worry about as one doesn't always
have the luxury of being able to choose how to index fortran arrays.
I'm using sgif90 version 0.01.0-13 on a dual processor Troon, B1 stepping,
and compiling like this:
sgif90 -O3 -LNO:blocking=off matmul_test.f
Is this a known problem? Should I wait for it to be fixed or should
I work around it?
Best regards,
Stephen
==================== Stephen M. Pickles ====================
CSAR Technology Refresh Team Leader s.pickles@xxxxxxxxx
Manchester Computing
Room G49-B, Kilburn Building tel: +44 161 275 5974
The University of Manchester fax: +44 161 275 6800
Oxford Road
Manchester M13 9PL http://www.csar.cfs.ac.uk/
===========================(*,*)============================
matmul_test.f
Description: Text document
|