runMadrecDiagnostics.valgrind
220 lines
| 8.3 KiB
| text/plain
|
TextLexer
r0 | # Checks entire madrec library for memory problems using valgrind | |||
# | ||||
# $Id: runMadrecDiagnostics.valgrind 3304 2011-01-17 15:25:59Z brideout $ | ||||
# Executes a series of madrec test programs. | ||||
# Get the name of the madrigal file | ||||
if {$argc != 1} { | ||||
# Get the name of the madrigal file from the environment | ||||
set madfile $env(MADROOT)/experiments/1998/mlh/20jan98/mil980120g.002 | ||||
} else { | ||||
# The madrigal file is the first argument of testMadrec | ||||
set madfile [lindex $argv 0] | ||||
} | ||||
set madin1 "madin1" | ||||
exec translateCedarFile $madfile $madin1 0 | ||||
set madin "madin" | ||||
set madout "madout" | ||||
set fmaddataF77 "../testF77/tmaddataF77" | ||||
set fmaddataF77out "../testF77/tmaddataF77.out" | ||||
set fmaddataF77rock "../testF77/tmaddataF77.out.rock" | ||||
set fmadrecF77 "../testF77/tmadrecF77" | ||||
set fmadrecF77out "../testF77/tmadrecF77.out" | ||||
set fmadrecF77rock "../testF77/tmadrecF77.out.rock" | ||||
puts "Many of these tests make a series of transformations on an input" | ||||
puts "file, producing two files, separated by a series of" | ||||
puts "transformations, which should be identical. compareFiles is" | ||||
puts "called to verify this. If any problems occur, the tests should" | ||||
puts "be run individually to get additional information on the" | ||||
puts "problem." | ||||
### | ||||
puts "Running testMadrec" | ||||
exec echo "Running testMadrec" > results.txt | ||||
exec valgrind --tool=memcheck testMadrec > testMadrec.out 2>> results.txt | ||||
puts " testing Madrigal format" | ||||
exec echo " testing Madrigal format" >> results.txt | ||||
exec echo " testing Madrigal format" >> results.txt | ||||
exec valgrind --tool=memcheck testMadrec $madin1 > testMadrec.out.sav 2>> results.txt | ||||
exec valgrind --tool=memcheck translateCedarFile $madin1 $madin 0 2>> results.txt | ||||
exec valgrind --tool=memcheck testMadrec $madin > testMadrec.out 2>> results.txt | ||||
puts " testing blocked binary format" | ||||
exec echo " testing blocked binary format" >> results.txt | ||||
exec valgrind --tool=memcheck translateCedarFile $madin1 $madin 1 2>> results.txt | ||||
exec valgrind --tool=memcheck translateCedarFile $madin1 $madin 1 2>> results.txt | ||||
exec valgrind --tool=memcheck testMadrec $madin > testMadrec.out 2>> results.txt | ||||
puts " testing Cbf format" | ||||
exec echo " testing Cbf format" >> results.txt | ||||
exec valgrind --tool=memcheck translateCedarFile $madin1 $madin 2 2>> results.txt | ||||
exec valgrind --tool=memcheck translateCedarFile $madin1 $madin 1 2>> results.txt | ||||
exec valgrind --tool=memcheck testMadrec $madin > testMadrec.out 2>> results.txt | ||||
puts " testing unblocked binary format" | ||||
exec echo " testing unblocked binary format" >> results.txt | ||||
exec valgrind --tool=memcheck translateCedarFile $madin1 $madin 3 2>> results.txt | ||||
exec valgrind --tool=memcheck translateCedarFile $madin1 $madin 1 2>> results.txt | ||||
exec valgrind --tool=memcheck testMadrec $madin > testMadrec.out 2>> results.txt | ||||
puts " testing ascii format" | ||||
exec echo " testing ascii format" >> results.txt | ||||
exec valgrind --tool=memcheck translateCedarFile $madin1 $madin 4 2>> results.txt | ||||
exec valgrind --tool=memcheck translateCedarFile $madin1 $madin 1 2>> results.txt | ||||
exec valgrind --tool=memcheck testMadrec $madin > testMadrec.out 2>> results.txt | ||||
puts "Running testCedarIO" | ||||
exec echo "Running testCedarIO" >> results.txt | ||||
exec rm -f file1 | ||||
exec rm -f file11 | ||||
exec valgrind --tool=memcheck testCedarIO $madin1 2>> results.txt | ||||
### | ||||
puts "Running testCedarIOBoundaries" | ||||
exec echo "Running testCedarIOBoundaries" >> results.txt | ||||
puts [exec valgrind --tool=memcheck testCedarIOBoundaries $madin1 5 5 2>> results.txt] | ||||
### | ||||
puts "Running testCedarMemIO" | ||||
exec echo "Running testCedarMemIO" >> results.txt | ||||
exec rm -f file1 | ||||
exec rm -f file2 | ||||
exec valgrind --tool=memcheck testCedarMemIO 2>> results.txt | ||||
### | ||||
puts "Running testGeometry" | ||||
exec echo "Running testGeometry" >> results.txt | ||||
exec rm -f testGeometry.out | ||||
exec valgrind --tool=memcheck testGeometry > testGeometry.out 2>> results.txt | ||||
### | ||||
puts "Running testMetadata - " | ||||
exec echo "Running testMetadata - " >> results.txt | ||||
puts " will possibly fail since prints out madroot at one point; may " | ||||
puts " also possibly fail if new derivable parameters are added. Do " | ||||
puts " a manual diff to see if failure is due to any other reason " | ||||
exec rm -f testMetadata.out | ||||
exec valgrind --tool=memcheck testMetadata > testMetadata.out 2>> results.txt | ||||
### | ||||
puts "Running testMaddata" | ||||
exec echo "Running testMaddata" >> results.txt | ||||
exec rm -f testMaddata.out | ||||
exec valgrind --tool=memcheck testMaddata > testMaddata.out 2>> results.txt | ||||
### | ||||
puts "Running testParmArray" | ||||
exec echo "Running testParmArray" >> results.txt | ||||
exec rm -f testParmArray.out | ||||
exec valgrind --tool=memcheck testParmArray > testParmArray.out 2>> results.txt | ||||
### | ||||
puts "Running testMadrecSequentialFileIO" | ||||
exec echo "Running testMadrecSequentialFileIO" >> results.txt | ||||
puts " testing Madrigal format" | ||||
exec echo " testing Madrigal format" >> results.txt | ||||
exec rm -f $madin | ||||
exec valgrind --tool=memcheck testMadrecSequentialFileIO $madin1 $madin 0 2>> results.txt | ||||
puts " testing blocked binary format" | ||||
exec echo " testing blocked binary format" >> results.txt | ||||
exec rm -f $madout | ||||
exec valgrind --tool=memcheck testMadrecSequentialFileIO $madin $madout 1 2>> results.txt | ||||
exec valgrind --tool=memcheck testMadrecSequentialFileIO $madout $madin 0 2>> results.txt | ||||
puts " testing Cbf format" | ||||
exec echo " testing Cbf format" >> results.txt | ||||
exec rm -f $madout | ||||
exec valgrind --tool=memcheck testMadrecSequentialFileIO $madin $madout 2 2>> results.txt | ||||
exec valgrind --tool=memcheck testMadrecSequentialFileIO $madout $madin 0 2>> results.txt | ||||
puts " testing unblocked binary format" | ||||
exec echo " testing unblocked binary format" >> results.txt | ||||
exec rm -f $madout | ||||
exec valgrind --tool=memcheck testMadrecSequentialFileIO $madin $madout 3 2>> results.txt | ||||
exec valgrind --tool=memcheck testMadrecSequentialFileIO $madout $madin 0 2>> results.txt | ||||
puts " testing ascii format" | ||||
exec echo " testing ascii format" >> results.txt | ||||
exec rm -f $madout | ||||
exec valgrind --tool=memcheck testMadrecSequentialFileIO $madin $madout 4 2>> results.txt | ||||
exec valgrind --tool=memcheck testMadrecSequentialFileIO $madout $madin 0 2>> results.txt | ||||
### | ||||
puts "Running testMadrecRandomFileIO" | ||||
exec echo "Running testMadrecRandomFileIO" >> results.txt | ||||
puts " testing Madrigal format" | ||||
exec echo " testing Madrigal format" >> results.txt | ||||
exec rm -f $madout | ||||
exec valgrind --tool=memcheck translateCedarFile $madin1 $madin 0 2>> results.txt | ||||
puts [exec valgrind --tool=memcheck testMadrecRandomFileIO $madin $madout 0 0 2>> results.txt] | ||||
puts " testing blocked binary format" | ||||
exec echo " testing blocked binary format" >> results.txt | ||||
exec rm -f $madout | ||||
exec valgrind --tool=memcheck translateCedarFile $madin1 $madin 1 2>> results.txt | ||||
puts [exec valgrind --tool=memcheck testMadrecRandomFileIO $madin $madout 0 0 2>> results.txt] | ||||
puts " testing Cbf format (slow - this is emulated)" | ||||
exec echo " testing Cbf format (slow - this is emulated)" >> results.txt | ||||
exec rm -f $madout | ||||
exec valgrind --tool=memcheck translateCedarFile $madin1 $madin 2 2>> results.txt | ||||
puts [exec valgrind --tool=memcheck testMadrecRandomFileIO $madin $madout 0 0 2>> results.txt] | ||||
puts " testing unblocked binary format" | ||||
exec echo " testing unblocked binary format" >> results.txt | ||||
exec rm -f $madout | ||||
exec valgrind --tool=memcheck translateCedarFile $madin1 $madin 3 2>> results.txt | ||||
puts [exec valgrind --tool=memcheck testMadrecRandomFileIO $madin $madout 0 0 2>> results.txt] | ||||
puts " testing ascii format" | ||||
exec echo " testing ascii format" >> results.txt | ||||
exec rm -f $madout | ||||
exec valgrind --tool=memcheck translateCedarFile $madin1 $madin 4 2>> results.txt | ||||
puts [exec valgrind --tool=memcheck testMadrecRandomFileIO $madin $madout 0 0 2>> results.txt] | ||||
puts "Running test of all derivable parameters" | ||||
exec echo "Running test of all derivable parameters" >> results.txt | ||||
exec valgrind --tool=memcheck testDerived > testDerived.out 2>> results.txt | ||||
### | ||||
puts "Running test of Fortran interface to C API" | ||||
exec echo "Running test of Fortran interface to C API" >> results.txt | ||||
puts " testing Fortran interface to Maddata module" | ||||
exec echo " testing Fortran interface to Maddata module" >> results.txt | ||||
exec valgrind --tool=memcheck $fmaddataF77 > $fmaddataF77out 2>> results.txt | ||||
puts " testing Fortran interface to Madrec module" | ||||
exec echo " testing Fortran interface to Madrec module" >> results.txt | ||||
exec valgrind --tool=memcheck $fmadrecF77 > $fmadrecF77out 2>> results.txt | ||||
exit | ||||