hirchert@uxe.cso.uiuc.edu (08/31/88)
>For the record what constraints are imposed by the new standard >for the storing of complex data? Can a complex vector be stored >as separate vectors or must the real and complex coefficients be >stored contiguously? One of the design constraints in the development of the draft Fortran 8x standard was that it be upwards compatible with FORTRAN 77. This means that variables of the default COMPLEX types which are either equivalenced to another type or in COMMON must be stored with real and imaginary parts interleaved. Proposals currently under consideration by X3J3 would extend that requirement to nondefault COMPLEX types in the same storage association contexts. If your variables are not storage associated (and if your compiler vendor is willing to support more than one way to store complex variables), then storing the real and imaginary parts in separate vectors becomes possible. >-- >Steve (really "D. E.") Stevenson steve@hubcap.clemson.edu >Department of Computer Science, (803)656-5880.mabell >Clemson University, Clemson, SC 29634-1906 Kurt W. Hirchert hirchert@ncsa.uiuc.edu National Center for Supercomputing Applications
fpst@hubcap.UUCP (Steve Stevenson) (08/31/88)
From article <50500071@uxe.cso.uiuc.edu>, by hirchert@uxe.cso.uiuc.edu: >>... what constraints are imposed (by X3J3) for the storing of complex data? > ...upwards compatible with FORTRAN 77. ... COMPLEX types which are > either equivalenced to another type or in COMMON must be stored > with real and imaginary parts interleaved. Proposals [might] extend > that requirement to nondefault COMPLEX types .... That requirement might be a killer for performance on many of the newer types of machines. For example, the T-series hypercube would be reduced to a scalar machine. Surely there is a better way than to dictate a second generation constraint to a N>4-th generation solution. I guess that brings up the point of why --- in light of software --- engineering we still encourage EQUIVALENCEing. I realize that storage optimization is a very necessary requirement. Just seems that this way is outmoded. -- Steve Stevenson fpst@hubcap.clemson.edu (aka D. E. Stevenson), fpst@prism.clemson.csnet Department of Computer Science, comp.parallel Clemson University, Clemson, SC 29634-1906 (803)656-5880.mabell