08-06-2010
Making FORTRAN code more efficient
Hi, I have a very large, very old FORTRAN code that I work with. The code is quite messy and I was wondering if I can speed up execution time by finding subroutines that code execution spends the most time in. Is there any kind of software I can use to see where the code spends most of the execution process?
Also, I made some changes to the code so it writes a whole bunch of extra output files during execution. I just ran the unmodified version of the code and noticed it seems to run a lot faster than my modified version. Does writing to text files bog down the execution that much?
9 More Discussions You Might Find Interesting
1. Programming
Hi,
I am new to this forum and do not know whether this is the appropriate place to post this question. Anyway am trying my luck.
I have a fortran program swanhcat.ftn, which is part of a wave modelling system. There is also a file hcat.nml which is required to run this program. The program's... (9 Replies)
Discussion started by: sandhyakg
9 Replies
2. Programming
Hi there,
I had run into some fortran code to modify. Obviously, it was written without thinking of high performance computing and not parallelized... Now I would like to make the code "on track" and parallel. After a whole afternoon thinking, I still cannot find where to start. Can any one... (3 Replies)
Discussion started by: P_E_M_Lee
3 Replies
3. Shell Programming and Scripting
Hi all,
Need some help in the following code. (Running this code at cygwin in windows vista)
cat /home/ebanpan/Input_Logs/*.log > /home/ebanpan/Input_Logs/input.log
sed '/^Total/d;/^Bye/d;/^Output has been logged/d' /home/ebanpan/Input_Logs/input.log > /home/ebanpan/output.log
this code... (6 Replies)
Discussion started by: bansalpankaj88
6 Replies
4. Programming
I am using doxygen for documenting my fortran code.
I want to write some notes after the header in different parts of the subroutine. Any idea what the tags should be as anything I write after the header is not displayed
... (0 Replies)
Discussion started by: kristinu
0 Replies
5. Shell Programming and Scripting
egrep -v "#" ${SERVERS} | while read shosts
do
grep -Pi "|" ${LOGFILE} | egrep "${snhosts}" | egrep "NOTIFICATION:" | awk -F";" '{print $3}' | sort -n | uniq | while read CEXIST
do
... (6 Replies)
Discussion started by: SkySmart
6 Replies
6. Programming
I have the code below and I want to remove the "go to" statements. Any idea how I can do it?
if (iorder == 0) then
tmincurrent = 1.0e11
if(ireverse == 0 .or. istop /= 1) then
do i = 1, 6
if ((side(i) /= sidelimit(i)) .and. (tminside(i) < tmincurrent)) then
... (1 Reply)
Discussion started by: kristinu
1 Replies
7. Shell Programming and Scripting
Hi all,
I am working on an extremely large collection of text data (about 2 million XML files) in a directory. I have changed the extension from .xml to .dat. Right now I am using this code to remove the XML tags, but the code is way too slow. It seems that it is taking fore-ever:
#ls -1 *.dat... (1 Reply)
Discussion started by: shoaibjameel123
1 Replies
8. Programming
Hi guys,
After compiling a .f90 code and executing it, i get strange characters in the output file like :
^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
Are these windows characters? how can i get rid of this?
Much appreciated.
Paul (1 Reply)
Discussion started by: Paul Moghadam
1 Replies
9. Shell Programming and Scripting
Heyas
I've been told my scipts would be insecure, and to fix that.
Figured i might rethink some parts of my coding style, meanwhile i tried to write an additional catcher.
After reading:
fail : Security Issues - didnt help too much, infact - it confused me even more.
n/a:... (8 Replies)
Discussion started by: sea
8 Replies
HF77(1) LAM TOOLS HF77(1)
NAME
hf77, mpif77 - Compile LAM FORTRAN programs.
SYNTAX
hf77 [-showme] ...
see f77(1) (or whatever your underlying FORTRAN compiler is) for all other options.
DESCRIPTION
hf77 is a convenience wrapper for the local native FORTRAN compiler. Translation of a LAM program requires the linkage of the LAM essen-
tial services libraries which may not reside in one of the standard search directories of ld(1). hf77 passes its arguments along to the
local native FORTRAN compiler along with the -L and -l options required by LAM/MPI programs. This includes all necessary options for ROMIO
and/or C++ bindings support (if ROMIO/C++ support was included when LAM was compiled).
mpif77 is now the same as hf77. See the NOTES section, below.
By default, hf77 uses the FORTRAN compiler that was selected when LAM was configured (with the --with-fc flag to ./configure) as the local
native FORTRAN compiler, but this can be overridden by the LAMHF77 environment variable.
OPTIONS
-showme
Does not invoke the underlying FORTRAN compiler. Instead, it shows the command line that would be executed to compile the FORTRAN
program.
NOTES
Previous versions of hf77 did not automatically link in the MPI library. Starting with LAM version 6.3, since hf77 has become the de facto
LAM FORTRAN compiler, the -lmpi option is now automatically passed to the underlying compiler when linking LAM/MPI programs.
Previous versions of LAM included the mpif77 wrapper script to automatically pass -lmpi to hf77. This script is now obsolete since hf77
now includes -lmpi automatically. mpif77 is now a symbolic link to hf77 to ensure backward compatibility.
SEE ALSO
f77(1), ld(1), lam-helpfile(1)
LAM 6.5.8 November, 2002 HF77(1)