sandialabs / TChem

TChem - A Software Toolkit for the Analysis of Complex Kinetic Models
BSD 2-Clause "Simplified" License
54 stars 21 forks source link

Dependency incompatibilities #8

Open cook-1229 opened 1 week ago

cook-1229 commented 1 week ago

Hello, What version of the dependencies were used to build TChem? Following the build instructions does not result in a working build.

  1. Tines main does not compile with the most recent Kokkos release, 4.4.1, but the tines-kokkosv4.4.0 branch will compile.
  2. With Kokkos, Tines, and GoogleTest successfully built, TChem will not build. TChem is seemingly incompatible with Kokkos 4.4.1.
$local_path/tchem/TChem-2.2.1/src/core/TChem_Util.hpp:47:10: fatal error: impl/Kokkos_Timer.hpp: No such file or directory
   47 | #include "impl/Kokkos_Timer.hpp"
      |          ^~~~~~~~~~~~~~~~~~~~~~~

Kokkos_Timer.hpp is not in the impl subdirectory, so I tried deleting impl/. The header file is then found.

$local_path/tchem/TChem-2.2.1/src/core/TChem_Util.hpp:613:22: error: ‘serial_get_thread_team_dat’ is not a member of ‘Kokkos::Impl’
  613 |       *Kokkos::Impl::serial_get_thread_team_data());
      |                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~

Ok, let's find that function in Kokkos.

$ grep -R serial_get_thread_team_data ../../kokkos/
# nothing
$

That string is not present in Kokkos 4.4.1. Which version of Kokkos can be used to build TChem? Thank you!

odiazib commented 1 week ago

The main branch of TChem still uses Kokkos version 3.6.

Please try the branch tchem-kokkosv4:

git switch tchem-kokkosv4

Then,

git submodule update --init --recursive

Dependencies with the correct version, required to build TChem, will be cloned into ext