Skip to content

Commit

Permalink
[SYCL][Joint Matrix][E2E] Add few load/store tests for different Join…
Browse files Browse the repository at this point in the history
…tMatrixLoadStoreOpt flag setting (intel#13873)

This PR adds the following tests:
- element_wise_all_ops verification for
IGC_JointMatrixLoadStoreOpt=2,1,0. It is split to 3 different tests,
since test runtime became too big, so splitting allows to run tests
faster in several threads
- big combinations, B row-major and annotated_ptr tests with different
flag setting (IGC_JointMatrixLoadStoreOpt=0,1) in accordance with the
loads/stores implemented in IGC for those flag settings.
  • Loading branch information
YuriPlyakhin authored May 29, 2024
1 parent 6f3ce0f commit dec1146
Show file tree
Hide file tree
Showing 7 changed files with 50 additions and 0 deletions.
14 changes: 14 additions & 0 deletions sycl/test-e2e/Matrix/element_wise_all_ops_1d.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
//==-------- element_wise_all_ops_1d.cpp - DPC++ joint_matrix ---------==//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
// REQUIRES: aspect-ext_intel_matrix, gpu

// RUN: %{build} -o %t.out
// RUN: env IGC_JointMatrixLoadStoreOpt=1 %{run} %t.out

#include "common.hpp"
#include "element_wise_all_ops_impl.hpp"
14 changes: 14 additions & 0 deletions sycl/test-e2e/Matrix/element_wise_all_ops_1d_cont.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
//==-------- element_wise_all_ops_1d_cont.cpp - DPC++ joint_matrix ---------==//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
// REQUIRES: aspect-ext_intel_matrix, gpu

// RUN: %{build} -o %t.out
// RUN: env IGC_JointMatrixLoadStoreOpt=2 %{run} %t.out

#include "common.hpp"
#include "element_wise_all_ops_impl.hpp"
14 changes: 14 additions & 0 deletions sycl/test-e2e/Matrix/element_wise_all_ops_scalar.cpp
Original file line number Diff line number Diff line change
@@ -0,0 +1,14 @@
//==---- element_wise_all_ops_scalar.cpp - DPC++ joint_matrix ------==//
//
// Part of the LLVM Project, under the Apache License v2.0 with LLVM Exceptions.
// See https://llvm.org/LICENSE.txt for license information.
// SPDX-License-Identifier: Apache-2.0 WITH LLVM-exception
//
//===----------------------------------------------------------------------===//
// REQUIRES: aspect-ext_intel_matrix, gpu

// RUN: %{build} -o %t.out
// RUN: env IGC_JointMatrixLoadStoreOpt=0 %{run} %t.out

#include "common.hpp"
#include "element_wise_all_ops_impl.hpp"
2 changes: 2 additions & 0 deletions sycl/test-e2e/Matrix/joint_matrix_annotated_ptr.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@

// RUN: %{build} -o %t.out
// RUN: %{run} %t.out
// RUN: %if gpu %{ env IGC_JointMatrixLoadStoreOpt=0 %{run} %t.out %}
// RUN: %if gpu %{ env IGC_JointMatrixLoadStoreOpt=1 %{run} %t.out %}

#include "common.hpp"

Expand Down
2 changes: 2 additions & 0 deletions sycl/test-e2e/Matrix/joint_matrix_bfloat16_packedB.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -11,6 +11,8 @@
// RUN: %{build} -o %t.out
// RUN: %{run} %t.out
// RUN: %if gpu %{ env IGC_JointMatrixLoadStoreOpt=2 %{run} %t.out %}
// RUN: %if gpu %{ env IGC_JointMatrixLoadStoreOpt=1 %{run} %t.out %}
// RUN: %if gpu %{ env IGC_JointMatrixLoadStoreOpt=0 %{run} %t.out %}

#include "common.hpp"
#include "joint_matrix_bfloat16_packedB_impl.hpp"
2 changes: 2 additions & 0 deletions sycl/test-e2e/Matrix/joint_matrix_int8_vnni.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -9,6 +9,8 @@

// RUN: %{build} -o %t.out
// RUN: %{run} %t.out
// RUN: %if gpu %{ env IGC_JointMatrixLoadStoreOpt=0 %{run} %t.out %}
// RUN: %if gpu %{ env IGC_JointMatrixLoadStoreOpt=1 %{run} %t.out %}

#include "common.hpp"

Expand Down
2 changes: 2 additions & 0 deletions sycl/test-e2e/Matrix/joint_matrix_rowmajorA_rowmajorB.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,8 @@
// RUN: %{build} -o %t.out
// RUN: %{run} %t.out
// RUN: %if gpu %{ env IGC_JointMatrixLoadStoreOpt=2 %{run} %t.out %}
// RUN: %if gpu %{ env IGC_JointMatrixLoadStoreOpt=1 %{run} %t.out %}
// RUN: %if gpu %{ env IGC_JointMatrixLoadStoreOpt=0 %{run} %t.out %}

// This tests support of row major layout for matrix B which does automatic VNNI
// transform. This is currently only available on AMX and XMX of PVC
Expand Down

0 comments on commit dec1146

Please sign in to comment.