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