Download & Installation


If you are interested in using or just testing the code, you can download all available PALM releases from our GitLab Server

Software requirements

In order to successfully install PALM, please meet the following software requirements:

  • A Linux Operating System (OS). We test PALM on Debian-based OS only and can not help if you use a different OS.
  • The bash shell (available at /bin/bash).
  • A recent Fortran and C++ Compiler (GNU, Intel, Cray, PGI, NEC).
  • The build automation tools cmake and make (for library detection and build coordination).
  • The Message Passing Interface (MPI) library with MPI-3 support (compiled with the same compiler as PALM).
  • A NetCDF library not earlier than 3.6.3 (compiled with the same Compiler as PALM).
  • The FFT library FFTW (PALM also comes with a build-in FFT but with less performance).
  • Python 3 (needed by the GUI and other helper routines).
  • PyQt5 (needed by the GUI).
  • The graphic-package NCL from NCAR (needed by the data visualization tool palmplot).
  • The FLEX library BISON parser generator (needed by the chemistry tool kpp4palm)

The 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.

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.

PALM installation

From our 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 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.

After the installation is finished you should have the following files/folders inside the installation directory ~/palm/current_version:

  • The PALM Model System code repository palm_model_system/.
  • A configuration file .palm.config.default.
  • A folder named bin/ that contains all the executables.
  • A folder named rrtmg/ that contains the RRTMG library.
  • A folder named MAKE_DEPOSITORY_default/ that contains the pre-compiled PALM code.

For a possible fast track to execute your first simulation, execute these commands:

export PATH=~/palm/current_version/bin:${PATH}
cd ~/palm/current_version
mkdir -p JOBS/example_cbl/INPUT
cp palm_model_system/packages/palm/model/tests/cases/example_cbl/INPUT/example_cbl_p3d JOBS/example_cbl/INPUT/
palmrun -r example_cbl -c default -a "d3#" -X 4 -v -z

If you encounter any errors during the installation, try following the full manual installation

Other installation methods

There are two additional methods to install and run PALM on Linux/UNIX systems:

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.

With the default install script, 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.

The 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 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.

The examples given in this chapter refer to a local installation of PALM on an IMUK Linux workstation (local host) and for running batch jobs on the Cray XC40 system of HLRN (remote host).

In case of problems with the installation, please check the FAQ Installation Questions first.

Supported Hardware

PALM runs on all modern multicore workstation processors and on many different HPC systems. Furthermore, PALM has recently been ported to Graphics Processing Units (GPU) like the NVidia Tesla series and to manycore processor architectures like the Intel Xeon Phi Knights Landing. Please see details

Regarding batch support, PALM can be configured to be used on arbitrary supercomputers (see full manual installation).

Last modified 4 months ago Last modified on Jun 16, 2022 10:25:03 AM

Attachments (1)

Download all attachments as: .zip