oneDNN icon indicating copy to clipboard operation
oneDNN copied to clipboard

test_shuffle fails on aarch64 when BF16 data type is enabled.

Open renato-arantes opened this issue 1 year ago • 3 comments

Summary

By enabling BF16 data type on aarch64 here, test_shuffle fails here.

Version

main, commit 0c2ea8b by @kawakami-k

Steps to reproduce

The code here checks if ACL is present. But the issue also happens without ACL. By replacing the lines 120 and 121 with:

#elif DNNL_AARCH64
            return true;

Someone can enable BF16 on aarch64 by default, and reproduce the issue without ACL.

renato-arantes avatar Feb 15 '24 11:02 renato-arantes

Hi, @renato-arantes

I reproduced test_shuffle of 67012a53d4c009923af034ec3917b2456d84b75c on Ubuntu22.04 AWS Graviton3.

.github/automation/build_acl.sh  --version 23.11 --arch armv8a --multi_isa --root-dir $(pwd)/ComputeLibrary
.github/automation/build.sh --threading omp --mode Release --source-dir $(pwd) --build-dir $(pwd)/build --acl-dir $(pwd)/ComputeLibrary
cd build/tests/gtests
./test_shuffle --gtest_filter="ShuffleSimpleBF16/shuffle_test_t.TestsShuffle/4"

This error message is as same as yours?

Note: Google Test filter = ShuffleSimpleBF16/shuffle_test_t.TestsShuffle/4:-*_GPU*
[==========] Running 1 test from 1 test suite.
[----------] Global test environment set-up.
[----------] 1 test from ShuffleSimpleBF16/shuffle_test_t
[ RUN      ] ShuffleSimpleBF16/shuffle_test_t.TestsShuffle/4
free(): invalid pointer
zsh: abort (core dumped)  ./test_shuffle 

kawakami-k avatar Mar 08 '24 04:03 kawakami-k

Hi @kawakami-k,

Sorry for the delay in responding to you.

It is similar:

./test_shuffle --gtest_filter="ShuffleSimpleBF16/shuffle_test_t.TestsShuffle/4"

Note: Google Test filter = ShuffleSimpleBF16/shuffle_test_t.TestsShuffle/4:-*_GPU*
[==========] Running 1 test from 1 test suite.
[----------] Global test environment set-up.
[----------] 1 test from ShuffleSimpleBF16/shuffle_test_t
[ RUN      ] ShuffleSimpleBF16/shuffle_test_t.TestsShuffle/4
test_shuffle: /home/renara01/desenv/oncpuml_1480/github/oneDNN/src/cpu/aarch64/shuffle/jit_uni_shuffle_kernel.cpp:77: void dnnl::impl::cpu::aarch64::jit_uni_shuffle_kernel_t<isa>::gather_data(const Xbyak_aarch64::XReg&, int, int, bool) [with dnnl::impl::cpu::aarch64::cpu_isa_t isa = dnnl::impl::cpu::aarch64::sve_256]: Assertion `!"unsupported emu_gather_data"' failed.
Aborted (core dumped)

renato-arantes avatar Mar 12 '24 20:03 renato-arantes

I'll fix the bug.

kawakami-k avatar Mar 31 '24 23:03 kawakami-k