= '''This page is under construction! ''' = \\\\\\ = Configuring and running PALM with {{{palmbuild}}} and {{{palmrun}}} === Changes compared to mrun/build === * The new scripts will run on any kind of Linux / Unix system without requiring any adjustments. All settings are controlled via configuration files. * The old configuration file {{{.mrun.config}}} has been split into two files {{{.palm.config.}}} and {{{.palm.iofiles}}}, where {{{}}} is an arbitrary string that you can define. "Configuration" means a setting for a specific computer with a specific compiler, compiler options, libraries, etc. If you like to run {{{palm}}} with different configurations, e.g. one with debug options switched on, and one with high optimization, you need to create separate configuration files for each configuration, e.g. {{{.palm.config.optimized}}} and {{{.palm.config.debug}}}. This replaces the old block structure in {{{.mrun.config}}}. The configuration file to be used is defined by {{{palmrun}}}- or {{{palmbuild}}}-option {{{-h}}}., e.g. {{{palmrun ... -h optimized}}} will use {{{.palm.config.optimized}}} \\\\ You will need only one file {{{.palm.iofiles}}} which contains the file connection statements to be used for all configurations. * The {{{.palm.config.}}} file does not contain blocks any more. Several variable names have been changed (e.g. {{{compiler_options}}} instead of {{{fopts}}}) and new variables have been introduced (e.g. {{{execute_command}}} in order to give the command for starting the executable). Colons ({{{:}}}) for separating e.g. compiler options must not be used any more. Here is an example (with some lines truncated, as displayed by ....) {{{ #$Id$ #column 1 column 2 #name of variable value of variable (~ must not be used, except for base_data) #------------------------------------------------------------------------------ %base_data ~/palm/current_version/JOBS %base_directory $HOME/palm/current_version %source_path $HOME/palm/current_version/trunk/SOURCE %user_source_path $base_directory/JOBS/$fname/USER_CODE # %local_ip 111.11.111.111 %local_username your_linux_username %fast_io_catalog /localdata/your_linux_username %compiler_name mpif90 %compiler_name_ser ifort %cpp_options -cpp -D__parallel -DMPI_REAL=MPI_DOUBLE_PRECISION -DMPI_2REAL=MPI_2DOUBLE_PRECISION -D__fftw -D__netcdf %make_options -j 4 %compiler_options -openmp -fpe0 -O3 -xHost -fp-model source -ftz -fno-alias -ip -nbs -I /muksoft/packages/fftw/3.3.4/include -L/muksoft/.... %linker_options -openmp -fpe0 -O3 -xHost -fp-model source -ftz -fno-alias -ip -nbs -I /muksoft/packages/fftw/3.3.4/include -L/muksoft/.... %hostfile auto %execute_command mpiexec -machinefile hostfile -n {{MPI_TASKS}} palm }}} * Some further comments concerning specific variables: - {{{fast_io_catalog}}} replaces the old variables {{{tmp_user_catalog}}} and {{{tmp_data_catalog}}}. It should be a folder on a file system with fast discs, as typically provided on large computer systems for temporary I/O, e.g. something like {{{/work/...}}}. The temporary working catalog created by {{{palmrun}}} will be in this folder, and your restart data should be put in this folder too. The default {{{.palm.iofiles}}} is using {{{fast_io_catalog}}} for the restart files. - For {{{cpp_options}}}, you now have to give ALL switches required, especially {{{-D__parallel}}} to use the parallel version of PALM, which was implicitly set with {{{mrun}}}-option {{{-K parallel}}} before. The {{{-K}}} option has been removed. - nvnv \\\\ === [=#package_installation]Package installation === The