123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596 |
- ..
- Copyright 2014 Modelling, Simulation and Design Lab (MSDL) at
- McGill University and the University of Antwerp (http://msdl.cs.mcgill.ca/)
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
- http://www.apache.org/licenses/LICENSE-2.0
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
- Installation
- ============
- This section describes the necessary steps for installing PyPDEVS.
- Dependencies
- ------------
- The following dependencies are mandatory:
- * python 2.7
- For parallel and distributed simulation, the following additional dependencies are required:
- * MPICH3 with socket device
- * mpi4py
- Installation instructions are given for these two dependencies further in this section.
- Realtime simulation using the Tk backend, obviously requires Tk.
- PyPDEVS Installation
- --------------------
- Execute the following command in the 'src' folder::
-
- python setup.py install --user
- Afterwards, PyPDEVS should be installed. This can easily be checked with the command::
- python -c "import pypdevs"
- If this returns without errors, PyPDEVS is sucessfully installed.
- Parallel and distributed simulation with mpi4py
- -----------------------------------------------
- .. note:: An installation script for mpi4py and MPICH3 is provided in :download:`install_mpi4py.sh <install_mpi4py.sh>`. At the end, you will still need to add mpi to your PATH though, as explained by the script.
- First of all, an MPI middleware has to be installed, for which I recommend MPICH3.
- Due to some non-standard configuration options, it is required to install MPICH manually instead of using the one from the repositories.
- You can use either the official installation guide, or follow the steps below.
- Just make sure that the correct configuration options are used.
- The following commands should work on most systems, just replace the '/home/you' part with a location of your choosing::
- mkdir mpich-build
- mkdir mpich
- base=`pwd`
- cd mpich-build
- wget http://www.mpich.org/static/downloads/3.1.2/mpich-3.1.2.tar.gz
- tar -xvzf mpich-3.1.2.tar.gz
- cd mpich-3.1.2
- ./configure --prefix=$base/mpich --with-device=ch3:sock --disable-fortran
- make
- make install
- export PATH=$base/mpich/bin:$PATH
- cd ../..
- You will probably want to put this final export of PATH to your .bashrc file, to make sure that mpi is found in new terminals too.
- After that, make sure that the following command does not cause any errors and simply prints your hostname 4 times::
- mpirun -np 4 hostname
- Now you just need to install mpi4py, which is easy if you have MPICH installed correctly::
- mkdir mpi4py
- cd mpi4py
- wget https://pypi.python.org/packages/source/m/mpi4py/mpi4py-1.3.1.tar.gz
- tar -xvzf mpi4py-1.3.1.tar.gz
- cd mpi4py-1.3.1
- python setup.py build --mpicc=../../mpich/bin/mpicc
- python setup.py install --user
- cd ../..
- Testing whether or not everything works can be done by making sure that the following command prints '4' four times::
- mpirun -np 4 python -c "from mpi4py import MPI; print(MPI.COMM_WORLD.Get_size())"
|