[Beowulf] array shape difference
stuartb at 4gh.net
Thu Nov 12 05:26:13 PST 2009
At 03:40 PM 11/11/2009, Peter St. John wrote:
> The difference between:
> array2(1:2, 1:30000)
> would be reflected in the size of the executable, not the size
> of the data.
On Thu, 12 Nov 2009 at 07:18 -0000, Michael H. Frese wrote:
> That's correct. The executable size would reflect the extra operations
> required to compute the offset for the doubly dimensioned array.
Or maybe not.
If the fortran code is doing virtual subscripts (e.g. array2(i*2 + j))
it would likely generate about the same code as the compiler would
generate for 2 dimensions. In theory, the compiler can generate
better subscript computation but I suspect in most reasonable (or
simple testing) cases the actual code size difference is a wash.
Go with what is most natural for expressing the algorithm. And ease
the future maintenance.
I've never been lost; I was once bewildered for three days, but never lost!
-- Daniel Boone
More information about the Beowulf