@@ -70,23 +70,26 @@ status_t acl_gemm_convolution_fwd_t<src_t, wei_t, dst_t, bia_t>::pd_t::init(
70
70
CHECK (acl_convolution_utils::acl_init_conf (
71
71
acp_, src_md_, weights_md_, dst_md_, bias_md_, *desc (), *attr ()));
72
72
73
+ Op conv;
74
+
75
+ auto scratchpad = scratchpad_registry ().registrar ();
76
+ auto status = init_scratchpad (conv, scratchpad, gemm_conv_keys, engine,
77
+ post_ops, attr_.post_ops_ , acp_.act_info , acp_.use_dst_acc_for_sum ,
78
+ dst_md_, bias_md_, acp_.is_quantized );
79
+ if (status != status::success) return status::unimplemented;
80
+
73
81
// Validate convolution manually to check for return status
74
82
ACL_CHECK_VALID (Op::validate (&acp_.src_tensor_info , &acp_.wei_tensor_info ,
75
83
acp_.with_bias ? &acp_.bia_tensor_info : nullptr ,
76
84
&acp_.dst_tensor_info , acp_.padstride_info , acp_.weights_info ,
77
85
acp_.dilation_info , acp_.act_info , acp_.fast_math ));
78
86
79
- Op conv;
80
87
conv.configure (&acp_.src_tensor_info , &acp_.wei_tensor_info ,
81
88
acp_.with_bias ? &acp_.bia_tensor_info : nullptr ,
82
89
&acp_.dst_tensor_info , acp_.padstride_info , acp_.weights_info ,
83
90
acp_.dilation_info , acp_.act_info , acp_.fast_math );
84
91
85
- auto scratchpad = scratchpad_registry ().registrar ();
86
- const auto mem_req = conv.workspace ();
87
- return init_scratchpad (conv, scratchpad, gemm_conv_keys, engine, post_ops,
88
- attr_.post_ops_ , acp_.act_info , acp_.use_dst_acc_for_sum , dst_md_,
89
- bias_md_, acp_.is_quantized );
92
+ return status::success;
90
93
}
91
94
92
95
template <data_type_t src_t , data_type_t wei_t , data_type_t dst_t ,
0 commit comments