CMake
-
Change the default for
Trilinos_MUST_FIND_ALL_TPL_LIBS
fromOFF
to
ON
. It was turned off by default because it breaks backward
compatibility but it also causes problems for new users and new
configurations.Users that do not want this new behavior can set
-D Trilinos_MUST_FIND_ALL_TPL_LIBS=OFF
, which is backward compatible. -
Change the default for
Trilinos_USE_GNUINSTALLDIRS
fromOFF
toON
,
in the goal to move Trilinos and TriBITS to modern CMake.TriBITS has had the ability to use that paths selected by the standard
CMake moduleGNUInstallDirs.cmake
for a long time. But it is turned off
in TriBITS by default and was never turned on in Trilinos, both for the
sake of backward compatibility.This may break people's existing configurations because it will install
libs in<prefix>/libs64/
instead of in<prefix>/libs/
on many systems
(e.g. Linux systems). For example, this will break downstream CMake
projects that callfind_package(Trilinos ...)
before defining the
compilers (e.g. so they can get the compilers from Trilinos). If the
compilers are not defined,find_package()
will not search
<prefix>/lib64
. To revert back to using<prefix>/lib
but still use
GNUInstallDirs.cmake
for Trilinos, set-D CMAKE_INSTALL_LIBDIR:STRING=lib
when configuring Trilinos. To avoid the
find_package(Trilinos ...)
problem not searching<prefix>/lib64
,
consider explicitly specifying the compiler to and having the downstream
CMake project define the compilers first withproject(<ProjectName> COMPILERS C CXX ...)
before callingfind_package(Trilinos ...)
. (That
is, don't try to get the compilers from the installed Trilinos, see
#12306.)NOTE: The setting
-D Trilinos_USE_GNUINSTALLDIRS=OFF
is deprecated and
may be removed in the future. (I.e. the usage ofGNUInstallDirs.cmake
may be hard-coded in the future so please try adjusting to the usage of
GNUInstallDirs.cmake
by Trilinos.) See
#12104 (comment)
for additional details and instructions.
Amesos2
- Updates to STRUMPACK, SuperLU_DIST, MUMPS and LAPACK adapters
Anasazi
- Randomized eigensolver
- Improved testing with Tpetra
Belos
- Extend GCRO-DR linear solver to use Kokkos linear algebra for GEMMA
- Improved testing with Tpetra
Domi
- Package has been deprecated and removed from Trilinos
FEI
- Package has been deprecated and removed from Trilinos
Ifpack2
- 4th kind Chebyshev smoother
- Algorithmic and performance improvements for BlockTriDiag and BlockJacobi.
- Stream based RILU(k) and triangular solves
- Optimize Kokkos Kernels MDF ILU(0) solver and expose it in Ifpack2
- Patch solver with data compression
Komplex
- Package has been deprecated and removed from Trilinos
Moertel
- Package has been deprecated and removed from Trilinos
MueLu
- Better ML/MueLu compatibility (parameter translation, aggregation
algorithms, ..) - Reitzinger-Schoberl type multigrid for Maxwell problems
- BlockCRS support
- Improved setup performance on device (TAFC Tpetra changes)
- Matrix-free multigrid with user-specified operators
- AMG for hierarchical matrices
NOX
- Refactored internal use of model evaluators
- LOCA Householder constraint solver can now be nested within a
Tempus transient problem (Tpetra version)
Pike
- Package has been deprecated and removed from Trilinos
Rythmos
- Package has been deprecated and removed from Trilinos
ShyLU
- FastILU algorithmic improvements and testing, new block version
- Transpose solve with Basker
- Tacho: runs with HIP.
- FROSch: fully recursive multi-level implementation
- FROSch: monolithic coarse spaces via partition-of-unity approach
- FROSch: GPU capabilities
Stratimikos
- Use of half precision preconditioners (Ifpack2, MueLu, ShyLU/FROSch)
Teko
- Epetra dependency is now optional
TriKota
- Package has been deprecated and removed from Trilinos