Skip to content

Trilinos and other Third Party Libraries

Chris Newman edited this page Oct 11, 2023 · 19 revisions

CMake

Trilinos requires at least version 3.23.0 of CMake, we have been successful using CMake 3.27.1.
http://www.cmake.org/cmake/resources/software.html

MPI

Tusas and Trilinos require MPI version 1.8.3. We currently use Open MPI 4.0.1.
http://www.open-mpi.org/software/ompi/v1.8/downloads/openmpi-1.8.3.tar.gz

HDF5

Tusas and Trilinos require HDF5. We currently use 1.8.14.
https://support.hdfgroup.org/downloads/index.html

NetCDF

Tusas and Trilinos require netCDF. We currently use 4.1.3.
http://www.unidata.ucar.edu/software/netcdf/release-notes-4.1.3.html

Boost

Tusas requires boost. We currently use 1.56.0.
http://www.boost.org/

Trilinos

Currently Tusas is being linked against trilinos-release-14-10-branch. Trilinos can be downloaded from:
https://github.com/trilinos/Trilinos
Detailed building instructions can be found here:
http://trilinos.org/oldsite/Trilinos10CMakeQuickstart.txt

Installation of Trilinos is basically as follows:

  1. git clone into a directory of your choosing: In order to fully utilize the OpenMP and Cuda features of Kokkos use the master branch
    $ git clone https://github.com/trilinos/Trilinos.git Trilinos.git
  1. THIS step is no longer necessary Replace the file Trilinos.git/packages/nox/src-thyra/NOX_Thyra_Group.C with extras/NOX_Thyra_Group.C NOTE this step is only necessary to output solver diagnostics.
  2. THIS step is no longer necessary Replace the file trilinos-12.6.4-Source/packages/seacas/applications/nem_slice/elb_main.C with elb_main.C NOTE this step is only necessary to build with OpenMP. OpenMP is not the default build configuration. See Building and Running Tusas
  3. Create a build directory from any location you would like. Typically it is a sub-directory of the Trilinos base source directory.
    $ cd Trilinos.git
    $ mkdir GCC_4_9_2_MPI_OMP_OPT
    $ cd GCC_4_9_2_MPI_OMP_OPT
  4. Copy extras/do-configure script into this directory. The critical step is creation of and proper editing of the do-configure script. The script needs to be edited to reflect your environment in the following places:
    1. Path to MPI: the line -D MPI_BASE_DIR:PATH="/usr/local/gcc/4.9.1/openmpi-1.8.3" \ must be edited to reflect your MPI installation.
    2. Path to install Trilinos library: the line -D CMAKE_INSTALL_PREFIX:PATH=/Users/cnewman/src/Trilinos.git/GCC_4_9_2_MPI_OMP_OPT \ must point to where you want to install the Trilinos library.
    3. Path to Trilinos source: the last line /Users/cnewman/src/Trilinos.git must be edited to point to the Trilinos source directory.
    4. The line -D CMAKE_BUILD_TYPE:STRING=RELEASE \ tells CMake to build an optimized version of Trilinos. To build a debug version, change this line to -D CMAKE_BUILD_TYPE:STRING=DEBUG \
  5. Execute the do-configure script to invoke CMAKE:
    $ ./do-configure
  6. Build Trilinos:
    $ make
    $ make install
Clone this wiki locally