Changes between Version 1 and Version 2 of Piernik

Show
Ignore:
Timestamp:
03/09/13 11:46:51 (12 years ago)
Author:
mmamonski
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • Piernik

    v1 v2  
    1313 * the coupling is done one way (from MHD to MC), this brings a potential of introducing new level of parallelism (in curent code MHD and MC simulations are called one after another, sequentially) 
    1414 * the MC is in process of GPU-enabling, one may want to run both modules on different heterogenous resources (i.e. MC on GPU cluster, base MHD code on Intel Nehalem cluster) 
    15 = The code = 
     15= Step By Step Guide = 
     16== linking with MUSCLE == 
     17PIERNIK uses own build system based on Python scripts, all set of flags used for compilation are stored in plain configuration files like this one: 
     18{{{ 
     19PROG      = piernik 
     20USE_GNUCPP = yes 
     21F90       = mpif90 
     22F90FLAGS  =  -ggdb -fdefault-real-8 -ffree-form -std=gnu -fimplicit-none -ffree-line-length-none  
     23F90FLAGS += -Ofast -funroll-loops 
     24F90FLAGS += -I/software/local/libs/hdf5/1.8.9-pre1/gnu-4.7.2-ompi/include 
     25LDFLAGS   = -Wl,--as-needed -Wl,-O1 -L/software/local/libs/hdf5/1.8.9-pre1/gnu-4.7.2-ompi/lib  
     26}}} 
     27In order to link with MUSCLE 2.0 we have to alted the last lines of the file: 
     28{{{ 
     29... 
     30LDFLAGS   = -Wl,--as-needed -Wl,-O1 -L/software/local/libs/hdf5/1.8.9-pre1/gnu-4.7.2-ompi/lib -L/mnt/lustre/scratch/groups/plggmuscle/2.0/devel-debug/lib  
     31LIBS      = -lmuscle2 
     32}}} 
     33Then we build the code with the following command: 
     34{{{ 
     35# load MUSCLE 
     36module load muscle2/devel-debug 
     37# load PIERN dependencies (HDF5, OpenMPI, newest GNU compiler) 
     38module load plgrid/libs/hdf5/1.8.9-gnu-4.7.2-ompi 
     39./setup mc_collisions_test -c gnufast -d HDF5,MUSCLE,MHD_KERNEL 
     40}}} 
     41