Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
5 changes: 2 additions & 3 deletions include/oneapi/dnnl/dnnl_debug.h
Original file line number Diff line number Diff line change
Expand Up @@ -37,14 +37,13 @@ const char DNNL_API *dnnl_dt2str(dnnl_data_type_t v);
const char DNNL_API *dnnl_fpmath_mode2str(dnnl_fpmath_mode_t v);
const char DNNL_API *dnnl_accumulation_mode2str(dnnl_accumulation_mode_t v);
const char DNNL_API *dnnl_engine_kind2str(dnnl_engine_kind_t v);
#ifdef DNNL_EXPERIMENTAL_SPARSE
const char DNNL_API *dnnl_sparse_encoding2str(dnnl_sparse_encoding_t v);
#endif
const char DNNL_API *dnnl_fmt_tag2str(dnnl_format_tag_t v);
const char DNNL_API *dnnl_prop_kind2str(dnnl_prop_kind_t v);
const char DNNL_API *dnnl_prim_kind2str(dnnl_primitive_kind_t v);
const char DNNL_API *dnnl_alg_kind2str(dnnl_alg_kind_t v);
#ifdef DNNL_EXPERIMENTAL_SPARSE
const char DNNL_API *dnnl_sparse_encoding2str(dnnl_sparse_encoding_t v);
#endif
const char DNNL_API *dnnl_rnn_flags2str(dnnl_rnn_flags_t v);
const char DNNL_API *dnnl_rnn_direction2str(dnnl_rnn_direction_t v);
const char DNNL_API *dnnl_scratchpad_mode2str(dnnl_scratchpad_mode_t v);
Expand Down
47 changes: 28 additions & 19 deletions src/common/dnnl_debug_autogenerated.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -60,10 +60,9 @@ const char *dnnl_dt2str(dnnl_data_type_t v) {
if (v == dnnl_e8m0) return "e8m0";
if (v == dnnl_f4_e2m1) return "f4_e2m1";
if (v == dnnl_f4_e3m0) return "f4_e3m0";
if (v == dnnl_bin) return "bin";
if (v == dnnl_nf4) return "nf4";
if (v == dnnl_s4) return "s4";
if (v == dnnl_u4) return "u4";
if (v == dnnl_bin) return "bin";
if (v == dnnl_u2) return "u2";
if (v == dnnl_data_type_max) return "data_type_max";
assert(!"unknown dt");
return "unknown dt";
Expand Down Expand Up @@ -98,17 +97,6 @@ const char *dnnl_engine_kind2str(dnnl_engine_kind_t v) {
return "unknown engine_kind";
}

#ifdef DNNL_EXPERIMENTAL_SPARSE
const char *dnnl_sparse_encoding2str(dnnl_sparse_encoding_t v) {
if (v == dnnl_sparse_encoding_undef) return "undef";
if (v == dnnl_csr) return "csr";
if (v == dnnl_packed) return "packed";
if (v == dnnl_coo) return "coo";
assert(!"unknown sparse_encoding");
return "unknown sparse_encoding";
}

#endif
const char *dnnl_fmt_tag2str(dnnl_format_tag_t v) {
if (v == dnnl_format_tag_undef) return "undef";
if (v == dnnl_format_tag_any) return "any";
Expand Down Expand Up @@ -212,7 +200,6 @@ const char *dnnl_fmt_tag2str(dnnl_format_tag_t v) {
if (v == dnnl_ABcd2b8a4b) return "ABcd2b8a4b";
if (v == dnnl_ABcd8a8b) return "ABcd8a8b";
if (v == dnnl_ABcd8a32b) return "ABcd8a32b";
if (v == dnnl_ABcd16a32b) return "ABcd16a32b";
if (v == dnnl_ABcd8a4b) return "ABcd8a4b";
if (v == dnnl_aBcd8b) return "aBcd8b";
if (v == dnnl_aBCd4c8b2c) return "aBCd4c8b2c";
Expand Down Expand Up @@ -639,6 +626,19 @@ const char *dnnl_fmt_tag2str(dnnl_format_tag_t v) {
if (v == dnnl_aCB16b32c) return "aCB16b32c";
if (v == dnnl_aCB16b48c) return "aCB16b48c";
if (v == dnnl_aCB16b64c) return "aCB16b64c";
if (v == dnnl_aBC8c8b2c) return "aBC8c8b2c";
if (v == dnnl_aBC8c16b2c) return "aBC8c16b2c";
if (v == dnnl_aBC8c24b2c) return "aBC8c24b2c";
if (v == dnnl_aBC8c32b2c) return "aBC8c32b2c";
if (v == dnnl_aBC8c64b2c) return "aBC8c64b2c";
if (v == dnnl_aBC16c16b2c) return "aBC16c16b2c";
if (v == dnnl_aBC16c32b2c) return "aBC16c32b2c";
if (v == dnnl_aBC16c48b2c) return "aBC16c48b2c";
if (v == dnnl_aBC16c64b2c) return "aBC16c64b2c";
if (v == dnnl_aBC16c16b4c) return "aBC16c16b4c";
if (v == dnnl_aBC16c32b4c) return "aBC16c32b4c";
if (v == dnnl_aBC16c48b4c) return "aBC16c48b4c";
if (v == dnnl_aBC16c64b4c) return "aBC16c64b4c";
if (v == dnnl_aCB16b16c2b) return "aCB16b16c2b";
if (v == dnnl_aCB16b32c2b) return "aCB16b32c2b";
if (v == dnnl_aCB16b48c2b) return "aCB16b48c2b";
Expand Down Expand Up @@ -1201,9 +1201,9 @@ const char *dnnl_fmt_tag2str(dnnl_format_tag_t v) {
if (v == dnnl_OIhw8o16i2o) return "OIhw8o16i2o";
if (v == dnnl_OIhw2i8o4i) return "OIhw2i8o4i";
if (v == dnnl_IOhw8o16i2o) return "IOhw8o16i2o";
if (v == dnnl_OIhw8o32i) return "OIhw8o23i";
if (v == dnnl_OIhw16o32i) return "OIhw16o23i";
if (v == dnnl_OIhw8o8i) return "OIhw8o8i";
if (v == dnnl_OIhw8o32i) return "OIhw8o32i";
if (v == dnnl_OIhw16o32i) return "OIhw16o32i";
if (v == dnnl_OIhw8o4i) return "OIhw8o4i";
if (v == dnnl_Owhi16o) return "Owhi16o";
if (v == dnnl_OIhw8i32o) return "OIhw8i32o";
Expand Down Expand Up @@ -1773,6 +1773,9 @@ const char *dnnl_prim_kind2str(dnnl_primitive_kind_t v) {
if (v == dnnl_convolution) return "convolution";
if (v == dnnl_deconvolution) return "deconvolution";
if (v == dnnl_eltwise) return "eltwise";
if (v == dnnl_depthwise) return "depthwise";
if (v == dnnl_quantization) return "quantization";
if (v == dnnl_binarization) return "binarization";
if (v == dnnl_lrn) return "lrn";
if (v == dnnl_batch_normalization) return "batch_normalization";
if (v == dnnl_inner_product) return "inner_product";
Expand All @@ -1787,8 +1790,6 @@ const char *dnnl_prim_kind2str(dnnl_primitive_kind_t v) {
if (v == dnnl_softmax) return "softmax";
if (v == dnnl_layer_normalization) return "layer_normalization";
if (v == dnnl_group_normalization) return "group_normalization";
if (v == dnnl_depthwise) return "depthwise";
if (v == dnnl_quantization) return "quantization";
if (v == dnnl_primitive_kind_max) return "primitive_kind_max";
if (v == dnnl::impl::primitive_kind::sdpa) return "sdpa";
assert(!"unknown prim_kind");
Expand Down Expand Up @@ -1880,14 +1881,21 @@ const char *dnnl_alg_kind2str(dnnl_alg_kind_t v) {
return "unknown alg_kind";
}

#ifdef DNNL_EXPERIMENTAL_SPARSE
const char *dnnl_sparse_encoding2str(dnnl_sparse_encoding_t v) {
if (v == dnnl_sparse_encoding_undef) return "undef";
if (v == dnnl_sparse_encoding_any) return "any";
if (v == dnnl_sparse_encoding_packed) return "sparse_encoding_packed";
if (v == dnnl_sparse_encoding_csr) return "sparse_encoding_csr";
if (v == dnnl_sparse_encoding_coo) return "sparse_encoding_coo";
if (v == dnnl_packed) return "packed";
if (v == dnnl_csr) return "csr";
if (v == dnnl_coo) return "coo";
assert(!"unknown sparse_encoding");
return "unknown sparse_encoding";
}

#endif
const char *dnnl_rnn_flags2str(dnnl_rnn_flags_t v) {
if (v == dnnl_rnn_flags_undef) return "undef";
if (v == dnnl_rnn_flags_diff_weights_overwrite) return "rnn_flags_diff_weights_overwrite";
Expand Down Expand Up @@ -1935,6 +1943,7 @@ const char *dnnl_cpu_isa2str(dnnl_cpu_isa_t v) {
if (v == dnnl_cpu_isa_avx512_core_amx) return "cpu_isa_avx512_core_amx";
if (v == dnnl_cpu_isa_avx10_1_512_amx_fp16) return "cpu_isa_avx10_1_512_amx_fp16";
if (v == dnnl_cpu_isa_avx512_core_amx_fp16) return "cpu_isa_avx512_core_amx_fp16";
if (v == dnnl_cpu_isa_avx512_vpopcnt) return "cpu_isa_avx512_vpopcnt";
assert(!"unknown cpu_isa");
return "unknown cpu_isa";
}
Expand Down
3 changes: 2 additions & 1 deletion tests/benchdnn/dnnl_debug.hpp
Original file line number Diff line number Diff line change
Expand Up @@ -25,10 +25,10 @@
#include "oneapi/dnnl/dnnl.h"

dnnl_data_type_t str2dt(const char *str);
dnnl_format_tag_t str2fmt_tag(const char *str);
#ifdef DNNL_EXPERIMENTAL_SPARSE
dnnl_sparse_encoding_t str2sparse_encoding(const char *str);
#endif
dnnl_format_tag_t str2fmt_tag(const char *str);

/* status */
const char *status2str(dnnl_status_t status);
Expand All @@ -43,6 +43,7 @@ const char *fmt_tag2str(dnnl_format_tag_t tag);
#ifdef DNNL_EXPERIMENTAL_SPARSE
const char *sparse_encoding2str(dnnl_sparse_encoding_t encoding);
#endif
const char *sparse_encoding2str(dnnl_sparse_encoding_t encoding);

/* engine kind */
const char *engine_kind2str(dnnl_engine_kind_t kind);
Expand Down
70 changes: 51 additions & 19 deletions tests/benchdnn/dnnl_debug_autogenerated.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -51,6 +51,9 @@ dnnl_data_type_t str2dt(const char *str) {
CASE(e8m0);
CASE(f4_e2m1);
CASE(f4_e3m0);
CASE(nf4);
CASE(bin);
CASE(u2);
CASE(data_type_max);
#undef CASE
if (!strcmp("undef", str) || !strcmp("dnnl_data_type_undef", str))
Expand All @@ -60,25 +63,6 @@ dnnl_data_type_t str2dt(const char *str) {
return dnnl_data_type_undef;
}

#ifdef DNNL_EXPERIMENTAL_SPARSE
dnnl_sparse_encoding_t str2sparse_encoding(const char *str) {
#define CASE(_case) do { \
if (!strcmp(STRINGIFY(_case), str) \
|| !strcmp("dnnl_" STRINGIFY(_case), str)) \
return CONCAT2(dnnl_, _case); \
} while (0)
CASE(csr);
CASE(packed);
CASE(coo);
#undef CASE
if (!strcmp("undef", str) || !strcmp("dnnl_sparse_encoding_undef", str))
return dnnl_sparse_encoding_undef;
printf("Error: sparse_encoding `%s` is not supported.\n", str);
assert(!"unknown sparse_encoding");
return dnnl_sparse_encoding_undef;
}

#endif
dnnl_format_tag_t str2fmt_tag(const char *str) {
#define CASE(_case) do { \
if (!strcmp(STRINGIFY(_case), str) \
Expand Down Expand Up @@ -184,6 +168,7 @@ dnnl_format_tag_t str2fmt_tag(const char *str) {
CASE(ABcd8a16b2a);
CASE(ABcd2b8a4b);
CASE(ABcd8a8b);
CASE(ABcd8a32b);
CASE(ABcd8a4b);
CASE(aBcd8b);
CASE(aBCd4c8b2c);
Expand Down Expand Up @@ -282,6 +267,8 @@ dnnl_format_tag_t str2fmt_tag(const char *str) {
CASE(aCBdef16c16b);
CASE(aBdefc4b);
CASE(aBdefc8b);
CASE(Abcdef4a);
CASE(Abcdef8a);
CASE(Abcdef16a);
CASE(Abcdef32a);
CASE(aBedc16b);
Expand Down Expand Up @@ -608,6 +595,19 @@ dnnl_format_tag_t str2fmt_tag(const char *str) {
CASE(aCB16b32c);
CASE(aCB16b48c);
CASE(aCB16b64c);
CASE(aBC8c8b2c);
CASE(aBC8c16b2c);
CASE(aBC8c24b2c);
CASE(aBC8c32b2c);
CASE(aBC8c64b2c);
CASE(aBC16c16b2c);
CASE(aBC16c32b2c);
CASE(aBC16c48b2c);
CASE(aBC16c64b2c);
CASE(aBC16c16b4c);
CASE(aBC16c32b4c);
CASE(aBC16c48b4c);
CASE(aBC16c64b4c);
CASE(aCB16b16c2b);
CASE(aCB16b32c2b);
CASE(aCB16b48c2b);
Expand Down Expand Up @@ -1170,6 +1170,8 @@ dnnl_format_tag_t str2fmt_tag(const char *str) {
CASE(OIhw2i8o4i);
CASE(IOhw8o16i2o);
CASE(OIhw8o8i);
CASE(OIhw8o32i);
CASE(OIhw16o32i);
CASE(OIhw8o4i);
CASE(Owhi16o);
CASE(OIhw8i32o);
Expand Down Expand Up @@ -1395,6 +1397,8 @@ dnnl_format_tag_t str2fmt_tag(const char *str) {
CASE(gIOdhw8o16i2o);
CASE(gOIdhw8o8i);
CASE(gOIdhw8o4i);
CASE(Goidhw4g);
CASE(Goidhw8g);
CASE(Goidhw16g);
CASE(Goidhw32g);
CASE(gOIdhw2i4o2i);
Expand Down Expand Up @@ -1719,6 +1723,31 @@ dnnl_format_tag_t str2fmt_tag(const char *str) {
return dnnl_format_tag_last;
}

#ifdef DNNL_EXPERIMENTAL_SPARSE
dnnl_sparse_encoding_t str2sparse_encoding(const char *str) {
#define CASE(_case) do { \
if (!strcmp(STRINGIFY(_case), str) \
|| !strcmp("dnnl_" STRINGIFY(_case), str)) \
return CONCAT2(dnnl_, _case); \
} while (0)
CASE(sparse_encoding_packed);
CASE(sparse_encoding_csr);
CASE(sparse_encoding_coo);
CASE(packed);
CASE(csr);
CASE(coo);
#undef CASE
if (!strcmp("undef", str) || !strcmp("dnnl_sparse_encoding_undef", str))
return dnnl_sparse_encoding_undef;
if (!strcmp("any", str) || !strcmp("dnnl_sparse_encoding_any", str))
return dnnl_sparse_encoding_any;
printf("Error: sparse_encoding `%s` is not supported.\n", str);
assert(!"unknown sparse_encoding");
return dnnl_sparse_encoding_undef;
}

#endif

const char *status2str(dnnl_status_t status) {
return dnnl_status2str(status);
}
Expand All @@ -1736,6 +1765,9 @@ const char *sparse_encoding2str(dnnl_sparse_encoding_t encoding) {
return dnnl_sparse_encoding2str(encoding);
}
#endif
const char *sparse_encoding2str(dnnl_sparse_encoding_t encoding) {
return dnnl_sparse_encoding2str(encoding);
}

const char *engine_kind2str(dnnl_engine_kind_t kind) {
return dnnl_engine_kind2str(kind);
Expand Down
Loading