Changes between Version 99 and Version 100 of doc/install


Ignore:
Timestamp:
Sep 20, 2021 11:22:02 PM (3 years ago)
Author:
knoop
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • doc/install

    v99 v100  
     1[[TracNav(doc/install/toc)]]
     2
    13= Download & Installation =
    24
    35
    4 == Download ==
    5 If you are interested in using or just testing the code, please create an account using the [[//trac/register|register form]]. This account will give you access to the PALM repository and also allow you to login on this trac-server, e.g. to submit trouble tickets, or to edit the wiki, if you have proper access permissions. As a registered user you will also be informed about new PALM updates by email. With your account you can then download the code via svn as described below. If you have further questions please contact [mailto:giersch@muk.uni-hannover.de].
     6== [=#download]Download ==
    67
    7 We appreciate any comments on the contents of this server which may help us to improve our documentation. Please contact us by [[mailto:giersch@muk.uni-hannover.de|email]] or just send a [/newticket ticket] if you are a registered user.
     8If you are interested in using or just testing the code, you can download all available PALM releases from our [https://gitlab.palm-model.org/releases/palm_model_system/-/releases GitLab Server]
     9
     10
     11== [=#requirements]Software requirements ==
     12
     13In order to successfully install PALM, please meet the following software requirements:
     14
     15 - The '''bash''' shell (available at /bin/bash).
     16 - A recent '''Fortran''' and '''C++''' Compiler (GNU, Intel, Cray, PGI, NEC).
     17 - The build automation tools '''cmake''' and '''make''' (for library detection and build coordination).
     18 - The Message Passing Interface ('''MPI''') library with MPI-3 support (compiled with the same compiler as PALM).
     19 - A '''NetCDF''' library not earlier than 3.6.3 (compiled with the same Compiler as PALM).
     20 - The FFT library '''FFTW''' (PALM also comes with a build-in FFT but with less performance).
     21 - '''Python 3''' (needed by the GUI and other helper routines).
     22 - '''PyQt5''' (needed by the GUI).
     23 - The graphic-package '''NCL''' from NCAR (needed by the data visualization tool palmplot).
     24 - The '''FLEX''' library '''BISON''' parser generator (needed by the chemistry tool kpp4palm)
     25
     26The {{{README.md}}} file that ships with the PALM Model System release Package provides a one-liner that triggers the installation of all requirements on most Debian-based Linux Distributions like Ubuntu etc.
     27
     28'''Very important:''' It is essential that your NetCDF and MPI library has been built with the same Fortran compiler that is used to compile PALM. Furthermore, in case of a NetCDF4 library with parallel I/O support, the NetCDF library needs to be build with the same MPI library as used for compiling PALM.
     29
    830
    931== [=#installation]PALM installation ==
    10 [[TracNav(doc/install/toc)]]
    1132
    12 This page gives a brief overview of available installation methods of PALM on a Linux system. Here we differentiate between two perspectives on a computer. The first is the local computer (or local host), which is the computer that you are currently sitting at or are logged in via your terminal (ssh). The second is the remote computer (or remote host), which is any computer with a batch system, that you have {{{ssh}}} access to, but are not logged in at the moment. A typical remote computer is your favorite high performance computing (HPC) facility aka supercomputer. This perspective includes, that your remote (super)computer immediately becomes your local computer as soon as you log into it via {{{ssh}}}.\\\\
     33From our [https://gitlab.palm-model.org/releases/palm_model_system/-/releases GitLab Server] the PALM Model System can be downloaded as a zip or tar archive. Please unpack the content to a directory of your choice and open a terminal inside that directory. Please follow the installation instructions described in the {{{README.md}}} file that ships with the PALM Model System release Package. The installation instructions mention, that an {{{<install-prefix>}}} needs to be chosen. Please be aware that this directory will become the storage location for all your PALM input and output data. So you might wand to make sure to have sufficient disk space. In order to create a directory structure similar to the one that was standard with the old SVN based repository, please unpack the zip or tar archive to the directory {{{~/palm/current_version/palm_model_system}}} and choose {{{~/palm/current_version}}} as the {{{<install-prefix>}}}. In any case, please make sure no errors have occurred by '''carefully checking''' the output of the installation script.
    1334
    14 There are three methods to install and run PALM on Linux/UNIX systems (before you start, please read the [#requirements software requirements]):
     35After the installation is finished you should have the following files/folders inside the installation directory {{{~/palm/current_version}}}:
    1536
    16  - [wiki:doc/install/automatic An automatic installer].
     37 - The PALM Model System code repository {{{palm_model_system/}}}.
     38 - A configuration file {{{.palm.config.default}}}.
     39 - A folder named {{{bin/}}} that contains all the executables.
     40 - A folder named {{{rrtmg/}}} that contains the RRTMG library.
     41 - A folder named {{{MAKE_DEPOSITORY_default/}}} that contains the pre-compiled PALM code.
     42
     43For a possible fast track to execute your first simulation, execute these commands:
     44
     45{{{
     46#!bash
     47export PATH=~/palm/current_version/bin:${PATH}
     48cd ~/palm/current_version
     49mkdir -p JOBS/example_cbl/INPUT
     50cp palm_model_system/packages/palm/model/tests/cases/example_cbl/INPUT/example_cbl_p3d JOBS/example_cbl/INPUT/
     51palmrun -r example_cbl -c default -a "d3#" -X 4 -v -z
     52}}}
     53
     54
     55There are two additional methods to install and run PALM on Linux/UNIX systems:
     56
    1757 - [wiki:doc/install/advanced A full manual installation].
    1858 - [wiki:doc/install/simple A minimal manual installation method for benchmarks].
    1959
    20 '''We recommend to start with a local installation''' using the [wiki:doc/install/automatic automatic installer], and then extend this installation to a full installation by following instructions given in the [wiki:doc/install/advanced full manual installation] section.
     60We differentiate between two perspectives on a computer. The first is the local computer (or local host), which is the computer that you are currently sitting at or are logged in via your terminal (ssh). The second is the remote computer (or remote host), which is any computer with a batch system, that you have {{{ssh}}} access to, but are not logged in at the moment. A typical remote computer is your favorite high performance computing (HPC) facility aka supercomputer. This perspective includes, that your remote (super)computer immediately becomes your local computer as soon as you log into it via {{{ssh}}}.\\\\
    2161
    22 
    23 
    24 With the '''automatic installer''' and the '''reduced manual installation method''', you can just run PALM interactively on the local computer. They do not allow to setup the creation of batch jobs and restart runs on any local or remote computers. Therefore, these methods are only suitable / recommended for users who like to do a quick test of PALM. However, as pointed out before, you can / should  use the '''automatic installer''' as a basis for a complete manual installation.\\
     62With the '''default install script''' and the '''reduced manual installation method''', you can just run PALM interactively on the local computer. They do not allow to setup the creation of batch jobs and restart runs on any local or remote computers. Therefore, these methods are only suitable / recommended for users who like to do a quick test of PALM. However, as pointed out before, you can / should  use the '''default install script''' as a basis for a complete manual installation.\\
    2563
    2664The '''manual installation''' gives full access to all PALM features. It should be chosen to setup PALMs ability to run in batch mode on a local or remote computer (see [#requirements software requirements]). It allows to submit a job on the local host while instructing {{{palmrun}}} to execute the job on your desired remote host. The PALM output is then automatically transferred back to the local computer. The '''manual installation''' can of course also be used to work with PALM in interactive mode on the local computer. The installation process for the '''manual installation''' may require a valid account on the remote host as well.\\
     
    3674Regarding batch support PALM can be configured to be used on arbitrary supercomputers (see [wiki:doc/install/advanced advanced installation method]).\\\\
    3775
    38 === [=#requirements] Software Requirements ===
    39 
    40 The installation and operation of PALM requires at minimum (for the [#advanced advanced method] on both, the local and the remote host, unless stated otherwise):
    41 
    42  1. The Bash-shell.
    43  2. A NetCDF library with version number not earlier than 3.6.3 (for NetCDF, see under http://www.unidata.ucar.edu).
    44  3. A FORTRAN 2003 compiler (for gfortran, use version number 6.2.1 or higher).
    45  4. The Message Passing Interface (MPI), at least on the remote host, if the parallel version of PALM shall be used.
    46  5. On the local host, the revision control system '''Subversion''', which is already part of most Linux distributions. The user needs a combination of username and password to access the PALM repository. For getting a permit please create an account using the [[//trac/register|register form]]. \\
    47 Using PALM in batch mode additionally requires:
    48  6. A job queuing system on the local or remote host.
    49  7. SSH/SCP-connectivity to and from the remote host must not be blocked by a firewall and needs to be password-less using an SSH-key.
    50 
    51 '''Note:''' If you are using a Linux Distribution which is related to Ubuntu 16.04 or newer, you are lucky. The following command will install all PALM requirements on your system:
    52 {{{
    53 #!sh
    54 apt-get install subversion cmake gfortran mpich libmpich-dev libnetcdff-dev netcdf-bin libfftw3-dev python3-pip
    55 }}}
    5676
    5777
    58 '''Very important:''' It is essential that your NetCDF and MPI library has been built with the same Fortran compiler that is used to compile PALM. Furthermore, in case of a NetCDF4 library with parallel I/O support, the NetCDF library needs to be build with the same MPI library as used for compiling PALM.
    5978
    6079
     80