Skip to content

Building FleCSI with stand alone Legion Gasnet

Galen Shipman edited this page Sep 20, 2016 · 16 revisions

Get GASNet (currently using version 1.26.4) https://gasnet.lbl.gov wget https://gasnet.lbl.gov/GASNet-1.26.4.tar.gz

Configure GASNet

  • make sure to select an MPI interop compatible conduit such as mpi or ibv conduit.
  • make sure to compile with fPIC (position independent code) as we will be linking the static libs generated from gasnet into a legion shared library
    ./configure --disable-udp --prefix= --enable-mpi-compat --enable-mpi --enable-par CC=gcc -g -fPIC CXX=g++ -g -fPIC MPI_CC=mpicc -g -fPIC

Build and install GASNet: make -j 4 VERBOSE=1 2>&1 | tee make.out && make install

Clone Legion:

git clone https://github.com/StanfordLegion/legion.git

Checkout master:

git checkout master 

Make a build directory, say /build

mkdir build && cd build 

Run cmake (or ccmake if you prefer), the following params are useful, make sure the conduit and the gasnet path match what you configured in GASNet cmake .. -DBUILD_SHARED_LIBS=ON -DCMAKE_INSTALL_PREFIX= -DCMAKE_PREFIX_PATH= -DGASNet_CONDUIT=

Now run make make -j 4 VERBOSE=1 2>&1 | tee make.out && make install

You should now have liblegion.so and librealm.so in your install dir ls -ltr -rwxr-xr-x. 1 name name 21919984 Sep 20 11:19 librealm.so.1 -rwxr-xr-x. 1 name name 67707976 Sep 20 11:20 liblegion.so.1