BlueGene/Q Verlet cut-off scheme kernels
[alexxy/gromacs.git] / admin / installguide / installguide.tex
index 770a8668d87aef19bde082c7a52352a58774fb8e..cfdac1e94bdb156153abe65587a5b92dd4c1d082 100644 (file)
@@ -418,7 +418,7 @@ be specified using the following environment variables:
 \end{itemize}
 The respective '\verb+include+', '\verb+lib+', or '\verb+bin+' is
 appended to the path. For each of these variables, a list of paths can
-be specified (on Unix seperated with ":"). Note that these are
+be specified (on Unix separated with ":"). Note that these are
 enviroment variables (and not \cmake{} command-line arguments) and in
 a '\verb+bash+' shell are used like:
 \begin{verbatim}
@@ -447,8 +447,8 @@ is found, and otherwise fall back on a version of \blas{} internal to
 accordingly. The internal versions are fine for normal use. If you
 need to specify a non-standard path to search, use
 \verb+-DCMAKE_PREFIX_PATH=/path/to/search+. If you need to specify a
-library with a non-standard name (e.g. ESSL on AIX), then set
-\verb+-DGMX_BLAS_USER=/path/to/reach/lib/libwhatever.a+.
+library with a non-standard name (e.g. ESSL on AIX or BlueGene), then
+set \verb+-DGMX_BLAS_USER=/path/to/reach/lib/libwhatever.a+.
 
 If you are using Intel's \mkl{} for \fft{}, then the \blas{} and
 \lapack{} it provides are used automatically. This could be
@@ -693,14 +693,14 @@ parallel job execution.
 
 \subsubsection{BlueGene/P}
 
-There is currently no native acceleration on this platform, but the
-default plain C kernels will work.
+There is currently no native acceleration on this platform and no
+plans to make one. The default plain C kernels will work.
 
 \subsubsection{BlueGene/Q}
 
-There is currently no native acceleration on this platform, but the
-default plain C kernels will work. We have accelerated kernels in
-progress for this platform, but they are not quite done yet.
+There is currently native acceleration on this platform for the Verlet
+cut-off scheme. Accelerated kernels for the group cut-off scheme may
+come in the future, but the default plain C kernels will work.
 
 Only static linking with XL compilers is supported by \gromacs{}. Dynamic
 linking would be supported by the architecture and \gromacs{}, but has no
@@ -722,23 +722,35 @@ You need to arrange for FFTW to be installed correctly, following the
 above instructions.
 
 mpicc is used for compiling and linking. This can make it awkward to
-attempt to use IBM's optimized BLAS/LAPACK called ESSL. Since mdrun is
-the only part of \gromacs{} that should normally run on the compute
-nodes, and there is nearly no need for linear algebra support for
-mdrun, it is recommended to use the \gromacs{} built-in linear algebra
-routines - it is rare for this to be a bottleneck.
-
+attempt to use IBM's optimized BLAS/LAPACK called ESSL (see the
+section on linear algebra). Since mdrun is the only part of \gromacs{}
+that should normally run on the compute nodes, and there is nearly no
+need for linear algebra support for mdrun, it is recommended to use
+the \gromacs{} built-in linear algebra routines - it is rare for this
+to be a bottleneck.
+
+The recommended configuration is to use
 \begin{verbatim}
-cmake .. -DCMAKE_TOOLCHAIN_FILE=BlueGeneQ-static-XL-C \
-         -DCMAKE_PREFIX_PATH=/your/fftw/installation/prefix
+cmake .. -DCMAKE_TOOLCHAIN_FILE=Platform/BlueGeneQ-static-XL-CXX \
+         -DCMAKE_PREFIX_PATH=/your/fftw/installation/prefix \
+         -DGMX_MPI=on
 make mdrun
 make install-mdrun
 \end{verbatim}
+which will build a statically-linked MPI-enabled mdrun for the back
+end. Otherwise, GROMACS default configuration behaviour applies.
+
 It is possible to configure and make the remaining \gromacs{} tools
-with the compute node toolchain, but as none of those tools are
-\mpi{}-aware, this would not normally be useful. Instead, these should
-be planned to run on the login node, and a seperate \gromacs{}
-installation performed for that using the login node's toolchain.
+with the compute-node toolchain, but as none of those tools are
+\mpi{}-aware and could then only run on the compute nodes, this
+would not normally be useful. Instead, these should be planned
+to run on the login node, and a separate \gromacs{} installation
+performed for that using the login node's toolchain - not the
+above platform file, or any other compute-node toolchain.
+
+Note that only the MPI build is available for the compute-node
+toolchains. The GROMACS thread-MPI or serial builds are not useful at
+all on BlueGene/Q.
 
 \subsubsection{Fujitsu PRIMEHPC}
 
@@ -757,7 +769,7 @@ repository is currently tested on x86 with gcc versions ranging
 from 4.4 through 4.7, and versions 12 and 13 of the Intel compiler.
 Under Windows we test both the visual studio compilers and icc,
 
-We test irregularly on BlueGene/L, BlueGene/P, BlueGene/Q, Cray, 
+We test irregularly on BlueGene/Q, Cray,
 Fujitsu PRIMEHPC, Google nativeclient and other environments. In 
 the future we expect ARM to be an important test target too, but this
 is currently not included.