source: palm/trunk/DOC/app/chapter_3.6.html @ 60

Last change on this file since 60 was 54, checked in by raasch, 18 years ago

property Id set for most of all files, small bug in mbuild fixed

  • Property svn:keywords set to Id
File size: 8.0 KB
Line 
1<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
2<html><head>
3  <meta http-equiv="CONTENT-TYPE" content="text/html; charset=windows-1252">
4 
5  <title>PALM chapter 3.6</title><meta name="GENERATOR" content="StarOffice 7  (Win32)">
6  <meta name="AUTHOR" content="Siegfried Raasch">
7  <meta name="CREATED" content="20040809;10583400">
8  <meta name="CHANGED" content="20041112;15013624">
9  <meta name="KEYWORDS" content="parallel LES model">
10  <style>
11        <!--
12                @page { size: 21cm 29.7cm }
13        -->
14        </style></head>
15
16<body dir="ltr" lang="en-US">
17<h3 style="line-height: 100%;">3.6 Interactive mode and debugging</h3>
18<p style="line-height: 100%;">You can use <b>mrun</b> for running PALM
19in batch mode as well as for running it interactively. For interactive
20runs, you must (naturally) be logged in on the respective computer. For
21this computer the subroutines of the model must have
22been precompiled (see <a href="chapter_5.0.html">chapter
235.0</a>). Files containing user-defined code must be stored in the directory given by the variable<span style="font-family: Courier New,Courier,monospace;"> %add_source_path </span>in the mrun-configuration file<span style="font-family: Courier New,Courier,monospace;"> .mrun.config</span>.<span style="font-family: monospace;"></span> All output-files possibly
24created by the model and requested by the user to be kept after the run
25are copied to
26directories on the local host corresponding to the specifications
27in the configuration file (in this case the file attribute <a href="http://www.muk.uni-hannover.de/institut/software/mrun_beschreibung.html#tr">tr</a>
28does not cause transfer to another computer). </p>
29<p style="line-height: 100%;">Since model runs usually require large
30amounts of CPU time, interactive runs may not be feasible, since
31in interactive mode CPU time
32is strongly limited on many hosts and runs will be aborted
33after the time limit has been exceeded. However, an interactive run
34makes sense if a suitable debugger is available,
35which may be used for error tracing in the model (here, error tracing
36in
37the user-defined software is meant). The preparations neccessary for
38debugging are described in the following. This
39description is limited to the IBM Regatta "hanni" and "berni" of the
40HLRN. </p>
41<p style="line-height: 100%;">If certain routines of the model
42are to be debugged for errors, the complete source code of
43the model, including the user-defined code, must be compiled
44with special debug compiler options. For this purpose, at least the
45following three lines must be included in the <span style="font-weight: bold;">mrun </span>configuration file:<br>
46</p>
47<p style="line-height: 100%;"><span style="font-family: Courier New,Courier,monospace;">%compiler_name&nbsp;&nbsp;&nbsp;&nbsp;
48mpxlf95_r&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
49ibmh parallel debug</span><br style="font-family: Courier New,Courier,monospace;">
50<span style="font-family: Courier New,Courier,monospace;">%fopts&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
51-g:-C:-qinitauto=FF:-qrealsize=8:-Q:-q64:-qmaxmem=-1:-qtune=pwr4:</span><br style="font-family: Courier New,Courier,monospace;"><span style="font-family: Courier New,Courier,monospace;">
52&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
53-qarch=pwr4:-qnosave:-qnoescape:-qflttrap=overflow::zerodivide:</span><br style="font-family: Courier New,Courier,monospace;"><span style="font-family: Courier New,Courier,monospace;">
54&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
55:invalid::enable:-qsigtrap&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
56ibmh parallel debug</span><br style="font-family: Courier New,Courier,monospace;">
57<span style="font-family: Courier New,Courier,monospace;">%lopts&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
58-g:-C:-qinitauto=FF:-qrealsize=8:-Q:-q64:-qmaxmem=-1:-qtune=pwr4:</span><br style="font-family: Courier New,Courier,monospace;"><span style="font-family: Courier New,Courier,monospace;">
59&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
60-qarch=pwr4:-qnosave:-qnoescape:-qflttrap=overflow::zerodivide:</span><br style="font-family: Courier New,Courier,monospace;"><span style="font-family: Courier New,Courier,monospace;">
61&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
62:invalid::enable:-qsigtrap:-lesslsmp&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;
63ibmh parallel debug</span><br style="font-family: monospace;">
64<br>
65</p>
66<p style="line-height: 100%;">(Attention: in the configuration file,
67the compiler and linker options (<span style="font-family: Courier New,Courier,monospace;">fopts
68</span>and<span style="font-family: Courier New,Courier,monospace;"> lopts</span>) must be
69written in one line without any blank space before and after the
70colons!)<br>
71</p>
72<p style="line-height: 100%;">Using the compiler options "<span style="font-family: Courier New,Courier,monospace;">-g</span>" and "<span style="font-family: Courier New,Courier,monospace;">-C</span>", debugable code is created
73and check of array bounds is
74switched on during run time. Option "<span style="font-family: Courier New,Courier,monospace;">-qinitauto=FF</span>" initializes all
75automatic variables (unfortunately not the global values of modules) to
76NaN.The "<span style="font-family: Courier New,Courier,monospace;">-qflttrap</span>" and "<span style="font-family: Courier New,Courier,monospace;">-qsigtrap</span>" options are needed
77in order to terminate the run in case of any floating point errors
78(otherwise the run will not terminate and errors can hardly be
79detected).<br>
80</p>
81<p style="line-height: 100%;">The <b>mrun </b>call for debugging
82needs
83an extended argument for the option<span style="font-family: Courier New,Courier,monospace;"> </span><font style="font-size: 10pt; font-family: Courier New,Courier,monospace;" size="2">-K</font>:</p><div style="margin-left: 40px; font-family: Courier New,Courier,monospace;">mrun ... -K &ldquo;parallel debug&rdquo; -s &rdquo;*.f90" ... .</div><p style="line-height: 100%;">The argument of option<span style="font-family: Courier New,Courier,monospace;"> -s </span><span style="font-family: Courier New,Courier,monospace;"></span>must list all source code files of the default PALM code. </p>
84<p style="line-height: 100%;">After compiling, the debugger
85<b>TotalView</b> is automatically called by <span style="font-weight: bold;">mrun</span>. With its assistance the user
86has to start
87the program execution manually, to set breakpoints, etc.. User manuals
88of <b>TotalView</b> are available <a href="http://www.hlrn.de/doc/totalview/index.html">online</a>. </p>
89<p style="line-height: 100%;">Program crashes caused by errors in the
90user-defined code should usually be found
91unassisted. If the termination point lies outside the user code (in the
92default model code), the PALM&nbsp;group can be asked for
93assistance, but please do not expect any quick response. It is emphasized again that error tracing and programming
94of
95user-defined code requires more or less precise knowledge of the
96internal structure of PALM (see beginning of <a href="chapter_3.5.html">chapter
973.5</a>). <br>
98&nbsp; </p>
99<hr>
100<p style="line-height: 100%;"><br>
101<font color="#000080"><font color="#000080"><a href="chapter_3.5.5.html"><font color="#000080"><img src="left.gif" name="Grafik1" align="bottom" border="2" height="32" width="32"></font></a><a href="index.html"><font color="#000080"><img src="up.gif" name="Grafik2" align="bottom" border="2" height="32" width="32"></font></a><a href="chapter_3.7.html"><font color="#000080"><img src="right.gif" name="Grafik3" align="bottom" border="2" height="32" width="32"></font></a></font></font></p>
102<p style="line-height: 100%;"><i>Last change:&nbsp;</i> 02/03/07 (SR)</p>
103</body></html>
Note: See TracBrowser for help on using the repository browser.