Building SCOREC Core

From PHASTA Wiki
Jump to: navigation, search


Acquiring Source Code

RPI maintains SCOREC Core, a set of C/C++ libraries for unstructured meshing and simulation pre-processing. The code base lives on a github page at https://github.com/SCOREC/core. To clone the source code, navigate to the desired directory and run

 git clone https://github.com/SCOREC/core

General build instructions can be found at

 https://github.com/SCOREC/core/wiki/General-Build-instructions

Building on Viz Nodes

As of 2017-04-26, SCOREC-core lives in

 /projects/tools/SCOREC-core/build-viz003

It was built using

 soft add +openmpi-gnu-2.1.0-gnu49-thread
 soft add +simmodsuite-11.0-170405dev
 (no soft add for gcc, meaning the default gcc 4.9.2 is used)

If you want to build you own, do the following.

  1. go to where you have checked out SCOREC/core (or check it out yourself) and sit in the directory above it
  2. soft add necessary dependencies (see above)
  3. cp ~kjansen/compilation
  4. mkdir build (or whatever descriptive name you like)
  5. cd build
  6. . ../compilation/env_ucb_gnu_dev17_rhel7
  7. ../compilation/doConfigure-dev17-rhel7 (this step has OS version dependencies)
  8. make -j

Note

In general, you have to rebuild the partitionwrapper to match the mpi version. Ben did that for openmpi210 for rhel7. This is a fairly easy process ( e.g., cp -r /usr/local/simmetrix/simmodsuite/11.0-170405dev/code/PartitionWrapper tmpdir; cd tmpdir; make -f Makefile.custom PARALLEL=omp210 CC=mpicc CXX=mpicxx -j 8;) but the tricky bit is that you have to copy this wrapper to a place that the SCOREC cmake tools for tools will “find” it. For now, on viz003, Ben has copied it to the location of the rest of the Simmetrix libraries and named it with an openmpi210 extension which I made match in ../compilation/doConfigure-dev17-rhel7 line 15. This works fine when you have been the person who copied or setup the libraries but less great if not.

Building on Summit