Linux

System Requirements

  • GCC

  • Build environment tools

  • Bash terminal

  • CUDA 10.1

  • Desktop environment (Only needed for M-Star Build graphical Interface functionality)

  • Supported Linux x64 platform:

    • Centos 6 or 7

    • Ubuntu 18.04 (command line solver only)

    • Other Linux platforms may be able to support solver-only usage with the provided Centos packages

Installation

Download and extract mstarcfd tarball from download.mstarcfd.com. For the purposes of this documentation, it is assumed the tarball was extracted in the user’s home directory such that a directory ~/mstarcfd was created.:

# for example purposes only, adjust for your installation needs
cd $HOME
wget ##COPY-PASTE LINK##
tar xzf mstarcfd-centos7-2.0.X.tar.gz

Install CUDA 10.1

Only required if you want to do GPU runs. If you are only using CPUs, this is not necessary. Download CUDA 10.1 for your Linux OS, then install as root The CUDA package typically comes with a driver update, which you will want to install. The CUDA SDK is required to build OpenMPI with CUDA support. Refer to the CUDA installations provided by Nvidia for further guidence.

Install OpenMPI 3.1.3

This step is only necessary on new machines or when M-Star upgrades versions of OpenMPI. If your system already has OpenMPI 3.1.3 available, this step may be optional. If your system has 3.1.3 installed and you need to do multiple GPU runs, check with your system admin to ensure OpenMPI was compiled with the “–with-cuda” argument and the version of CUDA is 10.1.

# Download OpenMPI source
cd $HOME
wget https://download.open-mpi.org/release/open-mpi/v3.1/openmpi-3.1.3.tar.gz
tar xzf openmpi-3.1.3.tar.gz
mkdir openmpi-3.1.3-build
cd openmpi-3.1.3-build

# Configuration:
# --prefix          argument to install location
# --with-cuda               argument to build openmpi with cuda support. This is required for multi GPU support.
# if specializations are required for your hardware, consult with your system admin for MPI configuration
../openmpi-3.1.3/configure --prefix=$HOME/openmpi-3.1.3 --with-cuda

# Compile with 4 processes
make -j 4

# Install
make install

Create environment file for custom OpenMPI build

Note that some users may need to use the lib64 library location:

#### Contents of ~/openmpi-3.1.3.sh #######
export PATH=$HOME/openmpi-3.1.3/bin:$PATH
export LD_LIBRARY_PATH=$HOME/openmpi-3.1.3/lib:$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=$HOME/openmpi-3.1.3/lib64:$LD_LIBRARY_PATH
###########################################

Load Environment:

source ~/mstarcfd/mstar.sh
source ~/openmpi-3.1.3.sh

License Setup

Refer to the license setup guide on our documentation site

Run Examples

Note the different executables used in each circumstance:

# Show standard help
mstar-cfd --help

# single CPU run
mstar-cfd -i input.xml -o out

# multi CPU run on 4 processes
mpirun -np 4 mstar-cfd -i input.xml -o out

# single GPU
mstar-cfd-gpu -i input.xml -o out --gpu-auto

# multi GPU
mpirun -np 2 mstar-cfd-mgpu -i input.xml -o out --gpu-auto

#Note that you may specify GPU devices manually. Refer to the mstar-cfd-gpu –help output for further guidence.

ParaView (Optional)

M-Star recommends users post-process data generated by M-Star Solve using ParaView. ParaView is a free, open-source post-processing software developed by Kitware, Inc and Los Alamos National Laboratory. M-Star provides scripts, training and support on using ParaView.

Visit the ‘ParaView Download portal <https://www.paraview.org/download/>`_ to download the latest Windows version of the ParaView software.

The data generated by M-Star Solve takes the form of ASCII text files (for numerical data output) and binary VTI files (for graphics and visualization). ASCII and VTI files are common formats supported by most commercial and open-source scientific visualization packages. Although ParaView is recommended, it is not required to post-processes the output data.