Skip to content

GitLab

  • Menu
Projects Groups Snippets
    • Loading...
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • T Trilinos
  • Project information
    • Project information
    • Activity
    • Labels
    • Planning hierarchy
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 936
    • Issues 936
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 22
    • Merge requests 22
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • James Willenbring
  • Trilinos
  • Issues
  • #4936

Closed
Open
Created Apr 17, 2019 by James Willenbring@jmwilleMaintainer

cuda-10.1 stk and tpetra

Created by: bathmatt

Can't compile stk or tpetra with cuda 10.1

Here is a stk error

/usr/tce/packages/gcc/gcc-7.3.1/rh/usr/include/c++/7/bits/basic_string.tcc: In instantiation of 'static std::basic_string<_CharT, _Traits, _Alloc>::_Rep* std::basic_string<_CharT, _Traits, _Alloc>::_Rep::_S_create(std::basic_string<_CharT, _Traits, _Alloc>::size_type, std::basic_string<_CharT, _Traits, _Alloc>::size_type, const _Alloc&) [with _CharT = char; _Traits = ignorecase_traits; _Alloc = std::allocator<char>; std::basic_string<_CharT, _Traits, _Alloc>::size_type = long unsigned int]':
/usr/tce/packages/gcc/gcc-7.3.1/rh/usr/include/c++/7/bits/basic_string.tcc:1078:24:   required from '_CharT* std::basic_string<_CharT, _Traits, _Alloc>::_Rep::_M_clone(const _Alloc&, std::basic_string<_CharT, _Traits, _Alloc>::size_type) [with _CharT = char; _Traits = ignorecase_traits; _Alloc = std::allocator<char>; std::basic_string<_CharT, _Traits, _Alloc>::size_type = long unsigned int]'
/usr/tce/packages/gcc/gcc-7.3.1/rh/usr/include/c++/7/bits/basic_string.h:3222:79:   required from '_CharT* std::basic_string<_CharT, _Traits, _Alloc>::_Rep::_M_grab(const _Alloc&, const _Alloc&) [with _CharT = char; _Traits = ignorecase_traits; _Alloc = std::allocator<char>]'
/usr/tce/packages/gcc/gcc-7.3.1/rh/usr/include/c++/7/bits/basic_string.tcc:610:198:   required from 'std::basic_string<_CharT, _Traits, _Alloc>::basic_string(const std::basic_string<_CharT, _Traits, _Alloc>&) [with _CharT = char; _Traits = ignorecase_traits; _Alloc = std::allocator<char>]'
/usr/WS1/mbetten/build/Trilinos.new/packages/stk/stk_util/stk_util/util/ci_string.cpp:77:37:   required from here
/usr/tce/packages/gcc/gcc-7.3.1/rh/usr/include/c++/7/bits/basic_string.tcc:1067:16: error: cannot call member function 'void std::basic_string<_CharT, _Traits, _Alloc>::_Rep::_M_set_sharable() [with _CharT = char; _Traits = ignorecase_traits; _Alloc = std::allocator<char>]' without object
       __p->_M_set_sharable();
       ~~~~~~~~~^~

Here is a tpetra error


[ 84%] Building CXX object packages/tpetra/core/src/CMakeFiles/tpetra.dir/Tpetra_MultiVector_INT_INT_INT_SERIAL.cpp.o
/usr/WS1/mbetten/build/Trilinos.new/packages/tpetra/core/src/Tpetra_MultiVector_def.hpp: In instantiation of 'Teuchos::ArrayRCP<const T> Tpetra::MultiVector<Scalar, LocalOrdinal, GlobalOrdinal, Node>::getData(size_t) const [with Scalar = int; LocalOrdinal = int; GlobalOrdinal = int; Node = Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial>; size_t = long unsigned int]':
/usr/WS1/mbetten/build/Trilinos.new/cuda/packages/tpetra/core/src/Tpetra_MultiVector_INT_INT_INT_SERIAL.cpp:78:16:   required from here
/usr/WS1/mbetten/build/Trilinos.new/packages/tpetra/core/src/Tpetra_MultiVector_def.hpp:2905:10: error: passing 'const Tpetra::MultiVector<int, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial> >' as 'this' argument discards qualifiers [-fpermissive]
     const_cast<MV*> (this)->sync_host ();
     ~~~~~^~
/usr/WS1/mbetten/build/Trilinos.new/packages/tpetra/core/src/Tpetra_MultiVector_def.hpp:4184:1: note:   in call to 'void Tpetra::MultiVector<Scalar, LocalOrdinal, GlobalOrdinal, Node>::sync_host() [with Scalar = int; LocalOrdinal = int; GlobalOrdinal = int; Node = Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial>]'
   sync_host () {
 ^ ~~~~~~~~~~~~~~                                       
/usr/WS1/mbetten/build/Trilinos.new/packages/tpetra/core/src/Tpetra_MultiVector_def.hpp: In instantiation of 'void Tpetra::MultiVector<Scalar, LocalOrdinal, GlobalOrdinal, Node>::dot(const Tpetra::MultiVector<Scalar, LocalOrdinal, GlobalOrdinal, Node>&, const Kokkos::View<typename Kokkos::Details::InnerProductSpaceTraits<typename Kokkos::Details::ArithTraits<RealFloatType>::val_type>::dot_type*, Kokkos::HostSpace>&) const [with Scalar = int; LocalOrdinal = int; GlobalOrdinal = int; Node = Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial>; typename Kokkos::Details::InnerProductSpaceTraits<typename Kokkos::Details::ArithTraits<RealFloatType>::val_type>::dot_type = int]':
/usr/WS1/mbetten/build/Trilinos.new/cuda/packages/tpetra/core/src/Tpetra_MultiVector_INT_INT_INT_SERIAL.cpp:78:16:   required from here
/usr/WS1/mbetten/build/Trilinos.new/packages/tpetra/core/src/Tpetra_MultiVector_def.hpp:1839:12: error: passing 'const Tpetra::MultiVector<int, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial> >' as 'this' argument discards qualifiers [-fpermissive]
       const_cast<MV*>(this)->sync_device ();
       ~~~~~^~
/usr/WS1/mbetten/build/Trilinos.new/packages/tpetra/core/src/Tpetra_MultiVector_def.hpp:4191:1: note:   in call to 'void Tpetra::MultiVector<Scalar, LocalOrdinal, GlobalOrdinal, Node>::sync_device() [with Scalar = int; LocalOrdinal = int; GlobalOrdinal = int; Node = Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial>]'
   sync_device () {
 ^ ~~~~~~~~~~~~~~~~                                     
/usr/WS1/mbetten/build/Trilinos.new/packages/tpetra/core/src/Tpetra_MultiVector_def.hpp: In instantiation of 'void Tpetra::MultiVector<Scalar, LocalOrdinal, GlobalOrdinal, Node>::normWeighted(const Tpetra::MultiVector<Scalar, LocalOrdinal, GlobalOrdinal, Node>&, const Teuchos::ArrayView<typename Kokkos::Details::ArithTraits<typename Kokkos::Details::ArithTraits<RealFloatType>::val_type>::mag_type>&) const [with Scalar = int; LocalOrdinal = int; GlobalOrdinal = int; Node = Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial>; typename Kokkos::Details::ArithTraits<typename Kokkos::Details::ArithTraits<RealFloatType>::val_type>::mag_type = int]':
/usr/WS1/mbetten/build/Trilinos.new/cuda/packages/tpetra/core/src/Tpetra_MultiVector_INT_INT_INT_SERIAL.cpp:78:16:   required from here
/usr/WS1/mbetten/build/Trilinos.new/packages/tpetra/core/src/Tpetra_MultiVector_def.hpp:2038:12: error: passing 'const Tpetra::MultiVector<int, int, int, Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial> >' as 'this' argument discards qualifiers [-fpermissive]
     const_cast<MV*> (this)->sync_device ();
     ~~~~~~~^~
/usr/WS1/mbetten/build/Trilinos.new/packages/tpetra/core/src/Tpetra_MultiVector_def.hpp:4191:1: note:   in call to 'void Tpetra::MultiVector<Scalar, LocalOrdinal, GlobalOrdinal, Node>::sync_device() [with Scalar = int; LocalOrdinal = int; GlobalOrdinal = int; Node = Kokkos::Compat::KokkosDeviceWrapperNode<Kokkos::Serial>]'
   sync_device () {
 ^ ~~~~~~~~~~~~~~~~                                     
make[2]: *** [packages/tpetra/core/src/CMakeFiles/t

Is this a known issue?

I'm trying to compile on lassen, the open sierra machine

@trilinos/stk @trilinos/tpetra

Expectations

Compiles under nvcc-10.1

Current Behavior

compiles with the same script under 9.1

Motivation and Context

@nmhamster says cuda 10.1 is the bomb...

Steps to Reproduce

No idea on what local machine has 10.1, I can work through things

Your Environment

gcc-7.3.1 cuda-10.1.105

Assignee
Assign to
Time tracking