Aleksandar Donev writes:
> Let me ask another question: Is there a reason to keep a program in 32-bit
> mode if it can be ported easily to 64-bit mode (i.e. assume it is portable,
> as Richard's)? My programs are usually FLOP or memory bandwidth bound and do
> not really need 64 bit integers (but all the reals are 64 bits). As I am
> reading, the reason behind the 32-bit mode is for backward compatibility and
> ease of migration, and the real thing to do is run in 64-bit mode once you
> port the code successfully.
You seem to be assuming that 64-bit mode means 64-bit default
integers. I don't know about the particular mode of the particular
compiler in question, but that is not true in general.
In general, 64-bit mode means 64-bit addresses. That is *ALL*. Since
addresses are not explicitly manipulated in Fortran source code, this
doesn't tend to affect the validity standard-conforming code. (If you
play nonstandard tricks to manipulate addresses, that's a different
matter). You might end up wanting to use 64-bit integers in some
contexts if the reason you need 64-bit addresses is that you have huge
arrays, but it does not necessarily follow that default integers are
64 bits.
--
Richard Maine | Good judgment comes from experience;
[log in to unmask] | experience comes from bad judgment.
| -- Mark Twain
|