Hello,
Has someone done profiling tests for the adverse affect of strides in
F95 arrays inside DO loops.
For example, take a loop like (of course my real loops are a lot more
complicated) inside a routine:
DO i=1,n
x(i)=y(i)+1.0
END DO
If x and y are assumed shape array arguments, they my have non-unit
stride, and may have different stride. So the most general case needs to
be handled by assembler code that performs two integer counter
increments per iteration, as opposed to the usual 1, or today more
commonly a hardware instruction that combines address incrementing by 4
(8 bytes) and read/write together.
How do compilers handle these issues?
Thanks,
Aleksandar
--
__________________________________
Aleksandar Donev
Complex Materials Theory Group (http://cherrypit.princeton.edu/)
Princeton Materials Institute & Program in Applied and Computational Mathematics
@ Princeton University
Address:
419 Bowen Hall, 70 Prospect Avenue
Princeton University
Princeton, NJ 08540-5211
E-mail: [log in to unmask]
WWW: http://atom.princeton.edu/donev
Phone: (609) 258-2775
Fax: (609) 258-6878
__________________________________
|