-
Notifications
You must be signed in to change notification settings - Fork 34
Refactor Branch Build Instructions
These direction assume that you are using the FleCSI third party libraries project. The build is pretty vanilla except that you need to pull the latest Legion version.
You will also need a version of MPI that supports MPI_THREAD_MULTIPLE. Newer versions of MPICH and OpenMPI have support for this. However, it needs to be enabled in the build. For example, for OpenMPI 2.1.0:
% tar xvf openmpi-2.1.0.bz2
% cd openmpi-2.1.0
% mkdir build
% cd build
% ../configure --prefix=/opt/openmpi/2.1.0 --enable-mpi-thread-multiple
% make
% make install
Executing the following commands will checkout the FleCSI Third-party libraries and build them with the correct configuration. You will need to supply a valid prefix path for the install.
% git clone --recursive [email protected]:laristra/flecsi-third-party.git
% cd flecsi-third-party/legion
% git checkout master
% git pull
% cd ..
% mkdir build
% cd build
% cmake -DCMAKE_INSTALL_PREFIX=/home/user/packages/flecsi-tpl-openmpi
% make (this will also install)
After you build, you can set the CMAKE_PREFIX_PATH environment variable to have CMake automatically search this path for dependencies.
% export CMAKE_PREFIX_PATH=/prefix/path/used/above
% git clone --recursive [email protected]:laristra/flecsi.git
% cd flecsi
% git checkout refactor
% git submodule update --recursive
% mkdir build
% cd build
% ccmake ..
Set these
FLECSI_RUNTIME_MODEL="legion"
ENABLE_MPI=ON
Legion_ROOT
make
The same caveats apply to Legion and MPI as above. On Darwin, you can use the installed version of OpenMPI with the GNU 6.2 toolchain.
% module load openmpi/2.0.1-gcc_6.2.0
% module load cmake
Otherwise the directions are the same as for a generic linux build.