Compilation Guideline of OpenSeeMP on Linux Machines: Difference between revisions
No edit summary |
|||
Line 52: | Line 52: | ||
sudo apt-get install gfortran | sudo apt-get install gfortran | ||
sudo apt-get install mysql | sudo apt-get install mysql | ||
===Compilation of Necessary Packages=== | |||
After completion of the above mentioned process we need to customize compile and install some packages, which should be done in a ordered manner- | |||
To be systematic and implementation on cluster HPC we will create a directory in home called “PARALLEL”. And put all the tarballs required extracts – in simple named folder like scalapack for sclalapack-2.0.2. Hence we get all packs in one master folder. | |||
The directory structure should be setup as following- | |||
;HOME=/home/yourusername | |||
;PARALLEL=$(HOME)/PARALLEL | |||
level0 | level1 |level2 | |||
HOME | PARALLEL |blacs | |||
|mpich2 | |||
|lapack | |||
|scalapack | |||
|blas | |||
|xblas | |||
|metis | |||
|parmetis | |||
|mumps | |||
|--- | |||
Fig – Example directory structure |
Revision as of 21:59, 15 October 2012
Compilation Guideline of OpenSeeMP on Linux Machines
This guide is developed in a systematic manner assuming ActiveTcl, MPICH2 and other packages are not pre-installed in the system. But even if those are available slight modification will enable us to compile OpenSeesMP.
The following tarballs are used to compile OpenSeesMP in this manual. This instruction only works with OpenSees 2.3.2.2 version(svn code – 4985). Package’s version has importance for compatibility issues.
Required Packages
ActiveTcl8.5.11.1.295590-linux-x86_64-threaded.tar.gz db-5.3.21.NC.tar.gz lapack-3.4.1.tgz metis-4.0.3.tar.gz mpiblacs-patch03.tgz mpiblacs.tgz –files inside needs to be overwritten by files of mpiblacs-patch03.tgz mpich2-1.1.tar.gz MUMPS_4.10.0.tar.gz openssl-1.0.1c.tar.gz ParMetis-3.2.0.tar.gz scalapack-2.0.2.tgz xblas-1.0.248.tar.gz
You can find the following packages in internet, all of them are free, some of them require an email to the developer.
Some Terminal Commands
Some knowledge of bash commands are necessary, parallel machines often do not have graphical user interface.
mkdir mydir - makes a directory named mydir chmod 777 a.txt - change write permission of files to full permission nano a.txt - opens a.txt for editing cd mydir - gets inside mydir cd .. - gets out mydir to parent directory which mpd - checks which mpd is used and returns the location
Some system environment packages
Before compiling any of these packages we need to perform the following tasks - (apt-get command is for ubuntu machines for redhat machines we can use yum install) sudo in and type the following:
mkdir lib mkdir bin sudo apt-get update sudo apt-get install build-essential sudo apt-get install subversion svn co svn://opensees.berkeley.edu/usr/local/svn/OpenSees/trunk@4985 OpenSees
Use-
chmod 777 OpenSees
To change the editing permission of the directory.
sudo apt-get install make sudo apt-get install gcc sudo apt-get install g++ sudo apt-get install gfortran sudo apt-get install mysql
Compilation of Necessary Packages
After completion of the above mentioned process we need to customize compile and install some packages, which should be done in a ordered manner-
To be systematic and implementation on cluster HPC we will create a directory in home called “PARALLEL”. And put all the tarballs required extracts – in simple named folder like scalapack for sclalapack-2.0.2. Hence we get all packs in one master folder.
The directory structure should be setup as following-
- HOME=/home/yourusername
- PARALLEL=$(HOME)/PARALLEL
level0 | level1 |level2 HOME | PARALLEL |blacs |mpich2 |lapack |scalapack |blas |xblas |metis |parmetis |mumps |--- Fig – Example directory structure