This page is a small starter page about using SimGrid for building the kind of simulation I am interested in: the simulation of very large scale distributed applications, typically P2P applications.
This material is provided as is and subject to change or deletion at any time.
Disclaimer: SimGrid can help you for many different problems. This tutorial aims at being as small and self-conatined as possible and will not discuss other options. See SG’s doc here for more….
This tutorial will follow these steps:
- Install the SimGrid software elements
- Sketch the simulation experiment
- Develop my custom models
- Run SG simulations
- Post-process and visualize the simulation outputs
Install the SimGrid software elements
I am a Mac user so I will only describe the install on my MacBookPro (core i7, 8GB ram, MacOS 10.6.8). I will use SimGrid 3.9 (still under development).
I found the following instructions in the SG documentation pages:
1. Install the latest stable gcc version:
$ sudo port install gcc47 ... lots of install blurbs ... $
2. Configure shell to use previous version. To avopid mixing configs for various software, I like to make specific profile that I load before I work start working with a specific application:
$ cat > ~/.profile_SG << EOF export CC=gcc-mp-4.7 export CXX=g++-mp-4.7 EOF $ . ~/.profile_SG $
3. get SG sources
$ git clone git://scm.gforge.inria.fr/simgrid/simgrid.git simgrid
4. Prepare SG source files for building in a different directory (
build) and to install in
$ mkdir build # same level a simgrid dir $ cd build $ cmake -DCMAKE_C_COMPILER=gcc-mp-4.7 -DCMAKE_INSTALL_PREFIX=/opt/local ../simgrid/ $
5. Compile and install
$ make $ cmake -DCMAKE_INSTALL_PREFIX=/opt/local ../simgrid/ # for some reason this got lost $ sudo make install