Difference between revisions of "Compiling Chef Summit"

From PHASTA Wiki
Jump to: navigation, search
(Created page with "==Copy Simmetrix Libraries from Viz Nodes== Note that in order for Chef to operate, it must be compiled with the proper Simmetrix libraries. That is to say, there needs to be...")
 
Line 6: Line 6:
  
 
to copy over the directory 14.0-190626beta/ to Summit.
 
to copy over the directory 14.0-190626beta/ to Summit.
 +
 +
 +
==Set Proper Environment==
 +
 +
To start with a clean slate, run
 +
 +
module purge
 +
 +
This unloads all currently loaded modules.
 +
 +
Next, run
 +
 +
module load gcc/6.1.0
 +
module load openmpi/2.0.1
 +
 +
Note that /6.1.0 and /2.0.1 can be swapped with the intended versions of gcc and openmpi the user intends on using.
 +
 +
==Generate Partition Wrapper==
 +
 +
After the directory is copied over to Summit and the environment is set, a Partition Wrapper needs to be generated. Go to:
 +
 +
<path>/14.0-190626beta/code/PartitionWrapper
 +
 +
and open the file
 +
 +
Makefile.custom
 +
 +
Obviously, 14.0-190626beta/ is a placeholder and any version of Simmetrix (i.e. the version you used to create the mesh) will work. In this example, I used open openmpi (A High Performance Message Passing Library). I also used mpicc and mpicxx as MPI-C and MPI-C++ compilers respectively. If this is what is intended, in the Makefile, set the following variables:
 +
 +
PQUAL:= -openmpi
 +
CC:=/curc/sw/openmpi/2.0.1/gcc/6.1.0/bin/mpicc
 +
CXX:= /curc/sw/openmpi/2.0.1/gcc/6.1.0/bin/mpicxx
 +
 +
Notice the compatibility between the loaded modules and the directory structure above. Once this is set, in the terminal run
 +
 +
make -f Makefile.custom PARALLEL=openmpi
 +
 +
This will generate a file named

Revision as of 09:27, 13 July 2020

Copy Simmetrix Libraries from Viz Nodes

Note that in order for Chef to operate, it must be compiled with the proper Simmetrix libraries. That is to say, there needs to be compatibility between Simmetrix and SCOREC-core for compilation of Chef to run smoothly. Please see https://fluid.colorado.edu/wiki/index.php/Building_SCOREC_Core for instructions on building SCOREC-core. An example (what worked for me) is provided through out the wiki. From the viz nodes (/projects/tools/SimmetrixTest), I ran

scp -r 14.0-190626beta/ <username>@login.rc.colorado.edu:<path>

to copy over the directory 14.0-190626beta/ to Summit.


Set Proper Environment

To start with a clean slate, run

module purge

This unloads all currently loaded modules.

Next, run

module load gcc/6.1.0
module load openmpi/2.0.1

Note that /6.1.0 and /2.0.1 can be swapped with the intended versions of gcc and openmpi the user intends on using.

Generate Partition Wrapper

After the directory is copied over to Summit and the environment is set, a Partition Wrapper needs to be generated. Go to:

<path>/14.0-190626beta/code/PartitionWrapper

and open the file

Makefile.custom

Obviously, 14.0-190626beta/ is a placeholder and any version of Simmetrix (i.e. the version you used to create the mesh) will work. In this example, I used open openmpi (A High Performance Message Passing Library). I also used mpicc and mpicxx as MPI-C and MPI-C++ compilers respectively. If this is what is intended, in the Makefile, set the following variables:

PQUAL:= -openmpi
CC:=/curc/sw/openmpi/2.0.1/gcc/6.1.0/bin/mpicc 
CXX:= /curc/sw/openmpi/2.0.1/gcc/6.1.0/bin/mpicxx

Notice the compatibility between the loaded modules and the directory structure above. Once this is set, in the terminal run

make -f Makefile.custom PARALLEL=openmpi

This will generate a file named