Skip to content

Commit

Permalink
batched/eti: ETI host-level interfaces
Browse files Browse the repository at this point in the history
  • Loading branch information
e10harvey committed May 1, 2023
1 parent b654dd6 commit c3f771a
Show file tree
Hide file tree
Showing 29 changed files with 870 additions and 509 deletions.
1 change: 0 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -308,7 +308,6 @@ ELSE()
# This doesn't change pre-existing behavior before the ETI changes
#LIST(APPEND HEADERS ${ETI_HEADERS})
#-----------------------------------------------------------------------------

KOKKOSKERNELS_ADD_LIBRARY(
kokkoskernels
HEADERS ${HEADERS}
Expand Down
50 changes: 50 additions & 0 deletions batched/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -16,6 +16,56 @@ IF (NOT KokkosKernels_ENABLE_COMPONENT_BLAS)
LIST(APPEND SOURCES ${CMAKE_CURRENT_SOURCE_DIR}/batched/KokkosBatched_Util.cpp)
ENDIF()

KOKKOSKERNELS_GENERATE_ETI(Batched_Gemm_nt_nt_bll Gemm
COMPONENTS batched
HEADER_LIST ETI_HEADERS
SOURCE_LIST SOURCES
TYPE_LISTS FLOATS LAYOUTS DEVICES
)
KOKKOSKERNELS_GENERATE_ETI(Batched_Gemm_nt_t_bll Gemm
COMPONENTS batched
HEADER_LIST ETI_HEADERS
SOURCE_LIST SOURCES
TYPE_LISTS FLOATS LAYOUTS DEVICES
)
KOKKOSKERNELS_GENERATE_ETI(Batched_Gemm_t_nt_bll Gemm
COMPONENTS batched
HEADER_LIST ETI_HEADERS
SOURCE_LIST SOURCES
TYPE_LISTS FLOATS LAYOUTS DEVICES
)
KOKKOSKERNELS_GENERATE_ETI(Batched_Gemm_t_t_bll Gemm
COMPONENTS batched
HEADER_LIST ETI_HEADERS
SOURCE_LIST SOURCES
TYPE_LISTS FLOATS LAYOUTS DEVICES
)

KOKKOSKERNELS_GENERATE_ETI(Batched_Gemm_nt_nt_blr Gemm
COMPONENTS batched
HEADER_LIST ETI_HEADERS
SOURCE_LIST SOURCES
TYPE_LISTS FLOATS LAYOUTS DEVICES
)
KOKKOSKERNELS_GENERATE_ETI(Batched_Gemm_nt_t_blr Gemm
COMPONENTS batched
HEADER_LIST ETI_HEADERS
SOURCE_LIST SOURCES
TYPE_LISTS FLOATS LAYOUTS DEVICES
)
KOKKOSKERNELS_GENERATE_ETI(Batched_Gemm_t_nt_blr Gemm
COMPONENTS batched
HEADER_LIST ETI_HEADERS
SOURCE_LIST SOURCES
TYPE_LISTS FLOATS LAYOUTS DEVICES
)
KOKKOSKERNELS_GENERATE_ETI(Batched_Gemm_t_t_blr Gemm
COMPONENTS batched
HEADER_LIST ETI_HEADERS
SOURCE_LIST SOURCES
TYPE_LISTS FLOATS LAYOUTS DEVICES
)

# Adding unit-tests
KOKKOSKERNELS_INCLUDE_DIRECTORIES(${CMAKE_CURRENT_BINARY_DIR}/batched)
KOKKOSKERNELS_INCLUDE_DIRECTORIES(REQUIRED_DURING_INSTALLATION_TESTING ${CMAKE_CURRENT_SOURCE_DIR}/batched)
626 changes: 626 additions & 0 deletions batched/dense/impl/KokkosBatched_HostLevel_Gemm_Impl.hpp

Large diffs are not rendered by default.

525 changes: 17 additions & 508 deletions batched/dense/src/KokkosBatched_Gemm_Decl.hpp

Large diffs are not rendered by default.

Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
//@HEADER
// ************************************************************************
//
// Kokkos v. 4.0
// Copyright (2022) National Technology & Engineering
// Solutions of Sandia, LLC (NTESS).
//
// Under the terms of Contract DE-NA0003525 with NTESS,
// the U.S. Government retains certain rights in this software.
//
// Part of Kokkos, under the Apache License v2.0 with LLVM Exceptions.
// See https://kokkos.org/LICENSE for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//@HEADER
#include "KokkosBatched_Gemm_Decl.hpp"
namespace KokkosBatched {
namespace Impl {
using KokkosBlas::Trans;
@BATCHED_GEMM_NT_NT_BLL_ETI_INST_BLOCK@
} // namespace Impl
} // namespace KokkosBatched
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
//@HEADER
// ************************************************************************
//
// Kokkos v. 4.0
// Copyright (2022) National Technology & Engineering
// Solutions of Sandia, LLC (NTESS).
//
// Under the terms of Contract DE-NA0003525 with NTESS,
// the U.S. Government retains certain rights in this software.
//
// Part of Kokkos, under the Apache License v2.0 with LLVM Exceptions.
// See https://kokkos.org/LICENSE for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//@HEADER
#include "KokkosBatched_Gemm_Decl.hpp"
namespace KokkosBatched {
namespace Impl {
using KokkosBlas::Trans;
@BATCHED_GEMM_NT_NT_BLR_ETI_INST_BLOCK@
} // namespace Impl
} // namespace KokkosBatched
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
//@HEADER
// ************************************************************************
//
// Kokkos v. 4.0
// Copyright (2022) National Technology & Engineering
// Solutions of Sandia, LLC (NTESS).
//
// Under the terms of Contract DE-NA0003525 with NTESS,
// the U.S. Government retains certain rights in this software.
//
// Part of Kokkos, under the Apache License v2.0 with LLVM Exceptions.
// See https://kokkos.org/LICENSE for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//@HEADER
#include "KokkosBatched_Gemm_Decl.hpp"
namespace KokkosBatched {
namespace Impl {
using KokkosBlas::Trans;
@BATCHED_GEMM_NT_T_BLL_ETI_SPEC_INST@
} // namespace Impl
} // namespace KokkosBatched
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
//@HEADER
// ************************************************************************
//
// Kokkos v. 4.0
// Copyright (2022) National Technology & Engineering
// Solutions of Sandia, LLC (NTESS).
//
// Under the terms of Contract DE-NA0003525 with NTESS,
// the U.S. Government retains certain rights in this software.
//
// Part of Kokkos, under the Apache License v2.0 with LLVM Exceptions.
// See https://kokkos.org/LICENSE for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//@HEADER
#include "KokkosBatched_Gemm_Decl.hpp"
namespace KokkosBatched {
namespace Impl {
using KokkosBlas::Trans;
@BATCHED_GEMM_NT_T_BLR_ETI_SPEC_INST@
} // namespace Impl
} // namespace KokkosBatched
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
//@HEADER
// ************************************************************************
//
// Kokkos v. 4.0
// Copyright (2022) National Technology & Engineering
// Solutions of Sandia, LLC (NTESS).
//
// Under the terms of Contract DE-NA0003525 with NTESS,
// the U.S. Government retains certain rights in this software.
//
// Part of Kokkos, under the Apache License v2.0 with LLVM Exceptions.
// See https://kokkos.org/LICENSE for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//@HEADER
#include "KokkosBatched_Gemm_Decl.hpp"
namespace KokkosBatched {
namespace Impl {
using KokkosBlas::Trans;
@BATCHED_GEMM_T_NT_BLL_ETI_SPEC_INST@
} // namespace Impl
} // namespace KokkosBatched
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
//@HEADER
// ************************************************************************
//
// Kokkos v. 4.0
// Copyright (2022) National Technology & Engineering
// Solutions of Sandia, LLC (NTESS).
//
// Under the terms of Contract DE-NA0003525 with NTESS,
// the U.S. Government retains certain rights in this software.
//
// Part of Kokkos, under the Apache License v2.0 with LLVM Exceptions.
// See https://kokkos.org/LICENSE for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//@HEADER
#include "KokkosBatched_Gemm_Decl.hpp"
namespace KokkosBatched {
namespace Impl {
using KokkosBlas::Trans;
@BATCHED_GEMM_T_NT_BLR_ETI_SPEC_INST@
} // namespace Impl
} // namespace KokkosBatched
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
//@HEADER
// ************************************************************************
//
// Kokkos v. 4.0
// Copyright (2022) National Technology & Engineering
// Solutions of Sandia, LLC (NTESS).
//
// Under the terms of Contract DE-NA0003525 with NTESS,
// the U.S. Government retains certain rights in this software.
//
// Part of Kokkos, under the Apache License v2.0 with LLVM Exceptions.
// See https://kokkos.org/LICENSE for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//@HEADER
#include "KokkosBatched_Gemm_Decl.hpp"
namespace KokkosBatched {
namespace Impl {
using KokkosBlas::Trans;
@KOKKOSBATCHED_GEMM_T_T_BLL_ETI_SPEC_INST@
} // namespace Impl
} // namespace KokkosBatched
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
//@HEADER
// ************************************************************************
//
// Kokkos v. 4.0
// Copyright (2022) National Technology & Engineering
// Solutions of Sandia, LLC (NTESS).
//
// Under the terms of Contract DE-NA0003525 with NTESS,
// the U.S. Government retains certain rights in this software.
//
// Part of Kokkos, under the Apache License v2.0 with LLVM Exceptions.
// See https://kokkos.org/LICENSE for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//@HEADER
#include "KokkosBatched_Gemm_Decl.hpp"
namespace KokkosBatched {
namespace Impl {
using KokkosBlas::Trans;
@BATCHED_GEMM_T_T_BLR_ETI_SPEC_INST@
} // namespace Impl
} // namespace KokkosBatched
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
Empty file.
1 change: 1 addition & 0 deletions graph/impl/KokkosGraph_Distance2MIS_impl.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -829,6 +829,7 @@ struct D2_MIS_FixedPriority {
InitWorklistFunctor(worklist1));
lno_t workRemain = numVerts;
int numIter = 0;
(void)numIter;
while (workRemain) {
// do another iteration
Kokkos::parallel_for(
Expand Down

0 comments on commit c3f771a

Please sign in to comment.