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

cpu: aarch64: Extend ARM SVE Support for BRGEMM General and 1x1 Forward Convolution. #1968

Open
wants to merge 2 commits into
base: main
Choose a base branch
from

Conversation

kasturedeeksha
Copy link
Contributor

Description

This commit enables BRGEMM general and 1x1 forward convolution for the ARM SVE ISA.

Major code changes:

Added BRGEMM convolution files in src/aarch64 to support general and 1x1 forward convolution.
Added support for brgemm convolution in src/cpu/aarch64/brgemm/brgemm_containers.hpp, src/aarch64/cpu_isa_traits.hpp and src/cpu/aarch64/jit_primitive_conf.hpp.

Checklist

General

  • Do all unit and benchdnn tests (make test and make test_benchdnn_*) pass locally for each commit?
    Test output is same with and without this commit.
  1. make test output :
 98% tests passed, 3 tests failed out of 194
  Total Test time (real) = 535.50 sec
  The following tests FAILED:
      148 - test_graph_unit_dnnl_conv_usm_cpu (Failed)
      153 - test_graph_unit_dnnl_large_partition_usm_cpu (Failed)
      175 - test_benchdnn_modeC_graph_ci_cpu (Failed)
 Errors while running CTest
 Output from these tests are in: 
 /home/deekshak/xybak/oss_pr/forked_oss/oneDNN_Fork/build/Testing/Temporary/LastTest.log
 Use "--rerun-failed --output-on-failure" to re-run the failed cases verbosely.
 make: *** [Makefile:71: test] Error 8
  • Have you formatted the code using clang-format? Yes
    cc: @kawakami-k

@vpirogov vpirogov added this to the v3.6 milestone Jun 21, 2024
@abhijain1204fujitsu
Copy link

@vpirogov , Hello Could you please support for the review of this PR
In case there is any comment from your side kindly let us know so that we can proceed further for merger as well.

@@ -95,6 +95,28 @@ struct brgemm_kernel_container_t {
std::map<const brgemm_t *, const brgemm_kernel_t *> brgemm_map_;
};

struct brgemm_palette_container_t {
Copy link
Contributor

Choose a reason for hiding this comment

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

Palettes are for Intel AMX. You probably may not want to copy-paste them.

Copy link
Contributor Author

Choose a reason for hiding this comment

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

@dzarukin Thank you for your feedback. I've made the suggested modifications. Please let me know if there are any additional changes needed.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

4 participants