1 | <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN"> |
---|
2 | <html><head> |
---|
3 | |
---|
4 | |
---|
5 | |
---|
6 | <meta http-equiv="CONTENT-TYPE" content="text/html; charset=windows-1252"><title>PALM chapter 5.0</title> <meta name="GENERATOR" content="StarOffice 7 (Win32)"> <meta name="AUTHOR" content="Siegfried Raasch"> <meta name="CREATED" content="20041103;12380720"> <meta name="CHANGED" content="20041123;15532356"> <meta name="KEYWORDS" content="parallel LES model"> <style> |
---|
7 | <!-- |
---|
8 | @page { size: 21cm 29.7cm } |
---|
9 | --> |
---|
10 | </style></head><body style="direction: ltr;" lang="en-US"><h2 style="line-height: 100%;"><font size="4">5.0 |
---|
11 | Code installation<br> |
---|
12 | </font></h2> |
---|
13 | <font color="#000000">This chapter |
---|
14 | describes the installation of PALM on a Linux workstation (local host). There are two methods to install and run PALM. With the <span style="font-style: italic;">simple method</span>, you can run PALM interactively on the local computer. This method is using the scripts <span style="font-weight: bold;">palm_simple_install</span> and <span style="font-weight: bold;">palm_simple_run</span>. |
---|
15 | The simple method cannot create batch jobs itself, and cannot be used |
---|
16 | to create restart runs. Also file handling and most other features of |
---|
17 | the <span style="font-style: italic;">advanced method</span> are not available. This method is only recommended for those who like to test PALM quickly.<br> |
---|
18 | <br> |
---|
19 | The <span style="font-style: italic;">advanced method</span> is for running PALM in batch mode on a suitable remote computer. The installation procedure is using the script <span style="font-weight: bold;">mbuild</span>. All jobs are started on the local host using the script <b>mrun</b>. The PALM output is automatically sent back from the remote host to the |
---|
20 | local host. Alternatively, <span style="font-weight: bold;">mrun</span> |
---|
21 | can also be used to start PALM in interactive mode on the local host, or |
---|
22 | as a batch job on the local host (if a queueing system like NQS, PBS, or LoadLeveler is |
---|
23 | available).<br> |
---|
24 | <br> |
---|
25 | Only the <span style="font-style: italic;">advanced method</span> gives full access to all PALM features.<br> |
---|
26 | <br> |
---|
27 | </font><p style="line-height: 100%;"></p><p style="line-height: 100%;"><font color="#000000"><span style="font-weight: bold; text-decoration: underline;">Requirements</span></font></p><p style="line-height: 100%;"><font color="#000000">The |
---|
28 | installation and operation of PALM requires at mimimum (for the <span style="font-style: italic;">advanced method</span> on both, the |
---|
29 | local and the remote host, unless stated otherwise):</font></p><ol><li><font color="#000000">A Korn-shell (AT&T ksh or public |
---|
30 | domain ksh); must be |
---|
31 | available under<span style="font-family: Courier New,Courier,monospace;"> </span></font><font style="font-family: Courier New,Courier,monospace;" color="#000000">/bin/ksh</font><font color="#000000">.<span style="font-weight: bold;"></span><span style="font-weight: bold;"></span><span style="font-family: Courier New,Courier,monospace;"></span></font><font color="#000000"><span style="font-weight: bold;"></span><span style="font-weight: bold;"></span></font></li><li><font color="#000000">A NetCDF-library with version number not earlier than 3.6.2 (for |
---|
32 | NetCDF, see under <a href="http://www.unidata.ucar.edu/software/netcdf/">www.unidata.ucar.edu</a>).</font></li><li><font color="#000000">A FORTRAN90/95 compiler.</font></li><li><font color="#000000">The Message Passing Interface (MPI), at |
---|
33 | least on the remote host, if the parallel version of PALM shall be used.</font></li><li><font color="#000000">On the local host, the revision control |
---|
34 | system <span style="font-weight: bold;">subversion</span> |
---|
35 | (see <a href="http://subversion.tigris.org/">subversion.tigris.org</a>). |
---|
36 | This is already included in many Linux distributions (e.g. SuSe). <span style="font-weight: bold;">subversion requires port 3690 to |
---|
37 | be open for tcp/udp.</span> <span style="font-weight: bold;">If |
---|
38 | there are firewall restrictions concerning this port, the PALM code |
---|
39 | cannot be accessed.</span> The |
---|
40 | user needs a permit to access the PALM repository. For getting a permit |
---|
41 | please contact the PALM group (<a href="mailto:raasch@muk.uni-hannover.de">raasch@muk.uni-hannover.de</a>) |
---|
42 | and define a username under which you like to access the repository. |
---|
43 | You will then receive a password which allows access under this |
---|
44 | name.<br> |
---|
45 | <br> |
---|
46 | The <span style="font-style: italic;">advanced method</span> additionally requires:<br> |
---|
47 | </font></li><li><font color="#000000">A |
---|
48 | job queueing system on the remote host. Currently, <span style="font-weight: bold;">mrun</span> can handle |
---|
49 | LoadLeveler (IBM-AIX) and NQS/PBS (Linux-Clusters, NEC-SX).</font></li><li><font color="#000000">ssh/scp-connections to and from the remote |
---|
50 | host must not be blocked by a firewall.<br></font></li></ol><font color="#000000"><span style="font-weight: bold;"></span></font><font color="#000000"> Currently, <span style="font-weight: bold;">mrun</span> is configured |
---|
51 | to be used on a limited number of selected machines. These are SGI-ICE |
---|
52 | systems at computing center HLRN in Hannover (<span style="font-style: italic;">lcsgih</span>), Berlin (<span style="font-style: italic;">lcsgib</span>), |
---|
53 | IBM-Regatta systems<span style="font-style: italic;"></span> |
---|
54 | at Yonsei University (<span style="font-style: italic;">ibmy</span>), <span style="font-style: italic;"></span> and at DKRZ, Hamburg (<span style="font-style: italic;">ibmh</span>), an NEC-SX8 system at RIAM, |
---|
55 | Kyushu University, Fukuoka (<span style="font-style: italic;">necriam</span>), |
---|
56 | as well as on the Linux cluster of IMUK (<span style="font-style: italic;">lcmuk</span>), Tokyo |
---|
57 | Institute of Technology (<span style="font-style: italic;">lctit</span>), |
---|
58 | Kyoto computing center (<span style="font-style: italic;">lckyoto</span>), and Cray-XT4/5 systems at the Bergen Center for Computational Science (<span style="font-style: italic;">lcxt4</span>) and at the Finish Meteorological Institute (<span style="font-style: italic;">lcxt5m</span>). |
---|
59 | The strings given in brackets are the systems names (host identifiers) |
---|
60 | under which <span style="font-weight: bold;">mrun</span> |
---|
61 | identifies the |
---|
62 | different hosts.<br><br>You can also use <span style="font-weight: bold;">mrun</span>/PALM on other |
---|
63 | Linux-Cluster, IBM-AIX, or NEC-SX machines. See <a href="#configuration_for_other_machines">below</a> on |
---|
64 | how to configure <span style="font-weight: bold;">mrun</span>for |
---|
65 | other machines. However, these configurations currently (version |
---|
66 | 3.7a) allow to run PALM in interactive mode only. Batch mode requires |
---|
67 | manual adjustments for the respective queing system and MPI |
---|
68 | installation in scripts <span style="font-weight: bold;">mrun</span>, <span style="font-weight: bold;">mbuild</span>, and <span style="font-weight: bold;">subjob</span>.<br><span style="font-weight: bold;"></span><span style="font-weight: bold;"></span><span style="font-weight: bold;"></span><span style="font-weight: bold;"></span></font><p style="line-height: 100%;"><font color="#000000">The |
---|
69 | examples given in this chapter refer to an |
---|
70 | installation of PALM on an IMUK Linux workstation and (for the <span style="font-style: italic;">advanced method</span>) the SGI-ICE |
---|
71 | system of HLRN, used as remote host. They are just referred to as local and |
---|
72 | remote host from now on. </font></p><p style="line-height: 100%;"> |
---|
73 | </p><p style="line-height: 100%;">The installation |
---|
74 | process for the <span style="font-style: italic;">advanced method</span> requires a valid |
---|
75 | account on the local and on the remote host as well.</p> |
---|
76 | <p style="line-height: 100%;">The <span style="font-style: italic;">advanced installation method</span> is described below. For the <span style="font-style: italic;">simple method</span> see the <a href="#simple_installation_method">end of this chapter</a>.<br> |
---|
77 | </p> |
---|
78 | |
---|
79 | <ul> |
---|
80 | All hosts (local as well as remote) are |
---|
81 | accessed via the secure shell (ssh). The user must establish |
---|
82 | passwordless login using the private/public-key mechanism (see e.g. the |
---|
83 | <a href="http://www2.hlrn.de/doc/ssh/index.html">HLRN |
---|
84 | documentation</a>). <b>To ensure proper function of mrun, |
---|
85 | passwordless login must be |
---|
86 | established in both directions, from the local to the remote host as |
---|
87 | well as from the remote to the local host!</b> Test this by |
---|
88 | carrying |
---|
89 | out e.g. on the local host: <p style="line-height: 100%;"><span style="font-family: monospace;"> |
---|
90 | </span><span style="font-family: Courier New,Courier,monospace;">ssh |
---|
91 | <username on remote host>@<remote |
---|
92 | IP-address></span><br> </p> <p style="line-height: 100%;">and on the remote host:<br> |
---|
93 | </p> <p style="line-height: 100%;"><span style="font-family: monospace;"> |
---|
94 | </span><span style="font-family: Courier New,Courier,monospace;">ssh |
---|
95 | <username on local host>@<local IP-adddress></span><br> |
---|
96 | </p> In both cases you should not be |
---|
97 | prompted for a password. <b>Before continuing the further |
---|
98 | installation |
---|
99 | process, this must be absolutely guaranteed!</b> It must also |
---|
100 | be |
---|
101 | guaranteed for <b>all</b> other remote hosts, on which |
---|
102 | PALM shall run.<br><br>Please |
---|
103 | note that on many remote hosts, passwordless login must also work <b>within the remote host</b>, i.e. for ssh connections from the |
---|
104 | remote host to itself. Test this by executing on the remote host:<br> |
---|
105 | <br> |
---|
106 | <span style="font-family: Courier New,Courier,monospace;"> ssh |
---|
107 | <username on remote host>@<remote IP-address></span> .<br> |
---|
108 | <br> |
---|
109 | You should not be prompted |
---|
110 | for a password.<br><br> |
---|
111 | </ul> |
---|
112 | <p style="line-height: 100%;"><span style="font-weight: bold; text-decoration: underline;">Package |
---|
113 | Installation</span></p><p style="line-height: 100%;">The <b>first installation step</b> requires creating a |
---|
114 | set of directories on the local and, for the <span style="font-style: italic;">advanced method</span>, on the |
---|
115 | remote host<span style="font-style: italic;"></span>. These are:</p><div style="margin-left: 40px; font-family: Courier New,Courier,monospace;">~/job_queue<br></div><div style="margin-left: 40px; font-family: Courier New,Courier,monospace;">~/palm<br></div><div style="margin-left: 40px; font-family: Courier New,Courier,monospace;">~/palm/current_version<br></div><div style="margin-left: 40px;"><span style="font-family: Courier New,Courier,monospace;">~/palm/current_version/JOBS</span><br></div><p style="line-height: 100%;">The names of these directories can be |
---|
116 | freely selected (except <big><tt><font size="2"><big>~/job_queue</big></font></tt></big>), |
---|
117 | however new users should choose them as suggested, since many |
---|
118 | examples in this documentation as well as all example files are based on these settings. The directory <big><span style="font-family: monospace;">~/palm/current_version</span></big> |
---|
119 | on the local host will be called the working directory from now on. </p> |
---|
120 | <p style="line-height: 100%;"><font color="#000000">In |
---|
121 | the <b>second |
---|
122 | step</b> |
---|
123 | a working copy of the recent PALM version, |
---|
124 | including the source code, scripts, documentation, etc. must |
---|
125 | be |
---|
126 | copied to the working directory (</font><font color="#000000">local |
---|
127 | host!) by executing the following |
---|
128 | commands. Replace <your username> by the name that you have chosen to |
---|
129 | access the repository, and <#> by any of the available |
---|
130 | PALM |
---|
131 | releases, e.g. "<span style="font-style: italic;">3.7a</span>" |
---|
132 | (new releases will be announced to members of the PALM mailing list).</font></p><div style="margin-left: 40px;"><span style="font-family: Courier New,Courier,monospace;">cd |
---|
133 | ~/palm/current_version</span><br style="font-family: Courier New,Courier,monospace;"><span style="font-family: Courier New,Courier,monospace;">svn |
---|
134 | checkout --username <your username> |
---|
135 | svn://130.75.105.2/palm/tags/release-<#> trunk</span><br></div><p style="line-height: 100%;"><font color="#000000">You |
---|
136 | will then be prompted for your password. After completion, there should be a subdirectory</font><font style="font-family: Courier New,Courier,monospace;" color="#000000"> trunk </font><font color="#000000">in your working directory. It contains a number of further |
---|
137 | subdirectories, which contain e.g. the PALM source code (</font><font style="font-family: Courier New,Courier,monospace;" color="#000000">SOURCE</font><font color="#000000">) |
---|
138 | and the scripts for running PALM (</font><font style="font-family: Courier New,Courier,monospace;" color="#000000">SCRIPTS</font><font color="#000000">).</font></p><p style="line-height: 100%;">Alternatively, executing</p><pre style="line-height: 100%; margin-left: 40px; font-family: Courier New,Courier,monospace;">svn checkout --username <your username> svn://130.75.105.2/palm/tags/release-<#> abcde</pre><p style="line-height: 100%;">will place your working copy in a |
---|
139 | directory named<span style="font-family: Courier New,Courier,monospace;"> abcde </span>(instead |
---|
140 | of a directory named<span style="font-family: Courier New,Courier,monospace;"> trunk</span>). |
---|
141 | But keep in mind that you will have to adjust several paths given |
---|
142 | below, if you do not use the default directory<span style="font-family: Courier New,Courier,monospace;"> trunk</span>.</p><p style="line-height: 100%;">Please never touch any file in |
---|
143 | your working copy of PALM, unless you know what you |
---|
144 | are doing.</p><p style="line-height: 100%; font-weight: bold;"><span style="font-weight: normal;">You can also get a copy of the |
---|
145 | most recent developer code by executing</span></p><pre style="line-height: 100%; margin-left: 40px; font-family: Courier New,Courier,monospace;">svn checkout --username <your username> svn://130.75.105.2/palm/trunk trunk</pre>This version may contain new features (they might not be documented well), but it may also contain bugs.<span style="font-weight: bold;"><br> |
---|
146 | </span><br> |
---|
147 | <p style="line-height: 100%;"></p><p style="line-height: 100%;"><font color="#000000"><span style="font-weight: bold; text-decoration: underline;">Package |
---|
148 | Configuration</span></font></p><p style="line-height: 100%;"><font color="#000000">To |
---|
149 | use the PALM scripts, the <span style="font-family: Courier New,Courier,monospace;">PATH</span>-variable |
---|
150 | has to be extended and the |
---|
151 | environment variable<span style="font-family: Courier New,Courier,monospace;"> |
---|
152 | PALM_BIN </span>has to be set (on local and remote host) |
---|
153 | in the respective profile of the users default shell (e.g. in<span style="font-family: Courier New,Courier,monospace;"> .profile</span>, |
---|
154 | if<span style="font-family: Courier New,Courier,monospace;"> |
---|
155 | ksh </span>is used):</font></p><p style="line-height: 100%; margin-left: 40px;"><font style="font-family: Courier New,Courier,monospace;" color="#000000">export |
---|
156 | PATH=$HOME/palm/current_version/trunk/SCRIPTS:$PATH</font><font color="#000000"><br><span style="font-family: Courier New,Courier,monospace;">export |
---|
157 | PALM_BIN=</span></font><font style="font-family: Courier New,Courier,monospace;" color="#000000">$HOME/palm/current_version/trunk/SCRIPTS</font></p><p style="line-height: 100%;"><font color="#000000">You |
---|
158 | may have to login again in order to activate these settings.</font></p><font color="#000000">On the local and on the remote host, some |
---|
159 | small helper/utility programs have to be installed, which |
---|
160 | are later used by <span style="font-weight: bold;">mrun</span> e.g. |
---|
161 | for PALM data postprocessing. The installation is done by <span style="font-weight: bold;">mbuild</span>. This script |
---|
162 | requires a configuration file<span style="font-family: Courier New,Courier,monospace;"> |
---|
163 | .mrun.config</span>, which will be also used by <span style="font-weight: bold;">mrun</span> in the |
---|
164 | following. A copy has to be put into the working directory under the |
---|
165 | name<span style="font-family: Courier New,Courier,monospace;"> |
---|
166 | .mrun.config </span>by</font><p style="line-height: 100%; margin-left: 40px;"><font color="#000000"><span style="font-family: Courier New,Courier,monospace;">cp |
---|
167 | trunk/SCRIPTS/.mrun.config.default .mrun.config</span></font></p><font color="#000000">Beside many other things, this file contains |
---|
168 | typical installation parameters |
---|
169 | like compiler name, compiler options, etc. |
---|
170 | for a set of different (remote) hosts. Please edit this file, uncomment |
---|
171 | lines like</font><div style="margin-left: 40px; font-family: Courier New,Courier,monospace;">#%remote_username |
---|
172 | <replace by your ... username> |
---|
173 | <host identifier></div><p style="line-height: 100%;"><font color="#000000">by |
---|
174 | removing the first hash (<span style="font-family: Courier New,Courier,monospace;">#</span>) |
---|
175 | character and replace the string "<span style="font-family: Courier New,Courier,monospace;"><replace |
---|
176 | by ...></span>" by your username on the respective host |
---|
177 | given in the <span style="font-family: Courier New,Courier,monospace;"><host |
---|
178 | identifier></span>. |
---|
179 | You only have to uncomment lines for those hosts on which you intend to |
---|
180 | use PALM.</font></p><p style="line-height: 100%;"><font color="#000000"><span style="font-weight: bold;">Warning: |
---|
181 | When editing the configuration file, please NEVER use the TAB key. |
---|
182 | Otherwise, very confusing errors may occur when mrun is executing.</span></font></p><p style="line-height: 100%;"><font color="#000000">Beside the default configuration file</font><font style="font-family: Courier New,Courier,monospace;" color="#000000"> .mrun.config.default</font><font color="#000000">, the directory<span style="font-family: Courier New,Courier,monospace;"> |
---|
183 | trunk/SCRIPTS </span>contains additional configuration files |
---|
184 | which are already adjusted for special hosts</font><font color="#000000">, e.g.</font><font color="#000000"><span style="font-family: Courier New,Courier,monospace;"> |
---|
185 | .mrun.config.imuk </span>can be used at Hannover University</font><font color="#000000">, etc.. </font><font color="#000000">These files have to be edited in the same way as described |
---|
186 | above.</font></p><p style="line-height: 100%;"><font color="#000000">After modifying the configuration file, the |
---|
187 | respective executables are generated by executing</font></p><p style="line-height: 100%; margin-left: 40px; font-family: Courier New,Courier,monospace;"><font color="#000000">mbuild -u -h lcmuk<br>mbuild -u -h |
---|
188 | lcsgih</font></p><p style="line-height: 100%;"><font color="#000000">The |
---|
189 | second call also copies the PALM scripts (like <span style="font-weight: bold;">mrun</span> and <span style="font-weight: bold;">mbuild</span>) to the |
---|
190 | remote |
---|
191 | host.<br> |
---|
192 | <br> |
---|
193 | </font></p><p style="line-height: 100%;"></p><p style="line-height: 100%;"><font color="#000000"><span style="font-weight: bold; text-decoration: underline;">Pre-Compilation |
---|
194 | of PALM Code</span></font></p><font color="#000000"> |
---|
195 | </font><br><font color="#000000">To avoid the |
---|
196 | re-compilation of the complete source code for each model run, PALM |
---|
197 | willl be pre-compiled once on the remote host by again using the script |
---|
198 | <span style="font-weight: bold;">mbuild</span>. Due |
---|
199 | to the use of |
---|
200 | FORTRAN modules in the source code, the subroutines must be compiled |
---|
201 | in a certain order. Therefore the so-called <i>make</i> |
---|
202 | mechanism |
---|
203 | is used (see the respective man-page of the Unix operating system), |
---|
204 | requiring a<span style="font-family: Courier New,Courier,monospace;"> |
---|
205 | </span></font><font style="font-family: Courier New,Courier,monospace;" color="#000000">Makefile</font><font color="#000000">, |
---|
206 | in which the dependencies are described. This file is found in |
---|
207 | subdirectory <span style="font-family: Courier New,Courier,monospace;">trunk/SOURCE</span></font><font color="#000000">, where |
---|
208 | also the PALM code is stored.</font><font color="#000000"> The compiled |
---|
209 | sources (object |
---|
210 | files) are |
---|
211 | stored on the remote computer in the default directory |
---|
212 | </font><font style="font-family: Courier New,Courier,monospace;" color="#000000">~/palm/current_version/MAKE_DEPOSITORY</font>_<span style="font-family: Courier New,Courier,monospace;"><block_descriptor></span>, where<font color="#000000"> <span style="font-family: Courier New,Courier,monospace;"><block_descriptor></span> is composed of the third (and fourth, if existing) column of the respective block in the configuration file (e.g. <span style="font-family: Courier New,Courier,monospace;">lcsgih_parallel</span> for HLRN).<span style="font-weight: bold;"></span></font><p style="line-height: 100%;"><font color="#000000">The |
---|
213 | pre-compilation for the remote host (here the SGI-ICE system of HLRN) |
---|
214 | is |
---|
215 | done by</font><span style="font-family: monospace;"></span></p><div style="margin-left: 40px;"><span style="font-family: Courier New,Courier,monospace;">mbuild |
---|
216 | -h lcsgih </span></div><p style="line-height: 100%;"><span style="font-family: Courier New,Courier,monospace;">mbuild |
---|
217 | </span>will prompt some queries<font color="#000000">, |
---|
218 | which must all be |
---|
219 | answered "y" by the user. The compiling process </font><font color="#000000">will take some time.<span style="font-family: Courier New,Courier,monospace;"> </span></font><font style="font-family: Courier New,Courier,monospace;" color="#000000">mbuild</font><font color="#000000"><span style="font-family: Courier New,Courier,monospace;"> </span>transfers |
---|
220 | the respective compiler calls to the remote |
---|
221 | host where they are carried out interactively. You can follow the |
---|
222 | progress at the terminal window, where also error messages |
---|
223 | are displayed (hopefully not for this standard installation). By just |
---|
224 | entering </font></p><p style="line-height: 100%;"> |
---|
225 | </p><blockquote style="line-height: 100%; font-family: Courier New,Courier,monospace;"><font color="#000000">mbuild</font></blockquote> |
---|
226 | <p style="line-height: 100%;"><font color="#000000">PALM |
---|
227 | will |
---|
228 | be (consecutively) pre-compiled for all remote hosts listed in |
---|
229 | the configuration file. If you want to compile for the local host only, |
---|
230 | please enter</font></p><p style="line-height: 100%; margin-left: 40px;"><font color="#000000"><span style="font-family: Courier New,Courier,monospace;">mbuild |
---|
231 | -h lcmuk</span> </font> |
---|
232 | </p><p style="line-height: 100%;"></p><p style="line-height: 100%; font-weight: bold; text-decoration: underline;"><font color="#000000">Installation Verification</font></p><font color="#000000">As a last step, |
---|
233 | after the compilation has been finished, the PALM installation has to |
---|
234 | be verified. For this |
---|
235 | purpose a simple test run is carried out. This once again requires the <b>mrun |
---|
236 | </b>configuration file (described in </font><a href="chapter_3.2.html"><font color="#000080">chapter |
---|
237 | 3.2</font></a><font color="#000000">), as well |
---|
238 | as the </font><a href="http://www.muk.uni-hannover.de/%7Eraasch/PALM_group/INSTALL/example_cbl_p3d"><font color="#000080">parameter |
---|
239 | file</font></a><font color="#000000"> |
---|
240 | (described in </font><a href="chapter_4.4.1.html"><font color="#000080">chapter |
---|
241 | 4.4.1</font></a>)<font color="#000000">. The |
---|
242 | parameter file must be |
---|
243 | copied from the PALM working copy by<br> |
---|
244 | </font><div style="margin-left: 40px;"><span style="font-family: monospace;"></span><font style="font-family: Courier New,Courier,monospace;" color="#000000">mkdir -p JOBS/example_cbl/INPUT<br>cp |
---|
245 | trunk/INSTALL/example_cbl_p3d JOBS/example_cbl/INPUT/example_cbl_p3d</font><font color="#000000"><span style="font-family: Courier New,Courier,monospace;"></span></font></div> |
---|
246 | <p style="line-height: 100%;"><font color="#000000">The |
---|
247 | test run can |
---|
248 | now be started by executing the command </font> |
---|
249 | </p><pre style="margin-left: 1cm; margin-right: 1cm; margin-bottom: 0.5cm; line-height: 100%; font-family: Courier New,Courier,monospace;"><font color="#000000">mrun -d example_cbl -h lcsgih -K parallel -X 8 -T 8 -t 500 -q testq -r d3# pr#</font></pre><font color="#000000">This specific run |
---|
250 | will be carried out on 8 PEs and is allowed to use up to 500 seconds |
---|
251 | CPU time. After pressing <return>, the most important |
---|
252 | settings of |
---|
253 | the job are displayed at the terminal window |
---|
254 | and the user is prompted for o.k. (</font><font style="font-family: Courier New,Courier,monospace;" color="#000000">y</font><font color="#000000">). |
---|
255 | Next, a message of the queuing system like <i>Request</i> |
---|
256 |
|
---|
257 | <i>Submitted to queue
by
</i>should |
---|
258 | be displayed. Now the job is |
---|
259 | queued and either started immediately or at a later time, depending on |
---|
260 | the |
---|
261 | current workload of the remote host. Provided that it is executed |
---|
262 | immediately and that all things work as designed, the job protocol of |
---|
263 | this run will appear under the file name<span style="font-family: Courier New,Courier,monospace;"> </span></font><font style="font-family: Courier New,Courier,monospace;" color="#000000">~/job_queue/lcsgih_example</font><font color="#000000"><span style="font-family: Courier New,Courier,monospace;"> </span>no |
---|
264 | more than a few minutes later. The content of this |
---|
265 | file should be carefully examined for any error messages.</font><p style="line-height: 100%;"> |
---|
266 | </p><p style="line-height: 100%;">Beside the job |
---|
267 | protocol and according to |
---|
268 | the configuration file and arguments given for <b>mrun</b> |
---|
269 | options<span style="font-family: Courier New,Courier,monospace;"> |
---|
270 | -d </span>and<span style="font-family: Courier New,Courier,monospace;"> -r</span><tt>,</tt>further |
---|
271 | files should be found in |
---|
272 | the |
---|
273 | directories</p><div style="margin-left: 40px; font-family: Courier New,Courier,monospace;">~/palm/current_version/JOBS/example_cbl/MONITORING</div><p style="line-height: 100%;">and</p> |
---|
274 | <p style="line-height: 100%;"><span style="font-family: monospace;"> |
---|
275 | </span><span style="font-family: Courier New,Courier,monospace;">~/palm/current_version/JOBS/example_cbl/OUTPUT</span><span style="font-family: monospace;"></span><br> |
---|
276 | </p><p style="line-height: 100%;">Please compare the |
---|
277 | contents of file</p> |
---|
278 | <p style="line-height: 100%;"><span style="font-family: monospace;"> |
---|
279 | </span><span style="font-family: Courier New,Courier,monospace;">~/palm/current_version/JOBS/example_cbl/MONITORING/lcsgih_example_rc</span><br> |
---|
280 | </p><p style="line-height: 100%;">with those of the |
---|
281 | example result file which can be found under<span style="font-family: Courier New,Courier,monospace;"> |
---|
282 | trunk/INSTALL/example_cbl_rc</span>., e.g. by using the<span style="font-family: Courier New,Courier,monospace;"><span style="font-family: Times New Roman,Times,serif;"> standard</span> |
---|
283 | diff </span>command:</p><p style="line-height: 100%; margin-left: 40px; font-family: Courier New,Courier,monospace;">diff |
---|
284 | JOBS/example_cbl/MONITORING/lcsgih_example_cbl_rc |
---|
285 | trunk/INSTALL/example_cbl_rc</p><p style="line-height: 100%;">where |
---|
286 | it is assumed that your working directory is<span style="font-family: Courier New,Courier,monospace;"> |
---|
287 | ~/palm/current_version</span>.</p><span style="font-weight: bold;">You should not find any |
---|
288 | difference between these two files</span>, except of the run date |
---|
289 | and time displayed at the top of the file header. <font color="#000000">If |
---|
290 | the file contents are identical, the installation is successfully |
---|
291 | completed.<br><br></font><p style="line-height: 100%;"></p><p style="line-height: 100%; font-weight: bold; text-decoration: underline;"><font color="#000000"><a name="configuration_for_other_machines"></a>Configuration |
---|
292 | for other machines</font></p><font color="#000000">Starting |
---|
293 | from version 3.2a, beside the default hosts (HLRN, etc.), PALM can also |
---|
294 | be installed and run on other Linux-Cluster-, IBM-AIX, or |
---|
295 | NEC-SX-systems. To configure PALM for a non-default host only requires |
---|
296 | to add some lines to the configuration file<span style="font-family: Courier New,Courier,monospace;"> |
---|
297 | .mrun.config</span>.<br><br>First, |
---|
298 | you have to define the host identifier (a string of arbitrary length) |
---|
299 | under which your local host shall be identified by adding a line<br><br></font><div style="margin-left: 40px;"><span style="font-family: Courier New,Courier,monospace;">%host_identifier |
---|
300 | <hostname> <host |
---|
301 | identifier></span><br></div><br>to the |
---|
302 | configuration file (best to do this in the section where the other |
---|
303 | default host identifiers are defined). Here<span style="font-family: Courier New,Courier,monospace;"> |
---|
304 | <hostname> </span>must be the name of your local |
---|
305 | host as provided by the unix-command "<span style="font-family: Courier New,Courier,monospace;">hostname</span>". |
---|
306 | The first characters of<span style="font-family: Courier New,Courier,monospace;"> |
---|
307 | <host identifier> </span>have to be "<span style="font-family: Courier New,Courier,monospace;">lc</span>", |
---|
308 | if your system is (part of) a linux-cluster, "<span style="font-family: Courier New,Courier,monospace;">ibm</span>", |
---|
309 | or "<span style="font-family: Courier New,Courier,monospace;">nec</span>" |
---|
310 | in case of an IBM-AIX- or NEC-SX-system, respectively. For example, if |
---|
311 | you want to install on a linux-cluster, the line may read as<br><br><div style="margin-left: 40px;">%host_identifier foo |
---|
312 | lc_bar<br></div><br>In |
---|
313 | the second step, you have to give all informations neccessary to |
---|
314 | compile and run PALM on your local host by adding an additional section |
---|
315 | to the configuration file:<br><br><div style="margin-left: 40px; font-family: Courier New,Courier,monospace;">%remote_username |
---|
316 | <1> <host |
---|
317 | identifier> parallel<br>%tmp_user_catalog |
---|
318 | <2> <host |
---|
319 | identifier> parallel<br>%compiler_name |
---|
320 | <3> <host |
---|
321 | identifier> parallel<br>%compiler_name_ser |
---|
322 | <4> <host |
---|
323 | identifier> parallel<br>%cpp_options |
---|
324 | <5> <host |
---|
325 | identifier> parallel<br>%netcdf_inc |
---|
326 | <6> <host |
---|
327 | identifier> parallel<br>%netcdf_lib |
---|
328 | <7> <host |
---|
329 | identifier> parallel<br>%fopts |
---|
330 | <8> <host |
---|
331 | identifier> parallel<br>%lopts |
---|
332 | <9> |
---|
333 | <host identifier> parallel<br></div><br>The |
---|
334 | section consists of four columns each separated by one or more blanks. |
---|
335 | The first column gives the name of the respective environment variable |
---|
336 | used by <span style="font-weight: bold;">mrun</span> |
---|
337 | and <span style="font-weight: bold;">mbuild</span>, |
---|
338 | while the second column defines its value. The third column has to be |
---|
339 | the host identifier as defined above, and the last column in each line |
---|
340 | must contain the string "<span style="font-family: Courier New,Courier,monospace;">parallel</span>". |
---|
341 | Otherwise, the respective line(s) will be interpreted as belonging to |
---|
342 | the setup for compiling and running a serial (non-parallel) version of |
---|
343 | PALM.<br><br>All brackets have to be replaced by the |
---|
344 | appropriate settings for your local host:<br><ul><li><span style="font-family: Courier New,Courier,monospace;"><1> |
---|
345 | </span>is the username on your LOCAL host</li><li><span style="font-family: Courier New,Courier,monospace;"><2> |
---|
346 | </span>is the temporary directory in which PALM runs will be |
---|
347 | carried out</li><li><span style="font-family: Courier New,Courier,monospace;"><3> |
---|
348 | </span>is the compiler name which generates parallel code</li><li><span style="font-family: Courier New,Courier,monospace;"><4> |
---|
349 | </span>is the compiler name for generating serial code</li><li><span style="font-family: Courier New,Courier,monospace;"><5> |
---|
350 | </span>are |
---|
351 | the preprocessor options to be invoked. In most of the cases, it will |
---|
352 | be neccessary to adjust the MPI data types to double precision by |
---|
353 | giving <span style="font-family: Courier New,Courier,monospace;">-DMPI_REAL=MPI_DOUBLE_PRECISION |
---|
354 | -DMPI_2REAL=MPI_2DOUBLE_PRECISION</span>. To switch on the NetCDF |
---|
355 | support, you also have to give <span style="font-family: Courier New,Courier,monospace;">-D__netcdf</span> |
---|
356 | and <span style="font-family: Courier New,Courier,monospace;">-D__netcdf4</span> |
---|
357 | (if you like to have NetCDF4/HDF5 data format; this requires a NetCDF4 library!).</li><li><span style="font-family: Courier New,Courier,monospace;"><6> |
---|
358 | </span>is the compiler option for specifying the include path to |
---|
359 | search for the NetCDF module/include files</li><li><span style="font-family: Courier New,Courier,monospace;"><7> |
---|
360 | </span>are the linker options to search for the NetCDF library</li><li><span style="font-family: Courier New,Courier,monospace;"><8> |
---|
361 | </span>are the general compiler options to be used. You should |
---|
362 | allways switch on double precision (e.g. <span style="font-family: Courier New,Courier,monospace;">-r8</span>) |
---|
363 | and code optimization (e.g. <span style="font-family: Courier New,Courier,monospace;">-O2</span>).</li><li><span style="font-family: Courier New,Courier,monospace;"><9> |
---|
364 | </span>are the linker options</li><li><span style="font-family: Courier New,Courier,monospace;"><host |
---|
365 | identifier> </span>is the host identifier as defined |
---|
366 | before</li></ul><br>A typical example may be:<br><div style="margin-left: 40px; font-family: Courier New,Courier,monospace;">%remote_username |
---|
367 | raasch |
---|
368 | |
---|
369 | |
---|
370 | lc_bar parallel<br>%tmp_user_catalog |
---|
371 | /tmp lc_bar |
---|
372 | parallel<br>%compiler_name |
---|
373 | mpif90 lc_bar |
---|
374 | parallel<br>%compiler_name_ser |
---|
375 | ifort lc_bar |
---|
376 | parallel<br>%cpp_options |
---|
377 | -DMPI_REAL=MPI_DOUBLE_PRECISION:-DMPI_2REAL=MPI_2DOUBLE_PRECISION:-D__netcdf lc_bar parallel<br>%netcdf_inc |
---|
378 | -I:/usr/local/netcdf/include |
---|
379 | lc_bar parallel<br>%netcdf_lib |
---|
380 | -L/usr/local/netcdf/lib:-lnetcdf |
---|
381 | lc_bar parallel<br>%fopts |
---|
382 | -axW:-cpp:-openmp:-r8:-nbs |
---|
383 | |
---|
384 | lc_bar parallel<br>%lopts |
---|
385 | -axW:-cpp:-openmp:-r8:-nbs:-Vaxlib lc_bar |
---|
386 | parallel<br></div><br>Currently (version 3.7a), |
---|
387 | depending on the MPI |
---|
388 | version which is running on your local host, the options for the |
---|
389 | execution command (which may be <span style="font-family: Courier New,Courier,monospace;">mpirun</span> |
---|
390 | or <span style="font-family: Courier New,Courier,monospace;">mpiexec</span>) |
---|
391 | may have to be adjusted manually in the <span style="font-weight: bold;">mrun</span>-script. A future version |
---|
392 | will allow to give the respective settings in the configuration file. |
---|
393 | <p style="line-height: 100%;">If you have any problems |
---|
394 | with the PALM |
---|
395 | installation, the members of the PALM working group are pleased to |
---|
396 | help you.<br> |
---|
397 | </p> |
---|
398 | <p style="line-height: 100%;"><br> |
---|
399 | <span style="font-weight: bold; text-decoration: underline;"><a name="simple_installation_method"></a>Simple installation method</span><br> |
---|
400 | </p> |
---|
401 | <p style="line-height: 100%;">The simple installation method is using the scripts <span style="font-weight: bold;">palm_simple_install</span> and <span style="font-weight: bold;">palm_simple_run</span> for installing and running PALM.<br> |
---|
402 | <br> |
---|
403 | <span style="font-weight: bold; text-decoration: underline;">Package |
---|
404 | Installation</span></p> |
---|
405 | <p style="line-height: 100%;"><span style="font-weight: bold;">First step:</span> Create a directory<span style="font-style: italic;"></span>:</p> |
---|
406 | <div style="margin-left: 40px; font-family: Courier New,Courier,monospace;">mkdir -p ~/palm/current_version/</div> |
---|
407 | <p style="line-height: 100%;">You can freely choose the directory name, but if you intend to switch to the <span style="font-style: italic;">advanced method</span> of running PALM later, you should use<span style="font-family: Courier New,Courier,monospace;"> ~/palm/current_version</span>. This directory <big><span style="font-family: monospace;"></span></big>will be called working directory from now on. </p> |
---|
408 | |
---|
409 | <p style="line-height: 100%;"><font color="#000000"><span style="font-weight: bold;">S</span><b>econd |
---|
410 | step</b>: |
---|
411 | Check out a working copy of the recent PALM version from the svn-repository</font><font color="#000000">. Replace<span style="font-family: Courier New,Courier,monospace;"> <your username> </span>by your valid repository username, and<span style="font-family: Courier New,Courier,monospace;"> <#> </span>by any of the available |
---|
412 | PALM |
---|
413 | releases, e.g. "<span style="font-style: italic;">3.7a</span>" |
---|
414 | (new releases will be announced to members of the PALM mailing list).</font></p> |
---|
415 | <div style="margin-left: 40px;"><span style="font-family: Courier New,Courier,monospace;">cd |
---|
416 | ~/palm/current_version</span><br style="font-family: Courier New,Courier,monospace;"><span style="font-family: Courier New,Courier,monospace;">svn |
---|
417 | checkout --username <your username> |
---|
418 | svn://130.75.105.2/palm/tags/release-<#> trunk</span><br></div> |
---|
419 | <p style="line-height: 100%;"><font color="#000000">You |
---|
420 | will be prompted for your password. After completion, a subdirectory</font><font style="font-family: Courier New,Courier,monospace;" color="#000000"> trunk <span style="font-family: Times New Roman,Times,serif;">will appear </span></font><font color="#000000">in your working directory. It contains a number of further |
---|
421 | subdirectories, which contain e.g. the PALM source code (</font><font style="font-family: Courier New,Courier,monospace;" color="#000000">SOURCE</font><font color="#000000">) |
---|
422 | and the scripts for running PALM (</font><font style="font-family: Courier New,Courier,monospace;" color="#000000">SCRIPTS</font><font color="#000000">). For checking out the most recent PALM version (developer version), see the <span style="font-style: italic;">advanced installation method</span> described above.<br> |
---|
423 | </font></p> |
---|
424 | <p style="line-height: 100%;">Please never touch any file in |
---|
425 | your working copy of PALM, unless you really know what you |
---|
426 | are doing.</p> |
---|
427 | <br> |
---|
428 | |
---|
429 | <p style="line-height: 100%;"><font color="#000000"><span style="font-weight: bold; text-decoration: underline;">Configuration and compilation<br> |
---|
430 | </span></font></p> |
---|
431 | <p style="line-height: 100%;"><font color="#000000"><span style="font-weight: bold;">Third step:</span> To |
---|
432 | use the PALM scripts, the <span style="font-family: Courier New,Courier,monospace;">PATH</span>-variable |
---|
433 | has to be extended and the |
---|
434 | environment variable<span style="font-family: Courier New,Courier,monospace;"> |
---|
435 | PALM_BIN </span>has to be set. For convenience, setting should be done |
---|
436 | in the respective profile of the users default shell (e.g. in<span style="font-family: Courier New,Courier,monospace;"> .profile</span>, |
---|
437 | if<span style="font-family: Courier New,Courier,monospace;"> |
---|
438 | ksh </span>is used):</font></p> |
---|
439 | <p style="line-height: 100%; margin-left: 40px;"><font color="#000000"><span style="font-family: Courier New,Courier,monospace;">export |
---|
440 | PALM_BIN=</span></font><font style="font-family: Courier New,Courier,monospace;" color="#000000">$HOME/palm/current_version/trunk/SCRIPTS<br> |
---|
441 | </font><font style="font-family: Courier New,Courier,monospace;" color="#000000">export |
---|
442 | PATH=$PALM_BIN:$PATH</font><font color="#000000"><span style="font-family: Courier New,Courier,monospace;"><br> |
---|
443 | </span></font></p> |
---|
444 | <p style="line-height: 100%;"><font color="#000000">You |
---|
445 | may have to login again in order to activate the profile settings.<br> |
---|
446 | </font></p> |
---|
447 | <p style="line-height: 100%;"><font color="#000000"><span style="font-weight: bold;">Fourth step:</span> Call the installation script:<br> |
---|
448 | </font></p> |
---|
449 | <p style="line-height: 100%; margin-left: 40px;"><font style="font-family: Courier New,Courier,monospace;" color="#000000">palm_simple_install -i MAKE.inc.ifort.imuk</font><font color="#000000"><span style="font-family: Courier New,Courier,monospace;"><br> |
---|
450 | </span></font></p> |
---|
451 | |
---|
452 | <p style="line-height: 100%;"><font color="#000000">The script copies the PALM source code into a new subdirectory <span style="font-family: Courier New,Courier,monospace;">MAKE_DEPOSITORY_simple</span>. This directory also will contain a <span style="font-family: Courier New,Courier,monospace;">Makefile</span> and an include file <span style="font-family: Courier New,Courier,monospace;">MAKE.inc</span> |
---|
453 | to be used for compiling the code in the next step. The include file |
---|
454 | contains compiler name, compiler options, library path for NetCDF, etc. |
---|
455 | <span style="font-weight: bold;">Please adjust these settings as required by your system, before you proceed with the next step.</span> The default settings in <span style="font-family: Courier New,Courier,monospace;">MAKE.inc</span> |
---|
456 | are for the Intel-FORTRAN compiler in the IMUK environment. You may |
---|
457 | find default settings for other compilers and environments in <span style="font-family: Courier New,Courier,monospace;">.../trunk/INSTALL/</span> See for files<span style="font-family: Courier New,Courier,monospace;"> MAKE.inc.*</span>.<br> |
---|
458 | </font></p> |
---|
459 | <p style="line-height: 100%; margin-left: 40px;"><span style="font-family: Courier New,Courier,monospace;">cd MAKE_DEPOSITORY_simple<br> |
---|
460 | </span><font color="#000000"><span style="font-family: Courier New,Courier,monospace;">make<br> |
---|
461 | cd ..<br> |
---|
462 | </span></font></p> |
---|
463 | |
---|
464 | |
---|
465 | <p style="line-height: 100%;">In order to shorten compilation time, you can run make in parallel, e.g.<span style="font-family: Courier New,Courier,monospace;"> make -j 4 </span>runs 4 compile threads simultaneously.<br> |
---|
466 | <br> |
---|
467 | <span style="font-weight: bold;">Fifth step:</span> Carry out a test |
---|
468 | run in order to check the installation. The test run (as every PALM |
---|
469 | run) requires a parameter file for steering PALM, which is in |
---|
470 | FORTRAN-NAMELIST format. This file has been already generated by the |
---|
471 | installation script <span style="font-family: Courier New,Courier,monospace;">palm_simple_install</span> under <span style="font-family: Courier New,Courier,monospace;">JOBS/example_cbl/INPUT/example_cbl_p3d</span><span style="font-family: Courier New,Courier,monospace;"></span>. PALM is started with script <span style="font-family: Courier New,Courier,monospace;">palm_simple_run</span>. <span style="font-weight: bold;">Before</span> the first run, it may be necessary to change the MPI-execution command (<span style="font-family: Courier New,Courier,monospace;">mpiexec</span>, <span style="font-family: Courier New,Courier,monospace;">mpirun</span>, etc.) and options in this script, depending on the MPI-library that you are using. The script can be found in directory <span style="font-family: Courier New,Courier,monospace;">.../trunk/SCRIPTS</span>. |
---|
472 | Default settings in this script are for the SGI-mpt-library installed |
---|
473 | on HLRN. You will find the execution command almost at the end of this |
---|
474 | script. After having adjusted the MPI-execution command, start the run |
---|
475 | with:<br> |
---|
476 | </p> |
---|
477 | <p style="line-height: 100%; margin-left: 40px;"><span style="font-family: Courier New,Courier,monospace;">palm_simple_run -p 4 -n 4 -c example_cbl</span><font color="#000000"><span style="font-family: Courier New,Courier,monospace;"><br> |
---|
478 | </span></font></p> |
---|
479 | |
---|
480 | |
---|
481 | |
---|
482 | <p style="line-height: 100%;">where option <span style="font-family: Courier New,Courier,monospace;">-p</span> gives the total number of MPI tasks, <span style="font-family: Courier New,Courier,monospace;">-n</span> gives the number of MPI tasks per node, and <span style="font-family: Courier New,Courier,monospace;">-c</span> gives the parameter file to be used.<br> |
---|
483 | After the run has finished, all OUTPUT files can be found in directory <span style="font-family: Courier New,Courier,monospace;">OUTPUT....</span> Names and contents of PALM output files are described in <a href="chapter_3.4.html">chapter 3.4</a>. |
---|
484 | The directory name is composed of the parameter file name, the number |
---|
485 | of cores that have been used, and the current data and time. For every |
---|
486 | run a unique directory is created.<br> |
---|
487 | </p> |
---|
488 | <p style="line-height: 100%;"><span style="font-weight: bold;">Sixth step:</span> To verify the results of this example run, compare it with the default result:<br> |
---|
489 | <span style="font-weight: bold;"></span></p> |
---|
490 | <p style="line-height: 100%; margin-left: 40px;"><span style="font-family: Courier New,Courier,monospace;">diff OUTPUT..../RUN_CONTROL trunk/INSTALL/example_cbl_rc</span><font color="#000000"><span style="font-family: Courier New,Courier,monospace;"><br> |
---|
491 | </span></font></p> |
---|
492 | |
---|
493 | |
---|
494 | |
---|
495 | |
---|
496 | <span style="font-weight: bold;">You should not find any |
---|
497 | difference between these two files</span>, except of the run date |
---|
498 | and time displayed at the top of the file header, and, maybe, the number of cores that have been used. <font color="#000000">If |
---|
499 | the file contents are identical, the installation is successfully |
---|
500 | completed.</font><hr><p style="line-height: 100%;"><font color="#000080"><font color="#000080"><a href="chapter_4.6.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 style="border: 2px solid ; width: 32px; height: 32px;" alt="up" src="up.gif" name="Grafik2"></font></a><a href="chapter_5.1.html"><font color="#000080"><img src="right.gif" name="Grafik3" align="bottom" border="2" height="32" width="32"></font></a></font></font></p><p style="line-height: 100%;"><i>Last |
---|
501 | change: </i> $Id: chapter_5.0.html 287 2009-04-09 |
---|
502 | 08:59:36Z raasch $</p> |
---|
503 | </body></html> |
---|