wiki:trunk/installation

PEPC tutorial

Trunk version file content

The following directories and files are of particular interest.

  • ./pepc-b/
    the source code of the PEPC-B front end is located here
    • pepcb.f90
      this is the main file, containing the program's workflow
  • ./pepc-e/
    simple stand-alone frontend for electrostatics/benchmark Coulomb problems
  • ./lpepcsrc/
    this directory contains the source code of the PEPC library, upon which all PEPC front-end applications are based
  • ./sl_pepc/
    sorting library used by pepc
  • ./makefiles/
    predefined compilation options and variables for some architectures:
    • IBM Power6 jump
    • IBM BlueGene/P jugene
    • Intel Nehalem cluster juropa
  • ./job-scripts/
    some example submission scripts are located here

  • ./bin/
    contains compiled binaries and other useful tools & scripts
  • ./makefile
    this make file calls the makefiles contained in the source subdirectories. Three targets are currently available:
    • pepcb - compiles the PEPC library and the PEPC-B front end, and generates an executable ./pepcb
    • pepce - compiles the PEPC library and the PEPC-E front end, and generates an executable ./pepce
    • clean - cleans up

how to compile

  1. The compilation step is basically to create a ./makefile.defs file. One of the files in ./makefiles/ can be used directly, by setting a symbolic link to one of them, or as a starting point for specific needs or new architectures. The file ./makefile.defs must contain the following variables:
variable example function
MACH JUROPA-JSC architecture name, used just for output
RANLIB ranlib ranlib execution command
MAKE gmake GNU make execution command
AR xiar ar execution command
ARFLAGS -rs flags to generate an archive
CPP /usr/lib/cpp c preprocessor execution command
CPPFLAGS -P -C c preprocessor flags, omit line numbering, leave program comments
FCPRE scalasca -instrument fortran compiler precommand, e.g. for scalasca instrumentation
FC mpif90 fortran 90 compiler
FFLAGS -O2 -ipo -axSSE4.2 fortran 90 compiler options
CCPRE c compiler precommand
CC mpicc c compiler
CFLAGS -O2 c compiler options
LDPRE linker precommand
LD mpif90 linker command
LDFLAGS linker (tuning) options
LDLIBS -lpapi additional libraries to link with
RM rm -rf remove command
EXECNAME ../pepc name of the executable, with respect to the ./pepc-b/ directory

Example:

  ln -s makefiles/makefile.defs.juropa makefile.defs
  1. Adapt the ./makefile.defs file and do
    make pepcb
    

The executable will be placed either in the install directory or in ./bin/.

  1. Now go to trunk/getting_started to learn how to run PEPC.
Last modified 14 years ago Last modified on 07/24/10 19:42:13
Note: See TracWiki for help on using the wiki.