Difference between revisions of "PhParAdapt/SCOREC"

From PHASTA Wiki
Jump to: navigation, search
(Created page with "== Download and compile (viz nodes) == This sections is inspired from <http://redmine.scorec.rpi.edu/projects/pumi/wiki/Build_Instructions>. Please read it first before continuin...")
 
Line 1: Line 1:
 +
-----------------------------------------------
 
== Download and compile (viz nodes) ==
 
== Download and compile (viz nodes) ==
 
This sections is inspired from <http://redmine.scorec.rpi.edu/projects/pumi/wiki/Build_Instructions>. Please read it first before continuing, as some information on this wiki page are not repeated.
 
This sections is inspired from <http://redmine.scorec.rpi.edu/projects/pumi/wiki/Build_Instructions>. Please read it first before continuing, as some information on this wiki page are not repeated.

Revision as of 21:36, 29 July 2013


Download and compile (viz nodes)

This sections is inspired from <http://redmine.scorec.rpi.edu/projects/pumi/wiki/Build_Instructions>. Please read it first before continuing, as some information on this wiki page are not repeated. The SCOREC tools now build against CMake. Only Parma, the PHASTA utilities and phParAdapt still build against Autotools. From a termonal, run the following commands:

 soft add +cmake
 soft add +git
 cd ~
 mkdir SCOREC.develop
 cd SCOREC.develop
 git clone ssh://your_username@jumpgate-phasta.colorado.edu/users/mrasquin/SCOREC.develop/compilation 

The git command will download these instructions, along with a checkout and compile script for Parma and phParAdapt. The next commands are to compile the whole stack with the GNU compiler on the viz nodes are:

 soft add +gcc-4.8.1
 soft add +openmpi-gnu
 mkdir install-gcc-O2 //all the libraries and executable will go there
 mkdir build-gcc-O2 // this is where you will run the cmake commands
 cd build-gcc-O2
 cmake ../CMake.SCOREC -DCMAKE_BUILD_TYPE=RelWithDebInfo -DCMAKE_INSTALL_PREFIX=/users/mrasquin/SCOREC.develop/install-gcc-O2 -DCMAKE_C_COMPILER=mpicc -DCMAKE_CXX_COMPILER=mpicxx 

This will create the Makefiles. To compile the actual code you need to

make
make install

inside the build-gcc-O2 directory.

Do not forget to update the path to PREFIX according to your install directory. By default, it compiles with meshmodel. See the redmine link above about how to compile with parasolid or other geometric model. The cmake command downloads the parmetis package inside the build-gcc-O2 directory. If you want to use 64 bit integer in parmetis, which is only useful for big meshes in serial, edit

 parmetis-4.0.2/metis/include/metis.h

and set

 #define IDXTYPEWIDTH 64

Now, compile the SCOREC tools (in serial only for now - do not try make -j 8 for instance):

 make 2>&1 | tee log_cmake_make.dat
 make install 2>&1 | tee log_cmake_install.dat
 cd .. #back to SCOREC.develop

Now you should have the pumi tools installed in SCOREC.develop/install-gcc-O2. It is time to download and compile the Parma library. From SCOREC.develop,

 mkdir Autotools.SCOREC
 cd Autotools.SCOREC
 cp ../compilation/parma_install.sh .

Edit and update the script parma_install.sh. In particular, edit PREFIX to the same path used in the cmake command above. Other parameters you need to update are the compilation options (DEBUG), the svn username if you have one, etc. Then:

 ./parma_install.sh checkout_all 2>&1 | tee log_autotools_parma_checkout.dat
 ./parma_install.sh setup_all 2>&1 | tee log_autotools_parma_setup.dat
 ./parma_install.sh intall_all 2>&1 | tee log_autotools_parma_install.dat

For phParAdapt (and PHASTA utilites), the procedure is similar:

 cp ../compilation/phParAdaptBuild.sh
 edit path to PREFIX in parma_install.sh + other parameters
 ./phParAdaptBuild.sh checkout_all 2>&1 | tee log_autotools_phparadapt_checkout.dat
 ./phParAdaptBuild.sh setup_all 2>&1 | tee log_autotools_phparadapt_setup.dat
 ./phParAdaptBuild.sh install_all 2>&1 | tee log_autotools_phparadapt_install.dat

Your phParAdapt executable should be in ~/SCOREC.develop/install-gcc-O2/bin/phParAdapt