-
Notifications
You must be signed in to change notification settings - Fork 4
Cray XC40 (Cori) Build Example
Kevin Huck edited this page Dec 20, 2017
·
7 revisions
Building on Cori is slightly more complicated than Titan, because some dependencies (EVPath, SQLite3) have to be built first. EVPath is not available as a module, but SQLite3 is installed in the system directory. Unfortunately, the SQLite3 library is not a static library, and the compiler default is to perform static links. To set up your environment, do the following:
- Load modules (see note, above)
module unload darshan
module swap PrgEnv-intel PrgEnv-gnu
module swap craype-haswell craype-mic-knl
module load papi
module load cmake
-
Build SQLite3 See instructions on the main page.
-
Build EVPath Follow the instructions on the main page of this wiki, but before running chaos_build.pl, read and follow the instructions at the bottom of the chaos_build_config file. To summarize, do this:
mkdir chaos
cd chaos
wget http://www.cc.gatech.edu/systems/projects/EVPath/chaos_bootstrap.pl
perl ./chaos_bootstrap.pl adios-1.13 /desired/path/to/evpath/installation
edit the chaos_build_config file, then run:
perl ./chaos_build.pl
- Get the SOS source code:
git clone [email protected]:cdwdirect/sos_flow.git
cd sos_flow
git checkout master
mkdir build-cori-knl
cd build-cori-knl
- Configure with cmake:
# set an installation prefix location, or just "." for testing
sosdir=/path/to/sos/installation/prefix
FLEXPATH_DIR=/path/to/chaos/installation
SQLite3_DIR=/path/to/sqlite3/installation
cmake \
-DCMAKE_BUILD_TYPE=RelWithDebInfo \
-DBUILD_SHARED_LIBS=FALSE \
-DCMAKE_INSTALL_PREFIX=${sosdir} \
-DCMAKE_C_COMPILER=cc \
-DCMAKE_CXX_COMPILER=CC \
-DSOS_CLOUD_SYNC_WITH_EVPATH=TRUE \
-DEVPath_DIR=${FLEXPATH_DIR} \
-DSQLite3_DIR=${SQLite3_DIR} \
..
- Compile!
make -j4
make install