Skip to content

Commit a5fa406

Browse files
committed
updated docs for building Psi4 on blue waters
1 parent 25af493 commit a5fa406

File tree

6 files changed

+190
-42
lines changed

6 files changed

+190
-42
lines changed
599 Bytes
Binary file not shown.

docs/build/doctrees/setup.doctree

15.5 KB
Binary file not shown.

docs/build/html/_sources/setup.rst.txt

Lines changed: 63 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -67,28 +67,55 @@ the following four lines ::
6767
export PMI_NO_FORK=1
6868
export PMI_NO_PREINITIALIZE=1
6969

70+
Note that Psi4 is unable to run correctly on the compute nodes unless the latter two
71+
environment variables are set.
72+
7073
Installing Psi4 on Blue Waters
7174
******************************
72-
Checkout the Psi4 repository and prepare the environment for setup::
75+
You need to be using the GNU Programming environment. If :data:`module list`
76+
shows :data:`PrgEnv-cray` instead, be sure to first invoke :data:`module swap
77+
PrgEnv-cray PrgEnv-gnu`.
78+
Next, checkout the Psi4 repository and prepare the environment for setup. ::
7379

7480
git clone https://github.com/psi4/psi4.git
7581
module load bwpy
7682
export CRAYPE_LINK_TYPE=dynamic
7783
export CRAY_ADD_RPATH=yes
78-
mkdir ~/libsci
7984

8085
Now, query the currently (default) loaded Cray LibSci module to find the
81-
directory containg the LibSci libaries. Make symlinks in ~/libsci
82-
to all the necessary versions, naming the links corresponding to libsci.*
83-
as liblapack.*. This is necessary for CMake to recognize the math libraries.
84-
Finally, export the MATH_ROOT environment variable::
86+
directory containg the LibSci libaries::
8587

86-
export MATH_ROOT=~/libsci
88+
module display cray-libsci
8789

88-
You will need a newer version of cmake than is provided on Blue Waters. A
89-
convenient way to quickly get the binary is with Miniconda (conda install
90-
cmake). This binary will work fine for the build process. ::
90+
Search for the line containing :data:`prepend-path CRAY_LD_LIBRARY_PATH`: it should
91+
point to a directory like :data:`/opt/cray/libsci/16.11.1/GNU/4.9/x86_64/lib`.
92+
In this directory, identify all the library files that do not contain the string
93+
"mp" or "mpi"; there should be four files similar to :data:`libsci_gnu_49.a`,
94+
:data:`libsci_gnu_49.so`, :data:`libsci_gnu_49.so.5`, and
95+
:data:`libsci_gnu_49.so.5.0`.
9196

97+
Create a folder named :data:`libsci` in your home directory. In this folder, create two symlinks
98+
for each of the identified library files. The two links corresponding to :data:`libsci.*`
99+
should be named :data:`liblapack.*` and :data:`libblas.*`. For instance, ::
100+
101+
cd ~/libsci
102+
ln -s /opt/cray/libsci/16.11.1/GNU/4.9/x86_64/lib/libsci_gnu_49.a liblapack.a
103+
ln -s /opt/cray/libsci/16.11.1/GNU/4.9/x86_64/lib/libsci_gnu_49.so liblapack.so
104+
ln -s /opt/cray/libsci/16.11.1/GNU/4.9/x86_64/lib/libsci_gnu_49.so.5 liblapack.so.5
105+
ln -s /opt/cray/libsci/16.11.1/GNU/4.9/x86_64/lib/libsci_gnu_49.so.5.0 liblapack.so.5.0
106+
107+
ln -s /opt/cray/libsci/16.11.1/GNU/4.9/x86_64/lib/libsci_gnu_49.a libblas.a
108+
ln -s /opt/cray/libsci/16.11.1/GNU/4.9/x86_64/lib/libsci_gnu_49.so libblas.so
109+
ln -s /opt/cray/libsci/16.11.1/GNU/4.9/x86_64/lib/libsci_gnu_49.so.5 libblas.so.5
110+
ln -s /opt/cray/libsci/16.11.1/GNU/4.9/x86_64/lib/libsci_gnu_49.so.5.0 libblas.so.5.0
111+
112+
export MATH_ROOT=$(pwd)
113+
114+
Finally, exporting the MATH_ROOT environment variable will allow CMake to recognize
115+
and use these preferred math libraries. CMake should be version 3.3 or higher;
116+
if this is not the case, see the section below on getting a newer CMake binary
117+
through conda. If :data:`cmake --version` returns 3.3 or higher, you are fine.
118+
With the above steps done, building should be straightforward: ::
92119
cd psi4
93120
cmake -H. -Bobjdir
94121
cd objdir
@@ -97,10 +124,32 @@ cmake). This binary will work fine for the build process. ::
97124
The compilation is rather lengthy; using nohup will allow you to launch the
98125
build and then log off without interrupting the process.
99126

100-
After installation, the psi4/bin directory (which contains the executable psi4)
101-
should be added to your :data:`PATH`, while the psi4/lib directory (which
102-
contains the importable module) should be added to your :data:`PYTHONPATH`.
103-
127+
After installation, the :data:`psi4/objdir/stage/.../bin` directory (which
128+
contains the executable psi4) should be added to your :data:`PATH`, while the
129+
:data:`psi4/objdir/stage/.../lib` directory (which contains the importable
130+
module) should be added to your :data:`PYTHONPATH`. Alternatively, you can use
131+
make install to copy the relevant code into a user-specified location.
132+
133+
Getting Miniconda and CMake on Blue Waters
134+
*********************************************
135+
You *might* need a newer version of cmake than is provided on Blue Waters.
136+
If cmake --version returns 3.3 or higher (after loading module bwpy), then you
137+
can safely ignore this section.
138+
139+
Otherwise, a
140+
convenient way to quickly get the binary is with `Miniconda
141+
<https://conda.io/miniconda.html`_. Install Miniconda after downloading the
142+
installer directly to Blue Waters without allowing it to override your :data:`PATH` or
143+
:data:`PYTHONPATH` environment. (Letting conda alter these environment variables can clobber
144+
the environment which is supposed to be managed entirely by the Blue Waters
145+
module system. This may cause other things to break.) ::
146+
147+
wget https://repo.continuum.io/miniconda/Miniconda2-latest-Linux-x86_64.sh
148+
bash Miniconda2-latest-Linux-x86_64.sh
149+
# installation process...don't let it mess with your .bashrc
150+
# Once you have conda, get cmake
151+
cd ~/path/to/miniconda2/bin
152+
./conda install cmake
104153

105154
Running PyFragment
106155
---------------------

0 commit comments

Comments
 (0)