Re: Use of subroutines
From: glen herrmannsfeldt (gah_at_ugcs.caltech.edu)
Date: 03/01/04
- Previous message: Dave Thompson: "Re: Help from fellow Fortran Users"
- In reply to: James Van Buskirk: "Re: Use of subroutines"
- Next in thread: Gordon Sande: "Re: Use of subroutines"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Date: Mon, 01 Mar 2004 07:23:40 GMT
James Van Buskirk wrote:
(snip)
> This discussion about big program units boggling the compiler was
> one reason I have been working a bit harder on one of my pet
> projects this week. I now have working a program that writes DFT
> computational kernals of order any power of 2. It's on my website,
> http://home.comcast.net/~kmbtib/index.html in the file scaled2d.f90.
> When run, it prompts the user for the power of 2 (e.g. if you
> wanted a computational kernal of order 1024, your response should
> be 10, NOT 1024 which would just hang the program.)
This reminds me of an FFT program I saw many years ago, probably
around 1977, but before F77 compilers were out.
It did power of two FFT's, and at one point, or maybe two, had
to do the FFT reversal, to rearrange the data in the proper order.
It had some number of nested DO loops, for the maximum power
of two that it could process, and then IFs and GOTOs to enter the
nest at the appropriate level. That should completely violate the
DO entrance rules, but they did it anyway, as it apparently worked
with the compiler in question.
> Fairly
> quickly it spits out two files, if your response to its question
> was 10, for example, you would get fft1024.i90 and fft1024.f90.
> The *.i90 file has all the code in it; the *.f90 file is a test
> program which needs the *.i90 include file to compile. Anyhow,
> testing compilation speed of the resulting files with LF95 5.70d
> a knee in the performance curve was readily evident: it compiles
> fft512.f90 in under a minute, takes about 5 minutes to slog
> through fft1024.f90, and crashes after about 2.25 hr on fft2048.f90.
> Since this program is capable of creating arbitrarily large code
> with one of the most tangled possible data flow graph, it seems to
> be a reasonable candidate for probing the complexity limits of a
> given compiler. How big a DFT module does it take to crash
> Salford or Intel?
That is a pretty sharp knee. I will have to look at the program.
-- glen
- Previous message: Dave Thompson: "Re: Help from fellow Fortran Users"
- In reply to: James Van Buskirk: "Re: Use of subroutines"
- Next in thread: Gordon Sande: "Re: Use of subroutines"
- Messages sorted by: [ date ] [ thread ] [ subject ] [ author ]
Relevant Pages
|
|