[Bioclusters] fortran 9x compilers for linux clusters

Joe Landman bioclusters@bioinformatics.org
06 Nov 2002 09:21:01 -0500


On Wed, 2002-11-06 at 05:55, Peter oledzki wrote:
> Cheers for the help Joe.....
> 
> Haven't been in contact as I've been on vacation for
> the last 3 weeks. I have inherited the code and have
> to optimise it by teaking the source and various
> parameters.

:)  I used to do stuff like that for a "living" when I worked at SGI. 
There is a good book from O'Reilly authored by Kevin Dowd and Charles
Severance called "High Performance Computing" on many of the issues
associated with program tuning and parallelization, machine
architecture, compiler issues, etc.

What I would recommend is to learn how to use the performance measuring
tools under Linux (gprof and the -pg compiler option, a kernel modified
with oprofile patches, and Troy Baer's excellent lperfex code from Ohio
Supercomputer Center).  

The steps to optimizing work approximately like this ...

    1: compile code
    2: get test case (real data) that will run in less than 1 hour if
    possible
    3: measure performance (e.g. wall clock time) of baseline code
    4: measure performance of instrumented code (using -pg option and
    gprof), make sure that performance measurement does not appreciably
    affect run time
    5: do {
    	recompile with -O.. and other optimization switches
    	measure wall clock
    	note where profiled code spends most of its time
          }
    6: look at the most time expensive routine, and fix it
    7: if (not_done_with_optimization) goto 3
    8: clean up, declare victory, and move on to next project :)
 
> Do you know of any good books too?
> 
> Pete
> 
>  --- Joe Landman <landman@scalableinformatics.com>
> wrote: > Hi Peter:
> > 
> >   Michael Metcalf's (formerly of CERN) tutorials at
> > http://wwwinfo.cern.ch/asdoc/f90.html might be a
> > good place.  Others are
> >
> http://www.scd.ucar.edu/tcg/consweb/Fortran90/F90Tutorial/tutorial.html
> >
> http://www.cs.mtu.edu/~shene/COURSES/cs201/NOTES/fortran.html
> > and
> > http://www.obliquity.com/computer/fortran/
> > 
> >   Just be careful if you inherit someone else's
> > code.  They can be
> > difficult to comprehend even with comments.  If you
> > are starting a new
> > project, carefully review whether fortran is the
> > most appropriate
> > language.  Not trying to start a language war here,
> > just save some
> > headache.
> > 
> >   I found that the combination of Perl on the front
> > end (option/file
> > parsing), and fortran on the backend works quite
> > well.  Sometimes you
> > dont have that option, but it is nice if it is
> > available.
> > 
> > Joe
> 
> 
> =====
> <P><FONT face="Times New Roman">Peter Oledzki</FONT></P>
> <P><FONT face="Times New Roman">Bioinformatics Research Student</FONT></P>
> <P><FONT face="Times New Roman">Department&nbsp;of Biochemistry and Molecular Biology</FONT></P>
> <P><FONT face="Times New Roman">University of Leeds,UK</FONT></P>
> 
> __________________________________________________
> Do You Yahoo!?
> Everything you'll ever need on one web page
> from News and Sport to Email and Music Charts
> http://uk.my.yahoo.com
> _______________________________________________
> Bioclusters maillist  -  Bioclusters@bioinformatics.org
> https://bioinformatics.org/mailman/listinfo/bioclusters
-- 
Joseph Landman, Ph.D
Scalable Informatics LLC,
email: landman@scalableinformatics.com
web  : http://scalableinformatics.com
phone: +1 734 612 4615