From b8e6ca6aef90e9a77f2c572dcedd42102e72f18d Mon Sep 17 00:00:00 2001 From: mangguo321 Date: Thu, 13 Mar 2025 14:24:12 +0100 Subject: [PATCH] Fix inner product failure when original weight is f16 and oc is 1 --- src/cpu/x64/jit_brgemm_inner_product_utils.cpp | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/src/cpu/x64/jit_brgemm_inner_product_utils.cpp b/src/cpu/x64/jit_brgemm_inner_product_utils.cpp index b679f41caba..8f59618635e 100644 --- a/src/cpu/x64/jit_brgemm_inner_product_utils.cpp +++ b/src/cpu/x64/jit_brgemm_inner_product_utils.cpp @@ -525,7 +525,7 @@ status_t jit_brgemm_ip_fwd_conf_t::init_conf(cpu_isa_t isa, jbgp.nb_ic = div_up(jbgp.ic, jbgp.ic_block); // gemm-based inner product performs better when oc = 1 - if (is_f32_compute && jbgp.oc == 1) return status::unimplemented; + if (is_f32_compute && jbgp.oc == 1 && jbgp.orig_wei_dt != f16) return status::unimplemented; jbgp.oc_block = get_adjusted_oc_block(); jbgp.nb_oc = div_up(jbgp.oc, jbgp.oc_block);