|
Anasazi
Version of the Day
|
00001 #include "AnasaziTpetraAdapter.hpp" 00002 00003 #ifdef HAVE_ANASAZI_TPETRA_TIMERS 00004 00005 #include <Kokkos_SerialNode.hpp> 00006 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<float, Tpetra::MultiVector<float, int, int, Kokkos::SerialNode > >::mvTransMvTimer_ = Teuchos::null; 00007 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<float, Tpetra::MultiVector<float, int, int, Kokkos::SerialNode > >::mvTimesMatAddMvTimer_ = Teuchos::null; 00008 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<double, Tpetra::MultiVector<double, int, int, Kokkos::SerialNode > >::mvTransMvTimer_ = Teuchos::null; 00009 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<double, Tpetra::MultiVector<double, int, int, Kokkos::SerialNode > >::mvTimesMatAddMvTimer_ = Teuchos::null; 00010 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<std::complex<float>, Tpetra::MultiVector<std::complex<float>, int, int, Kokkos::SerialNode > >::mvTransMvTimer_ = Teuchos::null; 00011 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<std::complex<float>, Tpetra::MultiVector<std::complex<float>, int, int, Kokkos::SerialNode > >::mvTimesMatAddMvTimer_ = Teuchos::null; 00012 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<std::complex<double>, Tpetra::MultiVector<std::complex<double>, int, int, Kokkos::SerialNode > >::mvTransMvTimer_ = Teuchos::null; 00013 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<std::complex<double>, Tpetra::MultiVector<std::complex<double>, int, int, Kokkos::SerialNode > >::mvTimesMatAddMvTimer_ = Teuchos::null; 00014 00015 #ifdef HAVE_KOKKOSCLASSIC_TBB 00016 #include <Kokkos_TBBNode.hpp> 00017 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<float, Tpetra::MultiVector<float, int, int, Kokkos::TBBNode > >::mvTimesMatAddMvTimer_ = Teuchos::null; 00018 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<float, Tpetra::MultiVector<float, int, int, Kokkos::TBBNode > >::mvTransMvTimer_ = Teuchos::null; 00019 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<double, Tpetra::MultiVector<double, int, int, Kokkos::TBBNode > >::mvTimesMatAddMvTimer_ = Teuchos::null; 00020 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<double, Tpetra::MultiVector<double, int, int, Kokkos::TBBNode > >::mvTransMvTimer_ = Teuchos::null; 00021 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<std::complex<float>, Tpetra::MultiVector<std::complex<float>, int, int, Kokkos::TBBNode > >::mvTimesMatAddMvTimer_ = Teuchos::null; 00022 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<std::complex<float>, Tpetra::MultiVector<std::complex<float>, int, int, Kokkos::TBBNode > >::mvTransMvTimer_ = Teuchos::null; 00023 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<std::complex<double>, Tpetra::MultiVector<std::complex<double>, int, int, Kokkos::TBBNode > >::mvTimesMatAddMvTimer_ = Teuchos::null; 00024 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<std::complex<double>, Tpetra::MultiVector<std::complex<double>, int, int, Kokkos::TBBNode > >::mvTransMvTimer_ = Teuchos::null; 00025 #endif 00026 00027 #ifdef HAVE_KOKKOSCLASSIC_THREADPOOL 00028 #include <Kokkos_TPINode.hpp> 00029 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<float, Tpetra::MultiVector<float, int, int, Kokkos::TPINode > >::mvTransMvTimer_ = Teuchos::null; 00030 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<float, Tpetra::MultiVector<float, int, int, Kokkos::TPINode > >::mvTimesMatAddMvTimer_ = Teuchos::null; 00031 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<double, Tpetra::MultiVector<double, int, int, Kokkos::TPINode > >::mvTransMvTimer_ = Teuchos::null; 00032 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<double, Tpetra::MultiVector<double, int, int, Kokkos::TPINode > >::mvTimesMatAddMvTimer_ = Teuchos::null; 00033 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<std::complex<float>, Tpetra::MultiVector<std::complex<float>, int, int, Kokkos::TPINode > >::mvTransMvTimer_ = Teuchos::null; 00034 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<std::complex<float>, Tpetra::MultiVector<std::complex<float>, int, int, Kokkos::TPINode > >::mvTimesMatAddMvTimer_ = Teuchos::null; 00035 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<std::complex<double>, Tpetra::MultiVector<std::complex<double>, int, int, Kokkos::TPINode > >::mvTransMvTimer_ = Teuchos::null; 00036 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<std::complex<double>, Tpetra::MultiVector<std::complex<double>, int, int, Kokkos::TPINode > >::mvTimesMatAddMvTimer_ = Teuchos::null; 00037 #endif 00038 00039 #ifdef HAVE_KOKKOSCLASSIC_THRUST 00040 #include <Kokkos_ThrustGPUNode.hpp> 00041 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<float, Tpetra::MultiVector<float, int, int, Kokkos::ThrustGPUNode> >::mvTransMvTimer_ = Teuchos::null; 00042 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<float, Tpetra::MultiVector<float, int, int, Kokkos::ThrustGPUNode> >::mvTimesMatAddMvTimer_ = Teuchos::null; 00043 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<double, Tpetra::MultiVector<double, int, int, Kokkos::ThrustGPUNode> >::mvTransMvTimer_ = Teuchos::null; 00044 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<double, Tpetra::MultiVector<double, int, int, Kokkos::ThrustGPUNode> >::mvTimesMatAddMvTimer_ = Teuchos::null; 00045 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<std::complex<float>, Tpetra::MultiVector<std::complex<float>, int, int, Kokkos::ThrustGPUNode> >::mvTransMvTimer_ = Teuchos::null; 00046 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<std::complex<float>, Tpetra::MultiVector<std::complex<float>, int, int, Kokkos::ThrustGPUNode> >::mvTimesMatAddMvTimer_ = Teuchos::null; 00047 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<std::complex<double>, Tpetra::MultiVector<std::complex<double>, int, int, Kokkos::ThrustGPUNode> >::mvTransMvTimer_ = Teuchos::null; 00048 template <> Teuchos::RCP<Teuchos::Time> Anasazi::MultiVecTraits<std::complex<double>, Tpetra::MultiVector<std::complex<double>, int, int, Kokkos::ThrustGPUNode> >::mvTimesMatAddMvTimer_ = Teuchos::null; 00049 #endif 00050 00051 #endif
1.7.6.1