Issues compiling Aspect on TACC

I’m trying to compile the latest version of Aspect on TACC (Lonestar5) and am having issues with the compile not finishing. I have modules loaded for dealii 9.2, trilinos 12.18.1, p4est 2.2, and cmake 3.16.1. When I run ‘cmake …’ I get a warning about directories/libraries but it’s able to generate the build files. When I run ‘make’ it will fail. I’ve tried with unity build and precompiled headers, and without and the errors are different. Am I missing something?

Erin:
The first error (missing typeinfo) is an internal compiler error. Try switching off the unity build and see whether that fixes the issue.

As for the other issue (the “daxpy_” function): I have to admit that I don’t quite know what that refers to, and the screenshot seems to have cut something at the right margin. Regardless, I think you might have an easier time if you didn’t load the deal.II, trilinos, and p4est packages but instead built all of these from scratch using the ‘candi’ script that you can get from the deal.II download page.

Best
W.

Also take a look at the ASPECT wiki for cluster instructions. For example, my guide for Frontera is probably pretty close to what you need: https://github.com/geodynamics/aspect/wiki/Installation-on-Frontera
John has guides for Stampede2 as well, that you can take a look at.

Hi Erin,
I just wanted to check in if there is any progress on the issue. As you mentioned the first error should go away if you disable unity build, and compiling without unity build just takes longer, but is not different otherwise, so if this is resolved, we can look into it later, but it is not crucial.

The last screenshot you posted seems to be a problem when using some LAPACK functions inside source/particle/interpolator/bilinear_least_squares, but at the moment I am uncertain if this is a bug in deal.II or in the Intel compiler. Please test two solutions:

  1. Please change the following line inside source/particle/interpolator/bilinear_least_squares.cc:
-#include <deal.II/lac/full_matrix.templates.h>

into:

+#include <deal.II/lac/lapack_full_matrix.h>

This seems like a bug to me, but I am not 100% sure it will fix your problem (but it may).

  1. If you do not use particles in your models: Simply delete include/aspect/particle/interpolator/bilinear_least_squares.h and source/particle/interpolator/bilinear_least_squares.cc, rerun cmake and recompile. Seems like an extreme solution, but if you do not need the feature it is a good workaround.

Hope that helps, please let us know how it goes.
Best,
Rene

Hi Rene,
I did that line replacement and compiled without unity build or precompiling headers and I was able to compile!

Awesome, that is good to know. @tjhei already merged my patch into the main aspect branch (see https://github.com/geodynamics/aspect/pull/3824), so any new development version should work out of the box.

Concerning the unity build: My guess is that the unity build fails because of the boost version that was used for building the deal.II module. In theory the version should be supported, but it is hard to tell, maybe exactly this version does not work with unity build and the intel compiler, there are two many different versions that could play a role. This may be complicated to figure out, are you good without the unity build for now?

Yes I’m fine using the unity build. I also told tech support for TACC and they said they would look into updating boost to work with the new dealii version Aspect requires. I should hear soonish about that.

deal.II also comes with a bundled version of boost that will work but you need deal.II to use the bundled version using DEAL_II_FORCE_BUNDLED_BOOST=ON.

I have also been having issues with compiling on TACC Stampede2. In my case, I have been trying to get the latest Deal.II version to compile using the instructions on the github wiki, and am getting the following error.

$WORK/software/candi-install/tmp/unpack/deal.II-v9.2.0/examples/step-67/step-67.cc: In lambda function:
$WORK/software/candi-install/tmp/unpack/deal.II-v9.2.0/examples/step-67/step-67.cc:1516:9: sorry, unimplemented: unexpected AST of kind omp_simd
         });
         ^
$WORK/software/candi-install/tmp/unpack/deal.II-v9.2.0/examples/step-67/step-67.cc:1516: confused by earlier errors, bailing out
make[2]: *** [examples/CMakeFiles/step-67.debug.dir/step-67/step-67.cc.o] Error 1
make[1]: *** [examples/CMakeFiles/step-67.debug.dir/all] Error 2

Thank you for your help.

Yes, I have seen that as well. We keep track of the issue here: https://github.com/dealii/dealii/issues/10823

For you, you can just disable compiling the examples using -D DEAL_II_COMPONENT_EXAMPLES=OFF