Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[WIP] ThreadVector implementations kernels for SET, SCAL, GEMV and GEMM #1556

Draft
wants to merge 23 commits into
base: develop
Choose a base branch
from
Draft
Changes from 1 commit
Commits
Show all changes
23 commits
Select commit Hold shift + click to select a range
76f494c
GEMM: Move Serial, Team and TeamVector implementations to KokkosBlas
Sep 7, 2022
7ac1184
GEMM: move unit tests to Blas
Sep 7, 2022
51185f3
GEMM: move MKL implementation of SerialGemm to dedicated TPL header
Sep 9, 2022
016095b
GEMM: connect TeamVectorGemm to the selective interface
Sep 9, 2022
d945717
GEMM: implicit MemberType
Sep 9, 2022
88de7f2
GEMM: bring back batched interfaces for backward compatibility
Sep 22, 2022
38c9989
MKL: move utils to common header + fix macro duplication
Sep 22, 2022
de3d26c
GEMM: fix "batched" in names
Sep 27, 2022
2105dd9
GEMM: refactor crossing of A/B matrix transposes
Sep 13, 2022
5b6712b
GEMM: implement ConjTranspose
Sep 15, 2022
fc5bbb1
TeamGemv: move {Team,TeamVector}Internal to KokkosBlas2_team_gemv_int…
Sep 10, 2022
9f99fc4
TeamGemv: rename impl header
Sep 10, 2022
13a16d1
TeamGemv: remove unused headers
Sep 10, 2022
8d06e07
Gemv: move functor-level interfaces to the top-level header
Sep 10, 2022
2bcaff5
Gemv: implicit MemberType
Sep 26, 2022
643e8be
Merge branch 'gemm-transpose-refactoring' into gemv-transpose-refacto…
Sep 28, 2022
4e145e3
Merge branch 'fix-gemv-blas-headers' into gemv-transpose-refactoring
Sep 28, 2022
d989d26
GEMV: refactor A matrix transpose
Sep 27, 2022
7728904
Merge branch 'gemm-add-conjtranspose' into threadvector-kernels
Sep 28, 2022
900226a
Merge branch 'gemv-transpose-refactoring' into threadvector-kernels
Sep 28, 2022
cc8e867
SET/SCAL: add ThreadVector implementations and unit tests
Sep 27, 2022
61a1993
GEMV: add ThreadVector implementation and unit test
Sep 27, 2022
d079ea6
GEMM: add ThreadVector implementation and unit test
Sep 27, 2022
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
GEMM: fix "batched" in names
  • Loading branch information
Mikołaj Zuzek committed Sep 28, 2022
commit de3d26c1410e800c3b4447b5d61849d89e8d3e17
6 changes: 3 additions & 3 deletions blas/impl/KokkosBlas2_team_gemv_spec.hpp
Original file line number Diff line number Diff line change
@@ -194,7 +194,7 @@ struct TeamVectorGemv<MemberType, Trans::NoTranspose, Algo::Gemv::Unblocked> {
const MemberType& member, const ScalarType alpha, const AViewType& A,
const xViewType& x, const ScalarType beta, const yViewType& y) {
static_assert(AViewType::Rank == 2,
"Batched TeamVectorGemv requires rank-2 A matrix");
"KokkosBlas::TeamVectorGemv requires rank-2 A matrix");
return Impl::TeamVectorGemvInternal<Algo::Gemv::Unblocked>::invoke(
member, A.extent(0), A.extent(1), alpha, A.data(), A.stride_0(),
A.stride_1(), x.data(), x.stride_0(), beta, y.data(), y.stride_0());
@@ -213,7 +213,7 @@ struct TeamVectorGemv<MemberType, Trans::Transpose, Algo::Gemv::Unblocked> {
const MemberType& member, const ScalarType alpha, const AViewType& A,
const xViewType& x, const ScalarType beta, const yViewType& y) {
static_assert(AViewType::Rank == 2,
"Batched TeamVectorGemv requires rank-2 A matrix");
"KokkosBlas::TeamVectorGemv requires rank-2 A matrix");
return Impl::TeamVectorGemvInternal<Algo::Gemv::Unblocked>::invoke(
member, A.extent(1), A.extent(0), alpha, A.data(), A.stride_1(),
A.stride_0(), x.data(), x.stride_0(), beta, y.data(), y.stride_0());
@@ -232,7 +232,7 @@ struct TeamVectorGemv<MemberType, Trans::ConjTranspose, Algo::Gemv::Unblocked> {
const MemberType& member, const ScalarType alpha, const AViewType& A,
const xViewType& x, const ScalarType beta, const yViewType& y) {
static_assert(AViewType::Rank == 2,
"Batched TeamVectorGemv requires rank-2 A matrix");
"KokkosBlas::TeamVectorGemv requires rank-2 A matrix");
return Impl::TeamVectorGemvInternal<Algo::Gemv::Unblocked>::invoke(
member, Impl::OpConj{}, A.extent(1), A.extent(0), alpha, A.data(),
A.stride_1(), A.stride_0(), x.data(), x.stride_0(), beta, y.data(),
Loading