Skip to content

RV64: Runtime CPU feature detection does not cover all RVV code in the built binary #4638

@kxxt

Description

@kxxt

Summary

Runtime CPU feature detection does not cover all RVV code in the built binary, causing crashes on rv64gc platform.

Version

3.10.2 (git tag v3.10.2)

Environment

oneDNN includes hardware-specific optimizations and may behave
differently on depending on the compiler and build environment. Include
the following information to help reproduce the issue:

  • CPU make and model: rv64gc (SG2042)
  • OS version (uname -a): Linux 6.6.46-pisces #2024.08.18.16.00+26c645731 SMP riscv64 GNU/Linux
  • Compiler version (gcc --version): 15.2.1
  • CMake version (cmake --version): 4.2.3
  • CMake output log:
-- CMAKE_BUILD_TYPE is unset, defaulting to Release
-- The C compiler identification is GNU 15.2.1
-- The CXX compiler identification is GNU 15.2.1
-- Detecting C compiler ABI info
-- Detecting C compiler ABI info - done
-- Check for working C compiler: /usr/bin/cc - skipped
-- Detecting C compile features
-- Detecting C compile features - done
-- Detecting CXX compiler ABI info
-- Detecting CXX compiler ABI info - done
-- Check for working CXX compiler: /usr/bin/c++ - skipped
-- Detecting CXX compile features
-- Detecting CXX compile features - done
-- DNNL_TARGET_ARCH: RV64
-- DNNL_LIBRARY_NAME: dnnl
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD
-- Performing Test CMAKE_HAVE_LIBC_PTHREAD - Success
-- Found Threads: TRUE
-- Found OpenMP_C: -fopenmp (found version "4.5")
-- Found OpenMP_CXX: -fopenmp (found version "4.5")
-- Found OpenMP: TRUE (found version "4.5")
-- Performing Test CAN_COMPILE_RVV_INTRINSICS
-- Performing Test CAN_COMPILE_RVV_INTRINSICS - Success
-- Performing Test CAN_COMPILE_ZVFH_INTRINSICS
-- Performing Test CAN_COMPILE_ZVFH_INTRINSICS - Success
-- Can compile RVV Intrinsics: TRUE
-- Can compile Zvfh Intrinsics: TRUE
-- DNNL_RISCV_USE_RVV_INTRINSICS: TRUE
-- DNNL_RISCV_USE_ZVFH_INTRINSICS: TRUE
-- Using RV64 march flag: -march=rv64gcv_zvfh
-- Could NOT find Doxygen (missing: DOXYGEN_EXECUTABLE) 
-- Could NOT find Doxyrest (missing: DOXYREST_EXECUTABLE) 
-- Could NOT find Python (missing: Python_EXECUTABLE Interpreter) (Required is at least version "3.7")
-- Could NOT find Sphinx (missing: SPHINX_EXECUTABLE) 
-- Could NOT find Git (missing: GIT_EXECUTABLE) 
-- Enabled testing coverage: CI
-- Enabled workload: TRAINING
-- Enabled primitives: ALL
-- Enabled primitive CPU ISA: ALL
-- Enabled primitive GPU ISA: ALL
-- Enabled GeMM kernels ISA: ALL
-- Primitive cache is enabled
-- Graph component is enabled
-- Configuring done (106.8s)
-- Generating done (2.7s)
-- Build files have been written to: /build/onednn/src/oneDNN-3.10.2/build
  • git hash (git log -1 --format=%H): git tag v3.10.2

Steps to reproduce

Build oneDNN with a compiler that supports RVV and Zvfh but on a riscv64 machine that itself does not support them:

  cmake \
      -Bbuild \
      -GNinja \
      -DCMAKE_INSTALL_PREFIX="/usr"
  ninja -C build -j48 -v

Run tests:

ctest

Observed behavior

Test project /build/onednn/src/oneDNN-3.10.2/build
        Start   1: cpu-bnorm-u8-via-binary-postops-cpp
  1/227 Test   #1: cpu-bnorm-u8-via-binary-postops-cpp .....................***Exception: Illegal  1.04 sec
        Start   2: cpu-cnn-inference-f32-c
  2/227 Test   #2: cpu-cnn-inference-f32-c .................................***Exception: Illegal  0.78 sec
        Start   3: cpu-cnn-inference-f32-cpp
  3/227 Test   #3: cpu-cnn-inference-f32-cpp ...............................***Exception: Illegal  0.86 sec
        Start   4: cpu-cnn-inference-int8-cpp
  4/227 Test   #4: cpu-cnn-inference-int8-cpp ..............................***Exception: Illegal  0.96 sec
        Start   5: cpu-cnn-training-bf16-cpp
  5/227 Test   #5: cpu-cnn-training-bf16-cpp ...............................***Exception: Illegal  1.02 sec
        Start   6: cpu-cnn-training-f32-cpp
  6/227 Test   #6: cpu-cnn-training-f32-cpp ................................***Exception: Illegal  1.10 sec
        Start   7: cpu-cnn-training-f32-c
  7/227 Test   #7: cpu-cnn-training-f32-c ..................................***Exception: Illegal  0.94 sec
        Start   8: cpu-matmul-coo-cpp
  8/227 Test   #8: cpu-matmul-coo-cpp ......................................***Exception: Illegal  0.85 sec
        Start   9: cpu-matmul-csr-cpp
  9/227 Test   #9: cpu-matmul-csr-cpp ......................................***Exception: Illegal  0.84 sec
        Start  10: cpu-matmul-weights-compression-cpp
 10/227 Test  #10: cpu-matmul-weights-compression-cpp ......................***Exception: Illegal  0.98 sec
        Start  11: cpu-rnn-inference-f32-cpp
 11/227 Test  #11: cpu-rnn-inference-f32-cpp ...............................***Exception: Illegal  0.85 sec
        Start  12: cpu-rnn-inference-int8-cpp
 12/227 Test  #12: cpu-rnn-inference-int8-cpp ..............................***Exception: Illegal  0.92 sec
        Start  13: cpu-getting-started-cpp
 13/227 Test  #13: cpu-getting-started-cpp .................................***Exception: Illegal  0.95 sec
        Start  14: cpu-graph-getting-started-cpp
 14/227 Test  #14: cpu-graph-getting-started-cpp ...........................***Exception: Illegal  0.89 sec
        Start  15: cpu-graph-inference-int8-cpp
 15/227 Test  #15: cpu-graph-inference-int8-cpp ............................***Exception: Illegal  1.01 sec
        Start  16: cpu-graph-single-op-partition-cpp
 16/227 Test  #16: cpu-graph-single-op-partition-cpp .......................***Exception: Illegal  0.98 sec
        Start  17: cpu-graph-gated-mlp-cpp
 17/227 Test  #17: cpu-graph-gated-mlp-cpp .................................***Exception: Illegal  0.94 sec
        Start  18: cpu-graph-gated-mlp-int4-cpp
 18/227 Test  #18: cpu-graph-gated-mlp-int4-cpp ............................***Exception: Illegal  0.85 sec
        Start  19: cpu-graph-gated-mlp-wei-combined-cpp
 19/227 Test  #19: cpu-graph-gated-mlp-wei-combined-cpp ....................***Exception: Illegal  0.81 sec
        Start  20: cpu-graph-gqa-cpp
 20/227 Test  #20: cpu-graph-gqa-cpp .......................................***Exception: Illegal  0.83 sec
        Start  21: cpu-graph-gqa-training-cpp
 21/227 Test  #21: cpu-graph-gqa-training-cpp ..............................***Exception: Illegal  0.79 sec
        Start  22: cpu-graph-mqa-cpp
 22/227 Test  #22: cpu-graph-mqa-cpp .......................................***Exception: Illegal  0.85 sec
        Start  23: cpu-graph-sdpa-cpp
 23/227 Test  #23: cpu-graph-sdpa-cpp ......................................***Exception: Illegal  0.90 sec
        Start  24: cpu-graph-sdpa-bottom-right-causal-mask-cpp
 24/227 Test  #24: cpu-graph-sdpa-bottom-right-causal-mask-cpp .............***Exception: Illegal  0.82 sec
        Start  25: cpu-graph-sdpa-stacked-qkv-cpp
 25/227 Test  #25: cpu-graph-sdpa-stacked-qkv-cpp ..........................***Exception: Illegal  0.87 sec
        Start  26: cpu-matmul-perf-cpp
 26/227 Test  #26: cpu-matmul-perf-cpp .....................................***Exception: Illegal  0.87 sec
        Start  27: cpu-matmul-with-host-scalar-scale-cpp
 27/227 Test  #27: cpu-matmul-with-host-scalar-scale-cpp ...................***Exception: Illegal  0.88 sec
        Start  28: cpu-memory-format-propagation-cpp
 28/227 Test  #28: cpu-memory-format-propagation-cpp .......................***Exception: Illegal  0.77 sec
        Start  29: cpu-performance-profiling-cpp
 29/227 Test  #29: cpu-performance-profiling-cpp ...........................***Exception: Illegal  0.91 sec
        Start  30: cpu-primitives-augru-cpp
 30/227 Test  #30: cpu-primitives-augru-cpp ................................***Exception: Illegal  0.97 sec
        Start  31: cpu-primitives-batch-normalization-cpp
 31/227 Test  #31: cpu-primitives-batch-normalization-cpp ..................***Exception: Illegal  0.98 sec
        Start  32: cpu-primitives-binary-cpp
 32/227 Test  #32: cpu-primitives-binary-cpp ...............................***Exception: Illegal  0.77 sec
        Start  33: cpu-primitives-concat-cpp
 33/227 Test  #33: cpu-primitives-concat-cpp ...............................***Exception: Illegal  1.02 sec
        Start  34: cpu-primitives-convolution-cpp
 34/227 Test  #34: cpu-primitives-convolution-cpp ..........................***Exception: Illegal  0.98 sec
        Start  35: cpu-primitives-deconvolution-cpp
 35/227 Test  #35: cpu-primitives-deconvolution-cpp ........................***Exception: Illegal  0.88 sec
        Start  36: cpu-primitives-eltwise-cpp
 36/227 Test  #36: cpu-primitives-eltwise-cpp ..............................***Exception: Illegal  0.82 sec
        Start  37: cpu-primitives-group-normalization-cpp
 37/227 Test  #37: cpu-primitives-group-normalization-cpp ..................***Exception: Illegal  0.83 sec
        Start  38: cpu-primitives-inner-product-cpp
 38/227 Test  #38: cpu-primitives-inner-product-cpp ........................***Exception: Illegal  0.83 sec
        Start  39: cpu-primitives-layer-normalization-cpp
 39/227 Test  #39: cpu-primitives-layer-normalization-cpp ..................***Exception: Illegal  0.86 sec
        Start  40: cpu-primitives-lbr-gru-cpp
 40/227 Test  #40: cpu-primitives-lbr-gru-cpp ..............................***Exception: Illegal  0.84 sec
        Start  41: cpu-primitives-lrn-cpp
 41/227 Test  #41: cpu-primitives-lrn-cpp ..................................***Exception: Illegal  0.77 sec
        Start  42: cpu-primitives-lstm-cpp
 42/227 Test  #42: cpu-primitives-lstm-cpp .................................***Exception: Illegal  0.93 sec
        Start  43: cpu-primitives-matmul-cpp
 43/227 Test  #43: cpu-primitives-matmul-cpp ...............................***Exception: Illegal  0.92 sec
        Start  44: cpu-primitives-pooling-cpp
 44/227 Test  #44: cpu-primitives-pooling-cpp ..............................***Exception: Illegal  1.01 sec
        Start  45: cpu-primitives-prelu-cpp
 45/227 Test  #45: cpu-primitives-prelu-cpp ................................***Exception: Illegal  0.81 sec
        Start  46: cpu-primitives-reduction-cpp
 46/227 Test  #46: cpu-primitives-reduction-cpp ............................***Exception: Illegal  1.05 sec
        Start  47: cpu-primitives-reorder-cpp
 47/227 Test  #47: cpu-primitives-reorder-cpp ..............................***Exception: Illegal  0.90 sec
        Start  48: cpu-primitives-resampling-cpp
 48/227 Test  #48: cpu-primitives-resampling-cpp ...........................***Exception: Illegal  0.81 sec
        Start  49: cpu-primitives-shuffle-cpp
 49/227 Test  #49: cpu-primitives-shuffle-cpp ..............................***Exception: Illegal  0.80 sec
        Start  50: cpu-primitives-softmax-cpp
 50/227 Test  #50: cpu-primitives-softmax-cpp ..............................***Exception: Illegal  1.05 sec
        Start  51: cpu-primitives-sum-cpp
 51/227 Test  #51: cpu-primitives-sum-cpp ..................................***Exception: Illegal  0.95 sec
        Start  52: cpu-primitives-vanilla-rnn-cpp
 52/227 Test  #52: cpu-primitives-vanilla-rnn-cpp ..........................***Exception: Illegal  1.06 sec
        Start  53: cpu-rnn-training-f32-cpp
 53/227 Test  #53: cpu-rnn-training-f32-cpp ................................***Exception: Illegal  0.87 sec
        Start  54: cpu-tutorials-matmul-matmul-quantization-cpp
 54/227 Test  #54: cpu-tutorials-matmul-matmul-quantization-cpp ............***Exception: Illegal  0.94 sec
        Start  55: cpu-tutorials-matmul-sgemm-and-matmul-cpp
 55/227 Test  #55: cpu-tutorials-matmul-sgemm-and-matmul-cpp ...............***Exception: Illegal  0.90 sec
        Start  56: cpu-tutorials-matmul-inference-int8-matmul-cpp
 56/227 Test  #56: cpu-tutorials-matmul-inference-int8-matmul-cpp ..........***Exception: Illegal  0.92 sec
        Start  57: cpu-tutorials-matmul-weights-decompression-matmul-cpp
 57/227 Test  #57: cpu-tutorials-matmul-weights-decompression-matmul-cpp ...***Exception: Illegal  0.85 sec
        Start  58: api-c
 58/227 Test  #58: api-c ...................................................***Exception: Illegal  1.07 sec
        Start  59: test_c_symbols-c
 59/227 Test  #59: test_c_symbols-c ........................................***Exception: Illegal  0.94 sec
        Start  60: test_batch_normalization
 60/227 Test  #60: test_batch_normalization ................................***Exception: Illegal  1.05 sec
        Start  61: test_binary
 61/227 Test  #61: test_binary .............................................***Exception: Illegal  0.87 sec
        Start  62: test_concat
 62/227 Test  #62: test_concat .............................................***Exception: Illegal  0.93 sec
        Start  63: test_concurrency
 63/227 Test  #63: test_concurrency ........................................***Exception: Illegal  0.90 sec
        Start  64: test_convolution_backward_data_f32
 64/227 Test  #64: test_convolution_backward_data_f32 ......................***Exception: Illegal  0.99 sec
        Start  65: test_convolution_backward_weights_f32
 65/227 Test  #65: test_convolution_backward_weights_f32 ...................***Exception: Illegal  0.82 sec
        Start  66: test_convolution_eltwise_forward_f32
 66/227 Test  #66: test_convolution_eltwise_forward_f32 ....................***Exception: Illegal  0.75 sec
        Start  67: test_convolution_eltwise_forward_x8s8f32s32
 67/227 Test  #67: test_convolution_eltwise_forward_x8s8f32s32 .............***Exception: Illegal  0.82 sec
        Start  68: test_convolution_forward_f32
 68/227 Test  #68: test_convolution_forward_f32 ............................***Exception: Illegal  1.29 sec
        Start  69: test_convolution_forward_u8s8fp
 69/227 Test  #69: test_convolution_forward_u8s8fp .........................***Exception: Illegal  1.01 sec
        Start  70: test_convolution_forward_u8s8s32
 70/227 Test  #70: test_convolution_forward_u8s8s32 ........................***Exception: Illegal  0.92 sec
        Start  71: test_cross_engine_reorder
 71/227 Test  #71: test_cross_engine_reorder ...............................***Exception: Illegal  1.14 sec
        Start  72: test_deconvolution
 72/227 Test  #72: test_deconvolution ......................................***Exception: Illegal  1.00 sec
        Start  73: test_eltwise
 73/227 Test  #73: test_eltwise ............................................***Exception: Illegal  1.00 sec
        Start  74: test_group_normalization
 74/227 Test  #74: test_group_normalization ................................***Exception: Illegal  0.81 sec
        Start  75: test_iface_attr
 75/227 Test  #75: test_iface_attr .........................................***Exception: Illegal  0.93 sec
        Start  76: test_iface_attr_quantization
 76/227 Test  #76: test_iface_attr_quantization ............................***Exception: Illegal  0.90 sec
        Start  77: test_iface_binary_bcast
 77/227 Test  #77: test_iface_binary_bcast .................................***Exception: Illegal  0.95 sec
        Start  78: test_iface_handle
 78/227 Test  #78: test_iface_handle .......................................***Exception: Illegal  0.82 sec
        Start  79: test_iface_pd
 79/227 Test  #79: test_iface_pd ...........................................***Exception: Illegal  0.82 sec
        Start  80: test_iface_pd_iter
 80/227 Test  #80: test_iface_pd_iter ......................................***Exception: Illegal  0.89 sec
        Start  81: test_iface_primitive_cache
 81/227 Test  #81: test_iface_primitive_cache ..............................***Exception: Illegal  0.96 sec
        Start  82: test_iface_runtime_dims
 82/227 Test  #82: test_iface_runtime_dims .................................***Exception: Illegal  0.83 sec
        Start  83: test_iface_sparse
 83/227 Test  #83: test_iface_sparse .......................................***Exception: Illegal  0.88 sec
        Start  84: test_iface_weights_format
 84/227 Test  #84: test_iface_weights_format ...............................***Exception: Illegal  1.02 sec
        Start  85: test_iface_wino_convolution
 85/227 Test  #85: test_iface_wino_convolution .............................***Exception: Illegal  1.03 sec
        Start  86: test_inner_product_backward_data
 86/227 Test  #86: test_inner_product_backward_data ........................***Exception: Illegal  0.81 sec
        Start  87: test_inner_product_backward_weights
 87/227 Test  #87: test_inner_product_backward_weights .....................***Exception: Illegal  0.80 sec
        Start  88: test_inner_product_forward
 88/227 Test  #88: test_inner_product_forward ..............................***Exception: Illegal  0.92 sec
        Start  89: test_layer_normalization
 89/227 Test  #89: test_layer_normalization ................................***Exception: Illegal  0.68 sec
        Start  90: test_lrn
 90/227 Test  #90: test_lrn ................................................***Exception: Illegal  0.61 sec
        Start  91: test_matmul
 91/227 Test  #91: test_matmul .............................................***Exception: Illegal  0.98 sec
        Start  92: test_persistent_cache_api
 92/227 Test  #92: test_persistent_cache_api ...............................***Exception: Illegal  0.74 sec
        Start  93: test_pooling_backward
 93/227 Test  #93: test_pooling_backward ...................................***Exception: Illegal  0.96 sec
        Start  94: test_pooling_forward
 94/227 Test  #94: test_pooling_forward ....................................***Exception: Illegal  0.85 sec
        Start  95: test_prelu
 95/227 Test  #95: test_prelu ..............................................***Exception: Illegal  0.77 sec
        Start  96: test_primitive_cache_mt
 96/227 Test  #96: test_primitive_cache_mt .................................***Exception: Illegal  0.83 sec
        Start  97: test_reduction
 97/227 Test  #97: test_reduction ..........................................***Exception: Illegal  1.06 sec
        Start  98: test_reorder
 98/227 Test  #98: test_reorder ............................................***Exception: Illegal  0.93 sec
        Start  99: test_resampling
 99/227 Test  #99: test_resampling .........................................***Exception: Illegal  0.90 sec
        Start 100: test_rnn_forward
100/227 Test #100: test_rnn_forward ........................................***Exception: Illegal  0.78 sec
        Start 101: test_shuffle
101/227 Test #101: test_shuffle ............................................***Exception: Illegal  0.73 sec
        Start 102: test_softmax
102/227 Test #102: test_softmax ............................................***Exception: Illegal  0.94 sec
        Start 103: test_sum
103/227 Test #103: test_sum ................................................***Exception: Illegal  0.74 sec
        Start 104: test_convolution_format_any
104/227 Test #104: test_convolution_format_any .............................***Exception: Illegal  1.02 sec
        Start 105: test_gemm_bf16bf16bf16
105/227 Test #105: test_gemm_bf16bf16bf16 ..................................***Exception: Illegal  0.95 sec
        Start 106: test_gemm_bf16bf16f32
106/227 Test #106: test_gemm_bf16bf16f32 ...................................***Exception: Illegal  1.14 sec
        Start 107: test_gemm_f16
107/227 Test #107: test_gemm_f16 ...........................................***Exception: Illegal  0.97 sec
        Start 108: test_gemm_f16f16f32
108/227 Test #108: test_gemm_f16f16f32 .....................................***Exception: Illegal  1.07 sec
        Start 109: test_gemm_f32
109/227 Test #109: test_gemm_f32 ...........................................***Exception: Illegal  0.83 sec
        Start 110: test_gemm_s8s8s32
110/227 Test #110: test_gemm_s8s8s32 .......................................***Exception: Illegal  1.17 sec
        Start 111: test_gemm_s8u8s32
111/227 Test #111: test_gemm_s8u8s32 .......................................***Exception: Illegal  0.86 sec
        Start 112: test_gemm_u8s8s32
112/227 Test #112: test_gemm_u8s8s32 .......................................***Exception: Illegal  1.00 sec
        Start 113: test_gemm_u8u8s32
113/227 Test #113: test_gemm_u8u8s32 .......................................***Exception: Illegal  1.14 sec
        Start 114: test_global_scratchpad
114/227 Test #114: test_global_scratchpad ..................................***Exception: Illegal  1.23 sec
        Start 115: test_api
115/227 Test #115: test_api ................................................***Exception: Illegal  1.18 sec
        Start 116: test_internals_env_vars_dnnl
116/227 Test #116: test_internals_env_vars_dnnl ............................***Exception: Illegal  0.87 sec
        Start 117: test_internals_env_vars_onednn
117/227 Test #117: test_internals_env_vars_onednn ..........................***Exception: Illegal  0.91 sec
        Start 118: test_internals
118/227 Test #118: test_internals ..........................................***Exception: Illegal  0.94 sec
        Start 119: test_regression
119/227 Test #119: test_regression .........................................***Exception: Illegal  0.92 sec
        Start 120: test_graph_c_api_add_op_cpu
120/227 Test #120: test_graph_c_api_add_op_cpu .............................***Exception: Illegal  0.96 sec
        Start 121: test_graph_c_api_constant_cache_cpu
121/227 Test #121: test_graph_c_api_constant_cache_cpu .....................***Exception: Illegal  1.06 sec
        Start 122: test_graph_c_api_filter_cpu
122/227 Test #122: test_graph_c_api_filter_cpu .............................***Exception: Illegal  0.93 sec
        Start 123: test_graph_c_api_graph_cpu
123/227 Test #123: test_graph_c_api_graph_cpu ..............................***Exception: Illegal  1.00 sec
        Start 124: test_graph_c_api_logical_tensor_cpu
124/227 Test #124: test_graph_c_api_logical_tensor_cpu .....................***Exception: Illegal  0.92 sec
        Start 125: test_graph_c_api_op_cpu
125/227 Test #125: test_graph_c_api_op_cpu .................................***Exception: Illegal  1.00 sec
        Start 126: test_graph_cpp_api_constant_cache_cpu
126/227 Test #126: test_graph_cpp_api_constant_cache_cpu ...................***Exception: Illegal  0.86 sec
        Start 127: test_graph_cpp_api_engine_cpu
127/227 Test #127: test_graph_cpp_api_engine_cpu ...........................***Exception: Illegal  0.98 sec
        Start 128: test_graph_cpp_api_graph_cpu
128/227 Test #128: test_graph_cpp_api_graph_cpu ............................***Exception: Illegal  0.89 sec
        Start 129: test_graph_cpp_api_logical_tensor_cpu
129/227 Test #129: test_graph_cpp_api_logical_tensor_cpu ...................***Exception: Illegal  0.85 sec
        Start 130: test_graph_cpp_api_op_cpu
130/227 Test #130: test_graph_cpp_api_op_cpu ...............................***Exception: Illegal  0.86 sec
        Start 131: test_graph_cpp_api_tensor_cpu
131/227 Test #131: test_graph_cpp_api_tensor_cpu ...........................***Exception: Illegal  1.00 sec
        Start 132: test_graph_c_api_compile_cpu
132/227 Test #132: test_graph_c_api_compile_cpu ............................***Exception: Illegal  0.89 sec
        Start 133: test_graph_c_api_compile_parametrized_cpu
133/227 Test #133: test_graph_c_api_compile_parametrized_cpu ...............***Exception: Illegal  1.03 sec
        Start 134: test_graph_cpp_api_compile_cpu
134/227 Test #134: test_graph_cpp_api_compile_cpu ..........................***Exception: Illegal  0.94 sec
        Start 135: test_graph_cpp_api_partition_cpu
135/227 Test #135: test_graph_cpp_api_partition_cpu ........................***Exception: Illegal  1.08 sec
        Start 136: test_graph_unit_interface_allocator_cpu
136/227 Test #136: test_graph_unit_interface_allocator_cpu .................***Exception: Illegal  1.19 sec
        Start 137: test_graph_unit_interface_compiled_partition_cpu
137/227 Test #137: test_graph_unit_interface_compiled_partition_cpu ........***Exception: Illegal  0.93 sec
        Start 138: test_graph_unit_interface_partition_hashing_cpu
138/227 Test #138: test_graph_unit_interface_partition_hashing_cpu .........***Exception: Illegal  0.78 sec
        Start 139: test_graph_unit_interface_tensor_cpu
139/227 Test #139: test_graph_unit_interface_tensor_cpu ....................***Exception: Illegal  0.78 sec
        Start 140: test_graph_unit_interface_backend_cpu
140/227 Test #140: test_graph_unit_interface_backend_cpu ...................***Exception: Illegal  0.78 sec
        Start 141: test_graph_unit_interface_graph_cpu
141/227 Test #141: test_graph_unit_interface_graph_cpu .....................***Exception: Illegal  0.81 sec
        Start 142: test_graph_unit_interface_logical_tensor_cpu
142/227 Test #142: test_graph_unit_interface_logical_tensor_cpu ............***Exception: Illegal  0.74 sec
        Start 143: test_graph_unit_interface_op_cpu
143/227 Test #143: test_graph_unit_interface_op_cpu ........................***Exception: Illegal  0.85 sec
        Start 144: test_graph_unit_interface_op_def_constraint_cpu
144/227 Test #144: test_graph_unit_interface_op_def_constraint_cpu .........***Exception: Illegal  0.72 sec
        Start 145: test_graph_unit_interface_op_schema_cpu
145/227 Test #145: test_graph_unit_interface_op_schema_cpu .................***Exception: Illegal  0.79 sec
        Start 146: test_graph_unit_interface_shape_infer_cpu
146/227 Test #146: test_graph_unit_interface_shape_infer_cpu ...............***Exception: Illegal  0.96 sec
        Start 147: test_graph_unit_interface_value_cpu
147/227 Test #147: test_graph_unit_interface_value_cpu .....................***Exception: Illegal  0.88 sec
        Start 148: test_graph_unit_fake_cpu
148/227 Test #148: test_graph_unit_fake_cpu ................................***Exception: Illegal  0.85 sec
        Start 149: test_graph_unit_dnnl_dnnl_infer_shape_cpu
149/227 Test #149: test_graph_unit_dnnl_dnnl_infer_shape_cpu ...............***Exception: Illegal  0.67 sec
        Start 150: test_graph_unit_dnnl_dnnl_utils_cpu
150/227 Test #150: test_graph_unit_dnnl_dnnl_utils_cpu .....................***Exception: Illegal  0.88 sec
        Start 151: test_graph_unit_dnnl_fusion_info_cpu
151/227 Test #151: test_graph_unit_dnnl_fusion_info_cpu ....................***Exception: Illegal  0.89 sec
        Start 152: test_graph_unit_dnnl_graph_cpu
152/227 Test #152: test_graph_unit_dnnl_graph_cpu ..........................***Exception: Illegal  0.99 sec
        Start 153: test_graph_unit_dnnl_insert_ops_cpu
153/227 Test #153: test_graph_unit_dnnl_insert_ops_cpu .....................***Exception: Illegal  0.77 sec
        Start 154: test_graph_unit_dnnl_internal_attrs_cpu
154/227 Test #154: test_graph_unit_dnnl_internal_attrs_cpu .................***Exception: Illegal  1.12 sec
        Start 155: test_graph_unit_dnnl_layout_id_cpu
155/227 Test #155: test_graph_unit_dnnl_layout_id_cpu ......................***Exception: Illegal  1.00 sec
        Start 156: test_graph_unit_dnnl_layout_propagator_cpu
156/227 Test #156: test_graph_unit_dnnl_layout_propagator_cpu ..............***Exception: Illegal  0.81 sec
        Start 157: test_graph_unit_dnnl_logical_tensor_cpu
157/227 Test #157: test_graph_unit_dnnl_logical_tensor_cpu .................***Exception: Illegal  0.97 sec
        Start 158: test_graph_unit_dnnl_memory_planning_cpu
158/227 Test #158: test_graph_unit_dnnl_memory_planning_cpu ................***Exception: Illegal  0.99 sec
        Start 159: test_graph_unit_dnnl_op_schema_cpu
159/227 Test #159: test_graph_unit_dnnl_op_schema_cpu ......................***Exception: Illegal  0.95 sec
        Start 160: test_graph_unit_dnnl_partition_cpu
160/227 Test #160: test_graph_unit_dnnl_partition_cpu ......................***Exception: Illegal  0.80 sec
        Start 161: test_graph_unit_dnnl_thread_local_cache_cpu
161/227 Test #161: test_graph_unit_dnnl_thread_local_cache_cpu .............***Exception: Illegal  0.71 sec
        Start 162: test_graph_unit_dnnl_batch_norm_cpu
162/227 Test #162: test_graph_unit_dnnl_batch_norm_cpu .....................***Exception: Illegal  0.78 sec
        Start 163: test_graph_unit_dnnl_binary_op_cpu
163/227 Test #163: test_graph_unit_dnnl_binary_op_cpu ......................***Exception: Illegal  0.84 sec
        Start 164: test_graph_unit_dnnl_bmm_cpu
164/227 Test #164: test_graph_unit_dnnl_bmm_cpu ............................***Exception: Illegal  0.90 sec
        Start 165: test_graph_unit_dnnl_common_cpu
165/227 Test #165: test_graph_unit_dnnl_common_cpu .........................***Exception: Illegal  0.82 sec
        Start 166: test_graph_unit_dnnl_compiled_partition_cpu
166/227 Test #166: test_graph_unit_dnnl_compiled_partition_cpu .............***Exception: Illegal  0.89 sec
        Start 167: test_graph_unit_dnnl_concat_cpu
167/227 Test #167: test_graph_unit_dnnl_concat_cpu .........................***Exception: Illegal  0.79 sec
        Start 168: test_graph_unit_dnnl_constant_cache_cpu
168/227 Test #168: test_graph_unit_dnnl_constant_cache_cpu .................***Exception: Illegal  0.79 sec
        Start 169: test_graph_unit_dnnl_convolution_cpu
169/227 Test #169: test_graph_unit_dnnl_convolution_cpu ....................***Exception: Illegal  0.77 sec
        Start 170: test_graph_unit_dnnl_convtranspose_cpu
170/227 Test #170: test_graph_unit_dnnl_convtranspose_cpu ..................***Exception: Illegal  0.83 sec
        Start 171: test_graph_unit_dnnl_dequantize_cpu
171/227 Test #171: test_graph_unit_dnnl_dequantize_cpu .....................***Exception: Illegal  0.77 sec
        Start 172: test_graph_unit_dnnl_eltwise_cpu
172/227 Test #172: test_graph_unit_dnnl_eltwise_cpu ........................***Exception: Illegal  0.88 sec
        Start 173: test_graph_unit_dnnl_group_norm_cpu
173/227 Test #173: test_graph_unit_dnnl_group_norm_cpu .....................***Exception: Illegal  0.94 sec
        Start 174: test_graph_unit_dnnl_interpolate_cpu
174/227 Test #174: test_graph_unit_dnnl_interpolate_cpu ....................***Exception: Illegal  1.10 sec
        Start 175: test_graph_unit_dnnl_large_partition_cpu
175/227 Test #175: test_graph_unit_dnnl_large_partition_cpu ................***Exception: Illegal  0.96 sec
        Start 176: test_graph_unit_dnnl_layer_norm_cpu
176/227 Test #176: test_graph_unit_dnnl_layer_norm_cpu .....................***Exception: Illegal  1.06 sec
        Start 177: test_graph_unit_dnnl_matmul_cpu
177/227 Test #177: test_graph_unit_dnnl_matmul_cpu .........................***Exception: Illegal  0.99 sec
        Start 178: test_graph_unit_dnnl_mqa_decomp_cpu
178/227 Test #178: test_graph_unit_dnnl_mqa_decomp_cpu .....................***Exception: Illegal  1.24 sec
        Start 179: test_graph_unit_dnnl_op_executable_cpu
179/227 Test #179: test_graph_unit_dnnl_op_executable_cpu ..................***Exception: Illegal  1.31 sec
        Start 180: test_graph_unit_dnnl_pass_cpu
180/227 Test #180: test_graph_unit_dnnl_pass_cpu ...........................***Exception: Illegal  1.10 sec
        Start 181: test_graph_unit_dnnl_pool_cpu
181/227 Test #181: test_graph_unit_dnnl_pool_cpu ...........................***Exception: Illegal  1.34 sec
        Start 182: test_graph_unit_dnnl_prelu_cpu
182/227 Test #182: test_graph_unit_dnnl_prelu_cpu ..........................***Exception: Illegal  1.13 sec
        Start 183: test_graph_unit_dnnl_quantize_cpu
183/227 Test #183: test_graph_unit_dnnl_quantize_cpu .......................***Exception: Illegal  1.08 sec
        Start 184: test_graph_unit_dnnl_reduce_cpu
184/227 Test #184: test_graph_unit_dnnl_reduce_cpu .........................***Exception: Illegal  0.90 sec
        Start 185: test_graph_unit_dnnl_reorder_cpu
185/227 Test #185: test_graph_unit_dnnl_reorder_cpu ........................***Exception: Illegal  1.02 sec
        Start 186: test_graph_unit_dnnl_scratchpad_cpu
186/227 Test #186: test_graph_unit_dnnl_scratchpad_cpu .....................***Exception: Illegal  1.00 sec
        Start 187: test_graph_unit_dnnl_sdp_decomp_cpu
187/227 Test #187: test_graph_unit_dnnl_sdp_decomp_cpu .....................***Exception: Illegal  0.95 sec
        Start 188: test_graph_unit_dnnl_select_cpu
188/227 Test #188: test_graph_unit_dnnl_select_cpu .........................***Exception: Illegal  0.86 sec
        Start 189: test_graph_unit_dnnl_softmax_cpu
189/227 Test #189: test_graph_unit_dnnl_softmax_cpu ........................***Exception: Illegal  0.92 sec
        Start 190: test_graph_unit_dnnl_subgraph_pass_cpu
190/227 Test #190: test_graph_unit_dnnl_subgraph_pass_cpu ..................***Exception: Illegal  0.92 sec
        Start 191: test_graph_unit_dnnl_typecast_cpu
191/227 Test #191: test_graph_unit_dnnl_typecast_cpu .......................***Exception: Illegal  0.85 sec
        Start 192: test_graph_unit_utils_allocator_cpu
192/227 Test #192: test_graph_unit_utils_allocator_cpu .....................***Exception: Illegal  0.89 sec
        Start 193: test_graph_unit_utils_attribute_value_cpu
193/227 Test #193: test_graph_unit_utils_attribute_value_cpu ...............***Exception: Illegal  0.99 sec
        Start 194: test_graph_unit_utils_debug_cpu
194/227 Test #194: test_graph_unit_utils_debug_cpu .........................***Exception: Illegal  0.90 sec
        Start 195: test_graph_unit_utils_json_cpu
195/227 Test #195: test_graph_unit_utils_json_cpu ..........................***Exception: Illegal  0.92 sec
        Start 196: test_graph_unit_utils_pattern_matcher_cpu
196/227 Test #196: test_graph_unit_utils_pattern_matcher_cpu ...............***Exception: Illegal  0.89 sec
        Start 197: test_graph_unit_utils_utils_cpu
197/227 Test #197: test_graph_unit_utils_utils_cpu .........................***Exception: Illegal  0.84 sec
        Start 198: test_benchdnn_modeC_binary_ci_cpu
198/227 Test #198: test_benchdnn_modeC_binary_ci_cpu .......................***Exception: Illegal  0.88 sec
        Start 199: test_benchdnn_modeC_binary_different_dt_ci_cpu
199/227 Test #199: test_benchdnn_modeC_binary_different_dt_ci_cpu ..........***Exception: Illegal  1.07 sec
        Start 200: test_benchdnn_modeC_bnorm_ci_cpu
200/227 Test #200: test_benchdnn_modeC_bnorm_ci_cpu ........................***Exception: Illegal  0.91 sec
        Start 201: test_benchdnn_modeC_brgemm_ci_cpu
201/227 Test #201: test_benchdnn_modeC_brgemm_ci_cpu .......................***Exception: Illegal  0.75 sec
        Start 202: test_benchdnn_modeC_concat_ci_cpu
202/227 Test #202: test_benchdnn_modeC_concat_ci_cpu .......................***Exception: Illegal  0.88 sec
        Start 203: test_benchdnn_modeC_conv_ci_cpu
203/227 Test #203: test_benchdnn_modeC_conv_ci_cpu .........................***Exception: Illegal  0.99 sec
        Start 204: test_benchdnn_modeC_deconv_ci_cpu
204/227 Test #204: test_benchdnn_modeC_deconv_ci_cpu .......................***Exception: Illegal  1.03 sec
        Start 205: test_benchdnn_modeC_eltwise_ci_cpu
205/227 Test #205: test_benchdnn_modeC_eltwise_ci_cpu ......................***Exception: Illegal  1.07 sec
        Start 206: test_benchdnn_modeC_gnorm_ci_cpu
206/227 Test #206: test_benchdnn_modeC_gnorm_ci_cpu ........................***Exception: Illegal  1.19 sec
        Start 207: test_benchdnn_modeC_graph_ci_cpu
207/227 Test #207: test_benchdnn_modeC_graph_ci_cpu ........................***Exception: Illegal  1.32 sec
        Start 208: test_benchdnn_modeC_ip_ci_cpu
208/227 Test #208: test_benchdnn_modeC_ip_ci_cpu ...........................***Exception: Illegal  1.23 sec
        Start 209: test_benchdnn_modeC_lnorm_ci_cpu
209/227 Test #209: test_benchdnn_modeC_lnorm_ci_cpu ........................***Exception: Illegal  1.25 sec
        Start 210: test_benchdnn_modeC_lrn_ci_cpu
210/227 Test #210: test_benchdnn_modeC_lrn_ci_cpu ..........................***Exception: Illegal  1.12 sec
        Start 211: test_benchdnn_modeC_matmul_ci_cpu
211/227 Test #211: test_benchdnn_modeC_matmul_ci_cpu .......................***Exception: Illegal  1.28 sec
        Start 212: test_benchdnn_modeC_matmul_sparse_ci_cpu
212/227 Test #212: test_benchdnn_modeC_matmul_sparse_ci_cpu ................***Exception: Illegal  1.16 sec
        Start 213: test_benchdnn_modeC_pool_ci_cpu
213/227 Test #213: test_benchdnn_modeC_pool_ci_cpu .........................***Exception: Illegal  1.30 sec
        Start 214: test_benchdnn_modeC_prelu_ci_cpu
214/227 Test #214: test_benchdnn_modeC_prelu_ci_cpu ........................***Exception: Illegal  1.19 sec
        Start 215: test_benchdnn_modeC_reduction_ci_cpu
215/227 Test #215: test_benchdnn_modeC_reduction_ci_cpu ....................***Exception: Illegal  1.14 sec
        Start 216: test_benchdnn_modeC_reorder_ci_cpu
216/227 Test #216: test_benchdnn_modeC_reorder_ci_cpu ......................***Exception: Illegal  1.11 sec
        Start 217: test_benchdnn_modeC_resampling_ci_cpu
217/227 Test #217: test_benchdnn_modeC_resampling_ci_cpu ...................***Exception: Illegal  1.16 sec
        Start 218: test_benchdnn_modeC_augru_ci_cpu
218/227 Test #218: test_benchdnn_modeC_augru_ci_cpu ........................***Exception: Illegal  1.04 sec
        Start 219: test_benchdnn_modeC_gru_ci_cpu
219/227 Test #219: test_benchdnn_modeC_gru_ci_cpu ..........................***Exception: Illegal  1.15 sec
        Start 220: test_benchdnn_modeC_lstm_ci_cpu
220/227 Test #220: test_benchdnn_modeC_lstm_ci_cpu .........................***Exception: Illegal  1.20 sec
        Start 221: test_benchdnn_modeC_rnn_ci_cpu
221/227 Test #221: test_benchdnn_modeC_rnn_ci_cpu ..........................***Exception: Illegal  1.20 sec
        Start 222: test_benchdnn_modeC_self_ci_cpu
222/227 Test #222: test_benchdnn_modeC_self_ci_cpu .........................***Exception: Illegal  1.39 sec
        Start 223: test_benchdnn_modeC_shuffle_ci_cpu
223/227 Test #223: test_benchdnn_modeC_shuffle_ci_cpu ......................***Exception: Illegal  1.19 sec
        Start 224: test_benchdnn_modeC_softmax_ci_cpu
224/227 Test #224: test_benchdnn_modeC_softmax_ci_cpu ......................***Exception: Illegal  1.07 sec
        Start 225: test_benchdnn_modeC_sum_ci_cpu
225/227 Test #225: test_benchdnn_modeC_sum_ci_cpu ..........................***Exception: Illegal  0.93 sec
        Start 226: test_benchdnn_modeC_zeropad_ci_cpu
226/227 Test #226: test_benchdnn_modeC_zeropad_ci_cpu ......................***Exception: Illegal  1.01 sec
        Start 227: noexcept-cpp
227/227 Test #227: noexcept-cpp ............................................   Passed    0.01 sec

0% tests passed, 226 tests failed out of 227

Total Test time (real) = 213.90 sec

The following tests FAILED:
	  1 - cpu-bnorm-u8-via-binary-postops-cpp (ILLEGAL)
	  2 - cpu-cnn-inference-f32-c (ILLEGAL)
	  3 - cpu-cnn-inference-f32-cpp (ILLEGAL)
	  4 - cpu-cnn-inference-int8-cpp (ILLEGAL)
	  5 - cpu-cnn-training-bf16-cpp (ILLEGAL)
	  6 - cpu-cnn-training-f32-cpp (ILLEGAL)
	  7 - cpu-cnn-training-f32-c (ILLEGAL)
	  8 - cpu-matmul-coo-cpp (ILLEGAL)
	  9 - cpu-matmul-csr-cpp (ILLEGAL)
	 10 - cpu-matmul-weights-compression-cpp (ILLEGAL)
	 11 - cpu-rnn-inference-f32-cpp (ILLEGAL)
	 12 - cpu-rnn-inference-int8-cpp (ILLEGAL)
	 13 - cpu-getting-started-cpp (ILLEGAL)
	 14 - cpu-graph-getting-started-cpp (ILLEGAL)
	 15 - cpu-graph-inference-int8-cpp (ILLEGAL)
	 16 - cpu-graph-single-op-partition-cpp (ILLEGAL)
	 17 - cpu-graph-gated-mlp-cpp (ILLEGAL)
	 18 - cpu-graph-gated-mlp-int4-cpp (ILLEGAL)
	 19 - cpu-graph-gated-mlp-wei-combined-cpp (ILLEGAL)
	 20 - cpu-graph-gqa-cpp (ILLEGAL)
	 21 - cpu-graph-gqa-training-cpp (ILLEGAL)
	 22 - cpu-graph-mqa-cpp (ILLEGAL)
	 23 - cpu-graph-sdpa-cpp (ILLEGAL)
	 24 - cpu-graph-sdpa-bottom-right-causal-mask-cpp (ILLEGAL)
	 25 - cpu-graph-sdpa-stacked-qkv-cpp (ILLEGAL)
	 26 - cpu-matmul-perf-cpp (ILLEGAL)
	 27 - cpu-matmul-with-host-scalar-scale-cpp (ILLEGAL)
	 28 - cpu-memory-format-propagation-cpp (ILLEGAL)
	 29 - cpu-performance-profiling-cpp (ILLEGAL)
	 30 - cpu-primitives-augru-cpp (ILLEGAL)
	 31 - cpu-primitives-batch-normalization-cpp (ILLEGAL)
	 32 - cpu-primitives-binary-cpp (ILLEGAL)
	 33 - cpu-primitives-concat-cpp (ILLEGAL)
	 34 - cpu-primitives-convolution-cpp (ILLEGAL)
	 35 - cpu-primitives-deconvolution-cpp (ILLEGAL)
	 36 - cpu-primitives-eltwise-cpp (ILLEGAL)
	 37 - cpu-primitives-group-normalization-cpp (ILLEGAL)
	 38 - cpu-primitives-inner-product-cpp (ILLEGAL)
	 39 - cpu-primitives-layer-normalization-cpp (ILLEGAL)
	 40 - cpu-primitives-lbr-gru-cpp (ILLEGAL)
	 41 - cpu-primitives-lrn-cpp (ILLEGAL)
	 42 - cpu-primitives-lstm-cpp (ILLEGAL)
	 43 - cpu-primitives-matmul-cpp (ILLEGAL)
	 44 - cpu-primitives-pooling-cpp (ILLEGAL)
	 45 - cpu-primitives-prelu-cpp (ILLEGAL)
	 46 - cpu-primitives-reduction-cpp (ILLEGAL)
	 47 - cpu-primitives-reorder-cpp (ILLEGAL)
	 48 - cpu-primitives-resampling-cpp (ILLEGAL)
	 49 - cpu-primitives-shuffle-cpp (ILLEGAL)
	 50 - cpu-primitives-softmax-cpp (ILLEGAL)
	 51 - cpu-primitives-sum-cpp (ILLEGAL)
	 52 - cpu-primitives-vanilla-rnn-cpp (ILLEGAL)
	 53 - cpu-rnn-training-f32-cpp (ILLEGAL)
	 54 - cpu-tutorials-matmul-matmul-quantization-cpp (ILLEGAL)
	 55 - cpu-tutorials-matmul-sgemm-and-matmul-cpp (ILLEGAL)
	 56 - cpu-tutorials-matmul-inference-int8-matmul-cpp (ILLEGAL)
	 57 - cpu-tutorials-matmul-weights-decompression-matmul-cpp (ILLEGAL)
	 58 - api-c (ILLEGAL)
	 59 - test_c_symbols-c (ILLEGAL)
	 60 - test_batch_normalization (ILLEGAL)
	 61 - test_binary (ILLEGAL)
	 62 - test_concat (ILLEGAL)
	 63 - test_concurrency (ILLEGAL)
	 64 - test_convolution_backward_data_f32 (ILLEGAL)
	 65 - test_convolution_backward_weights_f32 (ILLEGAL)
	 66 - test_convolution_eltwise_forward_f32 (ILLEGAL)
	 67 - test_convolution_eltwise_forward_x8s8f32s32 (ILLEGAL)
	 68 - test_convolution_forward_f32 (ILLEGAL)
	 69 - test_convolution_forward_u8s8fp (ILLEGAL)
	 70 - test_convolution_forward_u8s8s32 (ILLEGAL)
	 71 - test_cross_engine_reorder (ILLEGAL)
	 72 - test_deconvolution (ILLEGAL)
	 73 - test_eltwise (ILLEGAL)
	 74 - test_group_normalization (ILLEGAL)
	 75 - test_iface_attr (ILLEGAL)
	 76 - test_iface_attr_quantization (ILLEGAL)
	 77 - test_iface_binary_bcast (ILLEGAL)
	 78 - test_iface_handle (ILLEGAL)
	 79 - test_iface_pd (ILLEGAL)
	 80 - test_iface_pd_iter (ILLEGAL)
	 81 - test_iface_primitive_cache (ILLEGAL)
	 82 - test_iface_runtime_dims (ILLEGAL)
	 83 - test_iface_sparse (ILLEGAL)
	 84 - test_iface_weights_format (ILLEGAL)
	 85 - test_iface_wino_convolution (ILLEGAL)
	 86 - test_inner_product_backward_data (ILLEGAL)
	 87 - test_inner_product_backward_weights (ILLEGAL)
	 88 - test_inner_product_forward (ILLEGAL)
	 89 - test_layer_normalization (ILLEGAL)
	 90 - test_lrn (ILLEGAL)
	 91 - test_matmul (ILLEGAL)
	 92 - test_persistent_cache_api (ILLEGAL)
	 93 - test_pooling_backward (ILLEGAL)
	 94 - test_pooling_forward (ILLEGAL)
	 95 - test_prelu (ILLEGAL)
	 96 - test_primitive_cache_mt (ILLEGAL)
	 97 - test_reduction (ILLEGAL)
	 98 - test_reorder (ILLEGAL)
	 99 - test_resampling (ILLEGAL)
	100 - test_rnn_forward (ILLEGAL)
	101 - test_shuffle (ILLEGAL)
	102 - test_softmax (ILLEGAL)
	103 - test_sum (ILLEGAL)
	104 - test_convolution_format_any (ILLEGAL)
	105 - test_gemm_bf16bf16bf16 (ILLEGAL)
	106 - test_gemm_bf16bf16f32 (ILLEGAL)
	107 - test_gemm_f16 (ILLEGAL)
	108 - test_gemm_f16f16f32 (ILLEGAL)
	109 - test_gemm_f32 (ILLEGAL)
	110 - test_gemm_s8s8s32 (ILLEGAL)
	111 - test_gemm_s8u8s32 (ILLEGAL)
	112 - test_gemm_u8s8s32 (ILLEGAL)
	113 - test_gemm_u8u8s32 (ILLEGAL)
	114 - test_global_scratchpad (ILLEGAL)
	115 - test_api (ILLEGAL)
	116 - test_internals_env_vars_dnnl (ILLEGAL)
	117 - test_internals_env_vars_onednn (ILLEGAL)
	118 - test_internals (ILLEGAL)
	119 - test_regression (ILLEGAL)
	120 - test_graph_c_api_add_op_cpu (ILLEGAL)
	121 - test_graph_c_api_constant_cache_cpu (ILLEGAL)
	122 - test_graph_c_api_filter_cpu (ILLEGAL)
	123 - test_graph_c_api_graph_cpu (ILLEGAL)
	124 - test_graph_c_api_logical_tensor_cpu (ILLEGAL)
	125 - test_graph_c_api_op_cpu (ILLEGAL)
	126 - test_graph_cpp_api_constant_cache_cpu (ILLEGAL)
	127 - test_graph_cpp_api_engine_cpu (ILLEGAL)
	128 - test_graph_cpp_api_graph_cpu (ILLEGAL)
	129 - test_graph_cpp_api_logical_tensor_cpu (ILLEGAL)
	130 - test_graph_cpp_api_op_cpu (ILLEGAL)
	131 - test_graph_cpp_api_tensor_cpu (ILLEGAL)
	132 - test_graph_c_api_compile_cpu (ILLEGAL)
	133 - test_graph_c_api_compile_parametrized_cpu (ILLEGAL)
	134 - test_graph_cpp_api_compile_cpu (ILLEGAL)
	135 - test_graph_cpp_api_partition_cpu (ILLEGAL)
	136 - test_graph_unit_interface_allocator_cpu (ILLEGAL)
	137 - test_graph_unit_interface_compiled_partition_cpu (ILLEGAL)
	138 - test_graph_unit_interface_partition_hashing_cpu (ILLEGAL)
	139 - test_graph_unit_interface_tensor_cpu (ILLEGAL)
	140 - test_graph_unit_interface_backend_cpu (ILLEGAL)
	141 - test_graph_unit_interface_graph_cpu (ILLEGAL)
	142 - test_graph_unit_interface_logical_tensor_cpu (ILLEGAL)
	143 - test_graph_unit_interface_op_cpu (ILLEGAL)
	144 - test_graph_unit_interface_op_def_constraint_cpu (ILLEGAL)
	145 - test_graph_unit_interface_op_schema_cpu (ILLEGAL)
	146 - test_graph_unit_interface_shape_infer_cpu (ILLEGAL)
	147 - test_graph_unit_interface_value_cpu (ILLEGAL)
	148 - test_graph_unit_fake_cpu (ILLEGAL)
	149 - test_graph_unit_dnnl_dnnl_infer_shape_cpu (ILLEGAL)
	150 - test_graph_unit_dnnl_dnnl_utils_cpu (ILLEGAL)
	151 - test_graph_unit_dnnl_fusion_info_cpu (ILLEGAL)
	152 - test_graph_unit_dnnl_graph_cpu (ILLEGAL)
	153 - test_graph_unit_dnnl_insert_ops_cpu (ILLEGAL)
	154 - test_graph_unit_dnnl_internal_attrs_cpu (ILLEGAL)
	155 - test_graph_unit_dnnl_layout_id_cpu (ILLEGAL)
	156 - test_graph_unit_dnnl_layout_propagator_cpu (ILLEGAL)
	157 - test_graph_unit_dnnl_logical_tensor_cpu (ILLEGAL)
	158 - test_graph_unit_dnnl_memory_planning_cpu (ILLEGAL)
	159 - test_graph_unit_dnnl_op_schema_cpu (ILLEGAL)
	160 - test_graph_unit_dnnl_partition_cpu (ILLEGAL)
	161 - test_graph_unit_dnnl_thread_local_cache_cpu (ILLEGAL)
	162 - test_graph_unit_dnnl_batch_norm_cpu (ILLEGAL)
	163 - test_graph_unit_dnnl_binary_op_cpu (ILLEGAL)
	164 - test_graph_unit_dnnl_bmm_cpu (ILLEGAL)
	165 - test_graph_unit_dnnl_common_cpu (ILLEGAL)
	166 - test_graph_unit_dnnl_compiled_partition_cpu (ILLEGAL)
	167 - test_graph_unit_dnnl_concat_cpu (ILLEGAL)
	168 - test_graph_unit_dnnl_constant_cache_cpu (ILLEGAL)
	169 - test_graph_unit_dnnl_convolution_cpu (ILLEGAL)
	170 - test_graph_unit_dnnl_convtranspose_cpu (ILLEGAL)
	171 - test_graph_unit_dnnl_dequantize_cpu (ILLEGAL)
	172 - test_graph_unit_dnnl_eltwise_cpu (ILLEGAL)
	173 - test_graph_unit_dnnl_group_norm_cpu (ILLEGAL)
	174 - test_graph_unit_dnnl_interpolate_cpu (ILLEGAL)
	175 - test_graph_unit_dnnl_large_partition_cpu (ILLEGAL)
	176 - test_graph_unit_dnnl_layer_norm_cpu (ILLEGAL)
	177 - test_graph_unit_dnnl_matmul_cpu (ILLEGAL)
	178 - test_graph_unit_dnnl_mqa_decomp_cpu (ILLEGAL)
	179 - test_graph_unit_dnnl_op_executable_cpu (ILLEGAL)
	180 - test_graph_unit_dnnl_pass_cpu (ILLEGAL)
	181 - test_graph_unit_dnnl_pool_cpu (ILLEGAL)
	182 - test_graph_unit_dnnl_prelu_cpu (ILLEGAL)
	183 - test_graph_unit_dnnl_quantize_cpu (ILLEGAL)
	184 - test_graph_unit_dnnl_reduce_cpu (ILLEGAL)
	185 - test_graph_unit_dnnl_reorder_cpu (ILLEGAL)
	186 - test_graph_unit_dnnl_scratchpad_cpu (ILLEGAL)
	187 - test_graph_unit_dnnl_sdp_decomp_cpu (ILLEGAL)
	188 - test_graph_unit_dnnl_select_cpu (ILLEGAL)
	189 - test_graph_unit_dnnl_softmax_cpu (ILLEGAL)
	190 - test_graph_unit_dnnl_subgraph_pass_cpu (ILLEGAL)
	191 - test_graph_unit_dnnl_typecast_cpu (ILLEGAL)
	192 - test_graph_unit_utils_allocator_cpu (ILLEGAL)
	193 - test_graph_unit_utils_attribute_value_cpu (ILLEGAL)
	194 - test_graph_unit_utils_debug_cpu (ILLEGAL)
	195 - test_graph_unit_utils_json_cpu (ILLEGAL)
	196 - test_graph_unit_utils_pattern_matcher_cpu (ILLEGAL)
	197 - test_graph_unit_utils_utils_cpu (ILLEGAL)
	198 - test_benchdnn_modeC_binary_ci_cpu (ILLEGAL)
	199 - test_benchdnn_modeC_binary_different_dt_ci_cpu (ILLEGAL)
	200 - test_benchdnn_modeC_bnorm_ci_cpu (ILLEGAL)
	201 - test_benchdnn_modeC_brgemm_ci_cpu (ILLEGAL)
	202 - test_benchdnn_modeC_concat_ci_cpu (ILLEGAL)
	203 - test_benchdnn_modeC_conv_ci_cpu (ILLEGAL)
	204 - test_benchdnn_modeC_deconv_ci_cpu (ILLEGAL)
	205 - test_benchdnn_modeC_eltwise_ci_cpu (ILLEGAL)
	206 - test_benchdnn_modeC_gnorm_ci_cpu (ILLEGAL)
	207 - test_benchdnn_modeC_graph_ci_cpu (ILLEGAL)
	208 - test_benchdnn_modeC_ip_ci_cpu (ILLEGAL)
	209 - test_benchdnn_modeC_lnorm_ci_cpu (ILLEGAL)
	210 - test_benchdnn_modeC_lrn_ci_cpu (ILLEGAL)
	211 - test_benchdnn_modeC_matmul_ci_cpu (ILLEGAL)
	212 - test_benchdnn_modeC_matmul_sparse_ci_cpu (ILLEGAL)
	213 - test_benchdnn_modeC_pool_ci_cpu (ILLEGAL)
	214 - test_benchdnn_modeC_prelu_ci_cpu (ILLEGAL)
	215 - test_benchdnn_modeC_reduction_ci_cpu (ILLEGAL)
	216 - test_benchdnn_modeC_reorder_ci_cpu (ILLEGAL)
	217 - test_benchdnn_modeC_resampling_ci_cpu (ILLEGAL)
	218 - test_benchdnn_modeC_augru_ci_cpu (ILLEGAL)
	219 - test_benchdnn_modeC_gru_ci_cpu (ILLEGAL)
	220 - test_benchdnn_modeC_lstm_ci_cpu (ILLEGAL)
	221 - test_benchdnn_modeC_rnn_ci_cpu (ILLEGAL)
	222 - test_benchdnn_modeC_self_ci_cpu (ILLEGAL)
	223 - test_benchdnn_modeC_shuffle_ci_cpu (ILLEGAL)
	224 - test_benchdnn_modeC_softmax_ci_cpu (ILLEGAL)
	225 - test_benchdnn_modeC_sum_ci_cpu (ILLEGAL)
	226 - test_benchdnn_modeC_zeropad_ci_cpu (ILLEGAL)
Errors while running CTest
Output from these tests are in: /build/onednn/src/oneDNN-3.10.2/build/Testing/Temporary/LastTest.log
Use "--rerun-failed --output-on-failure" to re-run the failed cases verbosely.
�[1m�[31m==> ERROR:�[m��[1m A failure occurred in check().�[m�
�[1m    Aborting...�[m�

This is because RVV and Zvfh are unconditionally enabled when DNNL_ARCH_OPT_FLAGS is the default HostOpts value. The compiler is free to optimize code to use RVV and leads to SIGILL on rv64gc platform.

However, attempt to fix it by setting DNNL_ARCH_OPT_FLAGS to -march=rv64gc would fail the compilation:

FAILED: [code=1] src/cpu/rv64/CMakeFiles/dnnl_cpu_riscv.dir/rvv_matmul.cpp.o                                                                                                                                                                                
/usr/bin/c++ -DDNNL_DLL -DDNNL_DLL_EXPORTS -DDNNL_ENABLE_CPU_ISA_HINTS -DDNNL_ENABLE_MAX_CPU_ISA -DDNNL_RISCV_USE_RVV_INTRINSICS -DDNNL_RISCV_USE_ZVFH_INTRINSICS -DDNNL_RV64=1 -D__STDC_CONSTANT_MACROS -D__STDC_LIMIT_MACROS -I/build/onednn/src/oneDNN-3.
10.2/build/include -I/build/onednn/src/oneDNN-3.10.2/include -I/build/onednn/src/oneDNN-3.10.2/third_party -I/build/onednn/src/oneDNN-3.10.2/src -march=rv64gc -mabi=lp64d -O2 -pipe -fno-plt -fexceptions         -Wp,-D_FORTIFY_SOURCE=3 -Wformat -Werror=
format-security         -fstack-clash-protection         -fno-omit-frame-pointer -Wp,-D_GLIBCXX_ASSERTIONS -g -ffile-prefix-map=/build/onednn/src=/usr/src/debug/onednn -flto=auto -fopenmp -fvisibility-inlines-hidden  -Wall -Wno-unknown-pragmas -Wundef 
-fvisibility=internal -march=rv64gc  -fPIC -Wformat -Wformat-security -D_FORTIFY_SOURCE=2 -fstack-protector-strong  -Wmissing-field-initializers  -Wno-strict-overflow -Wno-maybe-uninitialized -Wno-stringop-overflow -Wno-array-bounds  -O3 -DNDEBUG -std=
c++11 -MD -MT src/cpu/rv64/CMakeFiles/dnnl_cpu_riscv.dir/rvv_matmul.cpp.o -MF src/cpu/rv64/CMakeFiles/dnnl_cpu_riscv.dir/rvv_matmul.cpp.o.d -o src/cpu/rv64/CMakeFiles/dnnl_cpu_riscv.dir/rvv_matmul.cpp.o -c /build/onednn/src/oneDNN-3.10.2/src/cpu/rv64/r
vv_matmul.cpp                                                                                                                                                                                                                                               
<command-line>: warning: ‘_FORTIFY_SOURCE’ redefined                                                                                                                                                                                                        
<command-line>: note: this is the location of the previous definition                                                        
/build/onednn/src/oneDNN-3.10.2/src/cpu/rv64/rvv_matmul.cpp: In lambda function:                                             
/build/onednn/src/oneDNN-3.10.2/src/cpu/rv64/rvv_matmul.cpp:94:71: error: argument type ‘vfloat32m1_trequires the V ISA extension
   94 |                     float partial = __riscv_vfmv_f_s_f32m1_f32(reduced);                                                                                                                                                                            
      |                                                                       ^                                                                                                                                                                             
/build/onednn/src/oneDNN-3.10.2/src/cpu/rv64/rvv_matmul.cpp:94:71: error: argument type ‘vfloat32m1_trequires the V ISA extension                                                                                                                         
In file included from /build/onednn/src/oneDNN-3.10.2/src/cpu/rv64/rvv_matmul.hpp:21,                                                                                                                                                                       
                 from /build/onednn/src/oneDNN-3.10.2/src/cpu/rv64/rvv_matmul.cpp:16:                                                                                                                                                                       
/build/onednn/src/oneDNN-3.10.2/src/cpu/rv64/rvv_postops.hpp: In member function ‘vfloat32m1_t dnnl::impl::cpu::rv64::rvv_postops_t::apply(vfloat32m1_t, size_t) const’:
/build/onednn/src/oneDNN-3.10.2/src/cpu/rv64/rvv_postops.hpp:45:25: error: return type ‘vfloat32m1_t’ requires the V ISA extension
   45 |     inline vfloat32m1_t apply(vfloat32m1_t v, size_t vl) const {                                                     
      |                         ^~~~~                                                                                                                                                                                                                       
/build/onednn/src/oneDNN-3.10.2/src/cpu/rv64/rvv_postops.hpp:45:25: error: argument type ‘vfloat32m1_trequires the V ISA extension            

One way to fix them would be guarding such code with e.g. __attribute__((target("arch=+v"))) and drop -march=rv64gcv_zvfh.

GDB stacktrace:

gdb --args  /build/onednn/src/oneDNN-3.10.2/build/examples/bnorm-u8-via-binary-postops-cpp cpu

#0  std::vector<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > >::vector<char const* const*, void>(char const* const*, char const* const*, std::allocator<std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > > const&) [clone .isra.0] (this=0x3ff7e744a0 <_ZN4dnnl4impl5graph9dnnl_impl7op_kindL19internal_op_stringsE.lto_priv.66>, 
    __first=0x3ff7e44300 <C.370.0>, __last=0x3ff7e44478 <C.361.1>, __a=...) at /usr/include/c++/15.2.1/bits/stl_vector.h:738
#1  0x0000003ff6c2b512 in _sub_I_65535_0.0 () from /build/onednn/src/oneDNN-3.10.2/build/src/libdnnl.so.3
#2  0x0000003ff7fdc232 in ?? () from /lib/ld-linux-riscv64-lp64d.so.1
#3  0x0000003ff7fdc2fe in ?? () from /lib/ld-linux-riscv64-lp64d.so.1
#4  0x0000003ff7fe9fb6 in ?? () from /lib/ld-linux-riscv64-lp64d.so.1

Expected behavior

The tests should not crash.

Metadata

Metadata

Assignees

Labels

platform:cpu-rv64RISC-VsightingSuspicious library behavior. Should be promoted to a bug when confirmed

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions