-
Notifications
You must be signed in to change notification settings - Fork 16
installing and running codes online simulation with Union
xwang149 edited this page Apr 11, 2023
·
1 revision
This page describes the step-by-step process to compile Union and its dependencies and enable Union online simulation with CODES. First, create a directory in which all these dependencies will be installed. In the following, we will assume this directory is $HOME/CODES.
Download Conceptual at https://ccsweb.lanl.gov/~pakin/software/conceptual/download.html (version 1.5.1 or greater)
cd $HOME/CODES
tar xvf conceptual-1.5.1.tar.gz
mv conceptual-1.5.1 conceptual
cd conceptual
./configure --prefix=$HOME/CODES/install/conceptual
make
make install
cd ../
Download boost at http://www.boost.org/users/download/ (version 1.68 or greater)
tar xvf boost_1_68_0.tar.gz
mv boost_1_68_0 boost
cd boost
./bootstrap.sh --prefix=$HOME/CODES/install/boost --with-libraries=python
./b2 install
cd ../
Download Union at https://github.com/SPEAR-IIT/Union.git
cd union
./prepare.sh
./configure --with-boost=/path/to/boost/install --with-conceptual=$HOME/CODES/install/conceptual --prefix=$HOME/CODES/install/union CC=mpicc CXX=mpicxx
make
make install
git clone --origin argobots [email protected]:pmodels/argobots.git argobots
cd argobots
./autogen.sh
mkdir build
cd build
./configure --prefix=$HOME/CODES/install/argobots
make -j
make -j install
cd ../
git clone https://github.com/carothersc/ROSS.git
mv ROSS ross
cd ross
mkdir build
cd build
ARCH=x86_64 CC=mpicc CXX=mpicxx cmake .. -G "Unix Makefiles" -DCMAKE_INSTALL_PREFIX=$HOME/CODES/install/ross
make
make install
cd ../..
git clone https://xgitlab.cels.anl.gov/codes/codes.git
cd codes
./prepare.sh
mkdir build
cd build
../configure --prefix=$HOME/CODES/install/codes CC=mpicc CXX=mpicxx CFLAGS='-g -O0' CXXFLAGS='-g -O0' \
PKG_CONFIG_PATH=$HOME/CODES/install/ross/lib/pkgconfig:$HOME/CODES/install/argobots/lib/pkgconfig/:$HOME/CODES/install/union/lib/pkgconfig:$HOME/CODES/install/swm/lib/pkgconfig \
--with-union=true \
--with-online=true
make
make install
cd ../..
In $HOME/CODES/install/union/share, a JSON file named conceptual.json could be modified to specify the parameters of the Conceptual benchmarks.
cat $HOME/CODES/configrootdir/conceptual.json
{
"latency": {
"argc": 5,
"argv": [
"latency",
"--reps",
"100",
"--maxbytes",
"1M"
]
}
}
- Running the simulation in sequential mode
$HOME/CODES/install/codes/bin/model-net-mpi-replay --sync=1 --num_net_traces=2
--workload_name=conceptual-latency --workload_type=conc-online
-- $HOME/CODES/codes/src/network-workloads/conf/modelnet-mpi-test.conf
- Running the simulation in optimistic mode
mpirun -np 2 $HOME/CODES/install/codes/bin/model-net-mpi-replay --sync=3 --num_net_traces=2
--workload_name=conceptual-latency --workload_type=conc-online
-- $HOME/CODES/codes/src/network-workloads/conf/modelnet-mpi-test.conf