Skip to content

Commit ff721cb

Browse files
committed
docu: add walk-through for JUQUEEN
1 parent 9cc7633 commit ff721cb

File tree

2 files changed

+74
-0
lines changed

2 files changed

+74
-0
lines changed

doc/source/installing.md

Lines changed: 5 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -135,6 +135,11 @@ latest release from [GitHub][github_releases].
135135

136136
make install
137137

138+
### Supercomputers
139+
140+
There are a few tweaks and special care require to get up and running on supercomputers.
141+
We have compiled a few working walk-throughs at \subpage page_supercomputers .
142+
138143
## Building with vanilla make
139144

140145
A sample `Makefile` is included in the `advection_diffusion` example. This may be of particular

doc/source/supercomputers.md

Lines changed: 69 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,69 @@
1+
# Usage on Supercomputers {#page_supercomputers}
2+
3+
## JUQUEEN
4+
5+
There are a few steps one has to complete before using _PFASST++_ on _JUQUEEN_.
6+
7+
1. make sure the only modules loaded are `gcc/4.8.1` and `fftw3/3.3.3`
8+
9+
2. prepare a custom installation of _Boost_
10+
11+
Because at time of writing only 1.47.0 is available compiled with _XL/C++_, which does not
12+
support the C++11 features we learned to love.
13+
14+
1. download a recent version of _Boost_ (i.e. 1.57.0)
15+
16+
2. extract the archive and `cd` into it
17+
18+
3. run
19+
20+
CXX=`which mpig++` CC=`which mpigcc` ./bootstrap.sh \
21+
--with-libraries=program_options --prefix=<INSTALL_PLACE>
22+
23+
where `INSTALL_PLACE` is something like `$HOME/progs/juqueen`
24+
25+
4. create file called `user-config.jam` with the following content:
26+
27+
using gcc : 4.8.1 : mpig++ ;
28+
29+
5. now compile
30+
31+
CXX=`which mpig++` CC=`which mpigcc` ./b2 --prefix=<INSTALL_PLACE> \
32+
--reconfigure link=static stage
33+
34+
and install
35+
36+
CXX=`which mpig++` CC=`which mpigcc` ./b2 --prefix=<INSTALL_PLACE> \
37+
link=static install
38+
39+
3. go to the sources of _PFASST++_, create a build folder and step into it
40+
41+
4. run _CMake_
42+
43+
cmake -DCMAKE_TOOLCHAIN_FILE=../cmake/toolchain_juqueen.cmake \
44+
-DCMAKE_CXX_COMPILER=`which mpig++` -DCMAKE_C_COMPILER=`which mpigcc` \
45+
-DBOOST_ROOT=<INSTALL_PLACE> -Dpfasst_WITH_MPI=ON \
46+
-Dpfasst_BUILD_TESTS=OFF ..
47+
48+
5. run make
49+
50+
make
51+
52+
6. write your _LLSubmit_ configuration file
53+
54+
for example for the Advection-Diffusion example:
55+
56+
#@job_name = MPI_PFASST_test
57+
#@comment = "a little test of PFASST with MPI"
58+
#@output = mpi_pfasst_test_$(jobid)_$(stepid).out
59+
#@error = mpi_pfasst_test_$(jobid)_$(stepid).err
60+
#@environment = COPY_ALL
61+
#@job_type = bluegene
62+
#@notification = never
63+
#@wall_clock_limit = 00:10:00
64+
#@bg_size = 1
65+
#@bg_connectivity = TORUS
66+
#@queue
67+
runjob --np 32 --ranks-per-node 32 \
68+
--exe <PATH_TO_BUILD_DIR>/examples/advection_diffusion/mpi_pfasst \
69+
--args '-q'

0 commit comments

Comments
 (0)