Skip to content

Commit 1d2d20d

Browse files
committed
generic: skip unsupported examples
1 parent caddac1 commit 1d2d20d

File tree

3 files changed

+28
-2
lines changed

3 files changed

+28
-2
lines changed

examples/CMakeLists.txt

+14
Original file line numberDiff line numberDiff line change
@@ -94,6 +94,20 @@ if(NOT ONEDNN_BUILD_GRAPH)
9494
)
9595
endif()
9696

97+
if(DNNL_SYCL_GENERIC)
98+
list(REMOVE_ITEM sources
99+
# XXX: Enable when InnerProduct is implemented
100+
${CMAKE_CURRENT_SOURCE_DIR}/cnn_inference_f32.cpp
101+
${CMAKE_CURRENT_SOURCE_DIR}/primitives/inner_product.cpp
102+
${CMAKE_CURRENT_SOURCE_DIR}/rnn_training_f32.cpp
103+
# XXX: Enable when Reduction is implemented
104+
${CMAKE_CURRENT_SOURCE_DIR}/primitives/reduction.cpp
105+
${CMAKE_CURRENT_SOURCE_DIR}/primitives/group_normalization.cpp
106+
${CMAKE_CURRENT_SOURCE_DIR}/primitives/lbr_gru.cpp
107+
${CMAKE_CURRENT_SOURCE_DIR}/primitives/lstm.cpp
108+
${CMAKE_CURRENT_SOURCE_DIR}/primitives/vanilla_rnn.cpp)
109+
endif()
110+
97111
if(DNNL_SYCL_HIP)
98112
# Build examples for supported primitives that support required features.
99113
set(sources)

src/gpu/generic/sycl/ref_convolution.hpp

+4-2
Original file line numberDiff line numberDiff line change
@@ -154,11 +154,13 @@ struct ref_convolution_bwd_data_t : public gpu::generic::sycl::primitive_t {
154154
&& check_convolution_formats(
155155
diff_data_d, weights_d, diff_dst_d)
156156
&& attr()->has_default_values(sm::scales_runtime
157-
| sm::zero_points_runtime | sm::sum_dt)
157+
| sm::zero_points_runtime | sm::sum_dt
158+
| sm::post_ops)
158159
&& IMPLICATION(!attr()->scales_.has_default_values(),
159160
attr_scales_ok()
160161
&& check_convolution_scales_types(attr()))
161-
&& set_default_alg_kind(alg_kind::convolution_direct);
162+
&& set_default_alg_kind(alg_kind::convolution_direct)
163+
&& sycl_post_ops_t::post_ops_ok(attr(), false);
162164
if (!ok) return status::unimplemented;
163165

164166
return init_conf();

tests/gtests/test_deconvolution.cpp

+10
Original file line numberDiff line numberDiff line change
@@ -310,10 +310,20 @@ class deconvolution_test_t
310310
strides, padL, padR);
311311

312312
auto aa = allows_attr_t {false};
313+
314+
#ifndef DNNL_SYCL_GENERIC
313315
aa.po_binary = !is_nvidia_gpu(eng) && !is_amd_gpu(eng);
314316
aa.po_eltwise = !is_nvidia_gpu(eng) && !is_amd_gpu(eng);
315317
aa.po_prelu = !is_nvidia_gpu(eng) && !is_amd_gpu(eng);
316318
aa.po_sum = !is_nvidia_gpu(eng) && !is_amd_gpu(eng);
319+
#else
320+
aa.po_eltwise = true;
321+
aa.po_sum = true;
322+
if (eng.get_kind() == dnnl::engine::kind::cpu) {
323+
aa.po_binary = true;
324+
aa.po_prelu = true;
325+
}
326+
#endif
317327

318328
bool is_int8 = impl::utils::one_of(dec_src_desc->get_data_type(),
319329
memory::data_type::s8, memory::data_type::u8);

0 commit comments

Comments
 (0)