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

BSR block SpGEMM implementation #1099

Merged
merged 16 commits into from
Apr 29, 2022
Merged

Conversation

mzuzek
Copy link

@mzuzek mzuzek commented Sep 8, 2021

This PR introduces implementation for block version of sparse BSR matrix-matrix multiplication (block spgemm).

Minimal changes to baseline CSR spgemm implementation are intended for clarity and correctness verifiability, so that this PR can provide correct implementation checkpoint. For the follow up with related refactoring and performance tuning see PR #1215.

📌 Files changed with respect to original sparse GEMM implementation

Status

Algorithm coverage:

  • Serial/Debug algorightm implementation (SPGEMM_DEBUG);
  • Default algorithm - hash method (SPGEMM_KK, SPGEMM_KK_LP, and SPGEMM_KK_MEMORY alias SPGEMM_KK_MEMSPEED):
    • CPU functors:
      • SPGEMM_KKMultiCoreTag;
      • SPGEMM_KK_LPMultiCoreTag4;
    • GPU functors (internal dispatch):
      • SPGEMM_KK_MEMORYGPUTag;
      • SPGEMM_KK_MEMORY_BIGSPREADTEAMGPUTag6;
      • SPGEMM_KK_MEMORY_SPREADTEAMGPUTag4;
  • Default algorithm - speed method (SPGEMM_KK_SPEED alias SPGEMM_KK_DENSE):
    • CPU functor MultiCoreTag;
    • GPU functor GPUTag;

Implementation

  • Block interface and dispatch:
    • KokkosSparse::block_spgemm_symbolic() and KokkosSparse::block_spgemm_numeric() in KokkosSparse_spgemm.hpp (whole spgemm symbolic phase is re-used behind this dispatch);
    • common spgemm_numeric() (KokkosSparse_spgemm_numeric.hpp) takes optional block_dim and dispatches between CRS and BSR spgemm;
    • KokkosSparse::Impl::BSPGEMM_NUMERIC<...>::bspgemm_numeric() dispatches to (default, debug, TPL, etc.);
  • Block implementation:
    • BlockHashmapAccumulator (KokkosKernels_BlockHashmapAccumulator.hpp): HashmapAccumulator mirror that provides hashmap-based column indexing and dense block accumulation;
    • basic block algebra (KokkosKernels_BlockUtils.hpp) - based on batched dgemm;
      • * support atomic_add in batched dgemm so it can replace kk_vector_block_mul_add()
  • Unit test (like spgemm);
  • ETI for Block SpGEMM;
  • Utilities:
    • generate random BSR matrix similar to non-block unit test;
    • sort BSR matrix (like CSR sort):
      • O(N2) draft;
      • * BSR versions of Radix/Bitonic sort functors;

@mzuzek
Copy link
Author

mzuzek commented Sep 8, 2021

Default algorithm implementation details (FY21 block spgemm status)

  • Symbolic version is reused from non-block spgemm without modification.
  • Numeric phase was implemented as KokkosBSPGEMM in sparse/impl/KokkosSparse_bspgemm_impl_kkmem.hpp with MultiCoreTag (SPGEMM_KK) and MultiCoreTag4 (SPGEMM_KK_LP) functors.
  • Accumulator is work-in-progress: MultiCoreTag operator uses HashingIndex which is essentially HashmapAccumulator reduced to indexing part used by spgemm (HashmapAccumulator works on scalars) while MultiCoreTag4 operator inlines the indexing like it did in non-block version. I'll try to refactor/unify it once I dig into GPU operators and understand all indexing/accumulation scenarios. This plan includes detailed review of related memory estimations and allocations.
  • I used KokkosBatched::SerialGemmInternal<KokkosBatched::Algo::Gemm::Unblocked> from sparse/impl/KokkosBatched_Gemm_Serial_Internal.hpp for block accumulation/combination (getting C = A * B and C += A * B with beta 0 and 1 respectively).
  • Adjusted workload estimations (and algorithm selection) for block CPU operators, which use: suggested_vector_size, suggested_team_size and team_row_chunk_size.
  • Unit tests are based on new overload of kk_generate_sparse_matrix() in common/KokkosKernels_IOUtils.hpp that takes block size and generates random BSR matrix (also fixed hangs on large relative bandwith to be able to generate denser test matrices).
  • There are some extra utilities for unit testing in unit_test/sparse/Test_Sparse_bspgemm.hpp, including << operator that renders BSR matrix on stdout.

@mzuzek
Copy link
Author

mzuzek commented Sep 8, 2021

Preliminary CPU performance

I connected MKL to benchmark block spgemm performance on CPU. For multiplication of random matrix by itself on i9-9900K (8 cores/16 threads)/32GB RAM/Ubuntu/gcc-8.4, I got some rough timings (no repetition, accuracy around 0,5~1s):

Note: Google Test filter = *block_spgemm*
[==========] Running 1 test from 1 test case.
[----------] Global test environment set-up.
[----------] 1 test from threads
[ RUN      ] threads.sparse_block_spgemm_double_int_int_TestExecSpace

Testing BSPGEMM: nrows=300000   block:2x2       nnz=8000000(0.009%)     bandwidth=100000(33.3%)        variance=10 (0.0%)      schedule=dynamic
 nnz_in=7800201
nnz_out=202326755
SPGEMM_DEBUG (reference result): 17.0
SPGEMM_MKL              spgemm_time:    5.5     output_check_time:      0.6
SPGEMM_KK               spgemm_time:    1.7     output_check_time:      0.5
SPGEMM_KK_LP            spgemm_time:    1.9     output_check_time:      0.5

Testing BSPGEMM: nrows=300000   block:3x3       nnz=6000000(0.007%)     bandwidth=100000(33.3%)        variance=10 (0.0%)      schedule=dynamic
 nnz_in=6000201
nnz_out=119850101
SPGEMM_DEBUG (reference result): 23.0
SPGEMM_MKL              spgemm_time:    10.7    output_check_time:      6.7
SPGEMM_KK               spgemm_time:    4.8     output_check_time:      0.7
SPGEMM_KK_LP            spgemm_time:    2.2     output_check_time:      0.7
[       OK ] threads.sparse_block_spgemm_double_int_int_TestExecSpace (80583 ms)
[----------] 1 test from threads (80587 ms total)

[----------] Global test environment tear-down
[==========] 1 test from 1 test case ran. (80589 ms total)
[  PASSED  ] 1 test.

Notes:

  • nnz above means number of non-zero blocks.
  • Tested on Threads Kokkos execution space (because of silly issue with OpenMP running on single core...)
  • In non-block version, mkl_sparse_spmm() is called twice: in symbolic and numeric phases. I drafted a new interface that avoids this duplicated allocations and calculation to get more accurate insight into performance baseline. This optimization would need some discussion to be included in the actual implementation (i.e. outside `the unit test), since it doesn't immediately fit the interface forcing separation of symbolic and numeric phases.

@kokkos-devops-admin
Copy link

Status Flag 'Pre-Test Inspection' - - This Pull Request Requires Inspection... The code must be inspected by a member of the Team before Testing/Merging
WARNING: NO REVIEWERS HAVE BEEN REQUESTED FOR THIS PULL REQUEST!

@lucbv lucbv requested review from srajama1, brian-kelley, lucbv and uhetmaniuk and removed request for srajama1 September 8, 2021 18:58
@kokkos-devops-admin
Copy link

Status Flag 'Pre-Test Inspection' - - This Pull Request Requires Inspection... The code must be inspected by a member of the Team before Testing/Merging
NO REVIEWS HAVE BEEN PERFORMED ON THIS PULL REQUEST!

@mzuzek mzuzek force-pushed the 29-bspgemm-implementation branch from eae9f61 to 85b19e3 Compare October 11, 2021 09:59
@kokkos-devops-admin
Copy link

Status Flag 'Pre-Test Inspection' - - This Pull Request Requires Inspection... The code must be inspected by a member of the Team before Testing/Merging
NO REVIEWS HAVE BEEN PERFORMED ON THIS PULL REQUEST!

@mzuzek mzuzek force-pushed the 29-bspgemm-implementation branch 3 times, most recently from 13d919b to 159d08c Compare November 24, 2021 13:57
@kokkos-devops-admin
Copy link

Status Flag 'Pre-Test Inspection' - - This Pull Request Requires Inspection... The code must be inspected by a member of the Team before Testing/Merging
NO INSPECTION HAS BEEN PERFORMED ON THIS PULL REQUEST! - This PR must be inspected by setting label 'AT: PRE-TEST INSPECTED'.

@mzuzek mzuzek force-pushed the 29-bspgemm-implementation branch 2 times, most recently from 993e92c to 5bfef1c Compare November 24, 2021 15:08
@mzuzek mzuzek changed the title Block sparse matrix-matrix implementation WIP Block SpGEMM implementation Nov 25, 2021
@mzuzek mzuzek changed the title WIP Block SpGEMM implementation WIP: Block SpGEMM implementation Nov 25, 2021
@mzuzek mzuzek force-pushed the 29-bspgemm-implementation branch from 5bfef1c to 221fc89 Compare December 6, 2021 16:44
@kokkos-devops-admin
Copy link

Status Flag 'Pre-Test Inspection' - - This Pull Request Requires Inspection... The code must be inspected by a member of the Team before Testing/Merging
NO INSPECTION HAS BEEN PERFORMED ON THIS PULL REQUEST! - This PR must be inspected by setting label 'AT: PRE-TEST INSPECTED'.

@mzuzek mzuzek mentioned this pull request Dec 6, 2021
9 tasks
@mzuzek
Copy link
Author

mzuzek commented Dec 6, 2021

@lucbv @srajama1 @brian-kelley @ppebay @fnrizzi @uhetmaniuk

I've redone this PR from scratch, restructuring and cleaning its content to get BSR spgemm with minimal changes introduced to baseline CSR implementation. Those BSR changes over CRS implementation can be inspected here (also pinned this link in the PR description for convenience). To accommodate for this approach, I took some irregular implementation decisions like disabling large parts of unused code with #if 0 or mirroring whole HashmapAccumulator with BlockHashmapAccumulator in a separate header - all this to be cleaned up on the follow up PR #1215.

My motivation behind proposing this minimal changes approach and the follow-up PR for refactoring and performance tuning was to secure a clear correct implementation checkpoint - with the following considerations taken into account:

  1. spgemm code is very easy to break due too its combined complexity and extent (bugs can be easily introduced even with smallest changes) ;
  2. implementation correctness can be very hard to verify in review (bugs can be extremely hard to spot on source code diffs);
  3. significant part of execution paths is not covered [yet] by the unit test (good chance for bugs not to be detected automatically either).

@mzuzek mzuzek marked this pull request as ready for review December 6, 2021 18:37
@mzuzek mzuzek changed the title WIP: Block SpGEMM implementation BSR block SpGEMM implementation Dec 6, 2021
@mzuzek mzuzek mentioned this pull request Dec 21, 2021
@mzuzek mzuzek force-pushed the 29-bspgemm-implementation branch from 221fc89 to 2549b48 Compare December 29, 2021 12:46
@kokkos-devops-admin
Copy link

Status Flag 'Pre-Test Inspection' - - This Pull Request Requires Inspection... The code must be inspected by a member of the Team before Testing/Merging
NO INSPECTION HAS BEEN PERFORMED ON THIS PULL REQUEST! - This PR must be inspected by setting label 'AT: PRE-TEST INSPECTED'.

@mzuzek mzuzek force-pushed the 29-bspgemm-implementation branch from 090f472 to b712a56 Compare April 22, 2022 14:15
@kokkos-devops-admin
Copy link

Status Flag 'Pre-Test Inspection' - - This Pull Request Requires Inspection... The code must be inspected by a member of the Team before Testing/Merging
NO INSPECTION HAS BEEN PERFORMED ON THIS PULL REQUEST! - This PR must be inspected by setting label 'AT: PRE-TEST INSPECTED'.

@mzuzek
Copy link
Author

mzuzek commented Apr 22, 2022

Hi @lucbv! Would you allow a Jenkins re-test ?

I just rebased this PR on current develop in hope to have [unrelated] CI failures solved by kokkos/kokkos#4959 now.

@brian-kelley brian-kelley added AT: RETEST Have this PR retested. AT: PRE-TEST INSPECTED Mark this PR as approved for testing. labels Apr 26, 2022
@kokkos-devops-admin
Copy link

Status Flag 'Pull Request AutoTester' - User Requested Retest - Label AT: RETEST will be reset after testing.

@kokkos-devops-admin kokkos-devops-admin removed the AT: PRE-TEST INSPECTED Mark this PR as approved for testing. label Apr 26, 2022
@kokkos-devops-admin
Copy link

Status Flag 'Pre-Test Inspection' - SUCCESS: The last commit to this Pull Request has been INSPECTED by label AT: PRE-TEST INSPECTED! Autotester is Removing Label; This inspection will remain valid until a new commit to source branch is performed.

@kokkos-devops-admin
Copy link

Status Flag 'Pull Request AutoTester' - Testing Jenkins Projects:

Pull Request Auto Testing STARTING (click to expand)

Build Information

Test Name: KokkosKernels_PullRequest_Tpls_CUDA9_GCC720_Light_Tpls_GCC720_GCC740

  • Build Num: 180
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_BRANCH 29-bspgemm-implementation
KOKKOSKERNELS_SOURCE_REPO https://github.com/fnrizzi/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA b712a56
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 4057d74
PR_LABELS AT: RETEST
PULLREQUESTNUM 1099
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_Tpls_CUDA10_Tpls_CUDA10_LayoutRight

  • Build Num: 173
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_BRANCH 29-bspgemm-implementation
KOKKOSKERNELS_SOURCE_REPO https://github.com/fnrizzi/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA b712a56
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 4057d74
PR_LABELS AT: RETEST
PULLREQUESTNUM 1099
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_GCC720

  • Build Num: 983
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_BRANCH 29-bspgemm-implementation
KOKKOSKERNELS_SOURCE_REPO https://github.com/fnrizzi/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA b712a56
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 4057d74
PR_LABELS AT: RETEST
PULLREQUESTNUM 1099
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_GCC720_Light_LayoutRight

  • Build Num: 627
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_BRANCH 29-bspgemm-implementation
KOKKOSKERNELS_SOURCE_REPO https://github.com/fnrizzi/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA b712a56
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 4057d74
PR_LABELS AT: RETEST
PULLREQUESTNUM 1099
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_Tpls_GCC720

  • Build Num: 971
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_BRANCH 29-bspgemm-implementation
KOKKOSKERNELS_SOURCE_REPO https://github.com/fnrizzi/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA b712a56
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 4057d74
PR_LABELS AT: RETEST
PULLREQUESTNUM 1099
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_Tpls_INTEL18

  • Build Num: 958
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_BRANCH 29-bspgemm-implementation
KOKKOSKERNELS_SOURCE_REPO https://github.com/fnrizzi/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA b712a56
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 4057d74
PR_LABELS AT: RETEST
PULLREQUESTNUM 1099
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_CLANG1001

  • Build Num: 363
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_BRANCH 29-bspgemm-implementation
KOKKOSKERNELS_SOURCE_REPO https://github.com/fnrizzi/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA b712a56
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 4057d74
PR_LABELS AT: RETEST
PULLREQUESTNUM 1099
TEST_REPO_ALIAS KOKKOSKERNELS

Using Repos:

Repo: KOKKOSKERNELS (fnrizzi/kokkos-kernels)
  • Branch: 29-bspgemm-implementation
  • SHA: b712a56
  • Mode: TEST_REPO

Pull Request Author: MikolajZuzek

@kokkos-devops-admin
Copy link

Status Flag 'Pull Request AutoTester' - User Requested Retest - Label AT: RETEST will be reset after testing.

@kokkos-devops-admin
Copy link

Status Flag 'Pull Request AutoTester' - Testing Jenkins Projects:

Pull Request Auto Testing STARTING (click to expand)

Build Information

Test Name: KokkosKernels_PullRequest_Tpls_CUDA9_GCC720_Light_Tpls_GCC720_GCC740

  • Build Num: 181
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_BRANCH 29-bspgemm-implementation
KOKKOSKERNELS_SOURCE_REPO https://github.com/fnrizzi/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA b712a56
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 4057d74
PR_LABELS AT: RETEST
PULLREQUESTNUM 1099
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_Tpls_CUDA10_Tpls_CUDA10_LayoutRight

  • Build Num: 174
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_BRANCH 29-bspgemm-implementation
KOKKOSKERNELS_SOURCE_REPO https://github.com/fnrizzi/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA b712a56
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 4057d74
PR_LABELS AT: RETEST
PULLREQUESTNUM 1099
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_GCC720

  • Build Num: 984
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_BRANCH 29-bspgemm-implementation
KOKKOSKERNELS_SOURCE_REPO https://github.com/fnrizzi/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA b712a56
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 4057d74
PR_LABELS AT: RETEST
PULLREQUESTNUM 1099
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_GCC720_Light_LayoutRight

  • Build Num: 628
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_BRANCH 29-bspgemm-implementation
KOKKOSKERNELS_SOURCE_REPO https://github.com/fnrizzi/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA b712a56
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 4057d74
PR_LABELS AT: RETEST
PULLREQUESTNUM 1099
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_Tpls_GCC720

  • Build Num: 972
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_BRANCH 29-bspgemm-implementation
KOKKOSKERNELS_SOURCE_REPO https://github.com/fnrizzi/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA b712a56
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 4057d74
PR_LABELS AT: RETEST
PULLREQUESTNUM 1099
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_Tpls_INTEL18

  • Build Num: 959
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_BRANCH 29-bspgemm-implementation
KOKKOSKERNELS_SOURCE_REPO https://github.com/fnrizzi/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA b712a56
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 4057d74
PR_LABELS AT: RETEST
PULLREQUESTNUM 1099
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_CLANG1001

  • Build Num: 364
  • Status: STARTED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_BRANCH 29-bspgemm-implementation
KOKKOSKERNELS_SOURCE_REPO https://github.com/fnrizzi/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA b712a56
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 4057d74
PR_LABELS AT: RETEST
PULLREQUESTNUM 1099
TEST_REPO_ALIAS KOKKOSKERNELS

Using Repos:

Repo: KOKKOSKERNELS (fnrizzi/kokkos-kernels)
  • Branch: 29-bspgemm-implementation
  • SHA: b712a56
  • Mode: TEST_REPO

Pull Request Author: MikolajZuzek

@kokkos-devops-admin
Copy link

Status Flag 'Pull Request AutoTester' - Jenkins Testing: all Jobs PASSED

Pull Request Auto Testing has PASSED (click to expand)

Build Information

Test Name: KokkosKernels_PullRequest_Tpls_CUDA9_GCC720_Light_Tpls_GCC720_GCC740

  • Build Num: 181
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_BRANCH 29-bspgemm-implementation
KOKKOSKERNELS_SOURCE_REPO https://github.com/fnrizzi/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA b712a56
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 4057d74
PR_LABELS AT: RETEST
PULLREQUESTNUM 1099
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_Tpls_CUDA10_Tpls_CUDA10_LayoutRight

  • Build Num: 174
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_BRANCH 29-bspgemm-implementation
KOKKOSKERNELS_SOURCE_REPO https://github.com/fnrizzi/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA b712a56
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 4057d74
PR_LABELS AT: RETEST
PULLREQUESTNUM 1099
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_GCC720

  • Build Num: 984
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_BRANCH 29-bspgemm-implementation
KOKKOSKERNELS_SOURCE_REPO https://github.com/fnrizzi/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA b712a56
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 4057d74
PR_LABELS AT: RETEST
PULLREQUESTNUM 1099
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_GCC720_Light_LayoutRight

  • Build Num: 628
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_BRANCH 29-bspgemm-implementation
KOKKOSKERNELS_SOURCE_REPO https://github.com/fnrizzi/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA b712a56
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 4057d74
PR_LABELS AT: RETEST
PULLREQUESTNUM 1099
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_Tpls_GCC720

  • Build Num: 972
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_BRANCH 29-bspgemm-implementation
KOKKOSKERNELS_SOURCE_REPO https://github.com/fnrizzi/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA b712a56
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 4057d74
PR_LABELS AT: RETEST
PULLREQUESTNUM 1099
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_Tpls_INTEL18

  • Build Num: 959
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_BRANCH 29-bspgemm-implementation
KOKKOSKERNELS_SOURCE_REPO https://github.com/fnrizzi/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA b712a56
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 4057d74
PR_LABELS AT: RETEST
PULLREQUESTNUM 1099
TEST_REPO_ALIAS KOKKOSKERNELS

Build Information

Test Name: KokkosKernels_PullRequest_CLANG1001

  • Build Num: 364
  • Status: PASSED

Jenkins Parameters

Parameter Name Value
KOKKOSKERNELS_SOURCE_BRANCH 29-bspgemm-implementation
KOKKOSKERNELS_SOURCE_REPO https://github.com/fnrizzi/kokkos-kernels
KOKKOSKERNELS_SOURCE_SHA b712a56
KOKKOSKERNELS_TARGET_BRANCH develop
KOKKOSKERNELS_TARGET_REPO https://github.com/kokkos/kokkos-kernels
KOKKOSKERNELS_TARGET_SHA 4057d74
PR_LABELS AT: RETEST
PULLREQUESTNUM 1099
TEST_REPO_ALIAS KOKKOSKERNELS

@kokkos-devops-admin kokkos-devops-admin removed the AT: RETEST Have this PR retested. label Apr 28, 2022
@kokkos-devops-admin
Copy link

Status Flag 'Pre-Merge Inspection' - - This Pull Request Requires Inspection... The code must be inspected by a member of the Team before Testing/Merging
THE LAST COMMIT TO THIS PULL REQUEST HAS NOT BEEN REVIEWED YET!

@kokkos-devops-admin
Copy link

All Jobs Finished; status = PASSED, However Inspection must be performed before merge can occur...

@lucbv lucbv added the AT: PRE-TEST INSPECTED Mark this PR as approved for testing. label Apr 29, 2022
Copy link
Contributor

@lucbv lucbv left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

I am okay with the changes made

@kokkos-devops-admin
Copy link

Status Flag 'Pre-Merge Inspection' - SUCCESS: The last commit to this Pull Request has been INSPECTED AND APPROVED by [ lucbv ]!

@kokkos-devops-admin
Copy link

Status Flag 'Pull Request AutoTester' - Pull Request MUST BE MERGED MANUALLY BY Project Team - This Repo does not support Automerge

@lucbv lucbv merged commit db72c4b into kokkos:develop Apr 29, 2022
@mzuzek
Copy link
Author

mzuzek commented Apr 30, 2022

@lucbv @brian-kelley Thank you very much for your thorough reviews and great comments!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
AT: PRE-TEST INSPECTED Mark this PR as approved for testing.
Projects
None yet
Development

Successfully merging this pull request may close these issues.

4 participants