Hi
> This is a current subject of discussion. It got a bit of time at the
> most recent J3 meeting. I believe that the previous feeling was that
> systems that could support arrays that large would typically make
> default integers be 64 bits. That certainly seems like the "cleanest"
> solution to me. Otherwise you are going to end up having to
> explicitly specify kinds all over the place; I'd think that would
> get out of hand.
I disagree emphatically with the suggestion on making default integers this
large. The default integer kind should and is determined by the word size of
the architecture, it is meant to provide the fastest possible integer
operations, not to address the whole memory. Of course, either way you do
it, someone will have either recode some codes or be very careful in coding
them. But, since such big memories are a newer happening, I believe it is us
new programmers that should specify non-default kinds where we believe they
are needed. For example, in my library, the number of nodes or arcs in the
network may be very large and I need to make sure that all numbers of this
order are declared as INTEGER(KIND=i_wp), where i_wp is either single or
double precision depending on the expected size of the network. It requires
more care, but...
I am particularly worried about large distributed cluster systems. There
each processor runs a program compiled with a serial compiler, which is
likely to use default integers for its addresses. HPF compilers will also
need to catch up in that the SPMD code they generate should allow for very
large arrays. How on earth the compiler will decide which integer kind to
use when I have no clue. I mean, the safe thing is to use double precision
all the time, but this makes address arithmetic more expensive...
Anyway, when implementors make up a nice system, I wanna hear about it.
Thanks,
Aleksandar
_____________________________________________
Aleksandar Donev
http://www.pa.msu.edu/~donev/
[log in to unmask]
(517) 432-6770
Department of Physics and Astronomy
Michigan State University
East Lansing, MI 48824-1116
_____________________________________________
|