|
1 | 1 | /*******************************************************************************
|
2 |
| -* Copyright 2016-2024 Intel Corporation |
| 2 | +* Copyright 2016-2025 Intel Corporation |
3 | 3 | * Copyright 2018 YANDEX LLC
|
4 | 4 | *
|
5 | 5 | * Licensed under the Apache License, Version 2.0 (the "License");
|
@@ -1459,6 +1459,26 @@ status_t jit_avx2_conv_bwd_weights_kernel_f32::init_conf(jit_conv_conf_t &jcp,
|
1459 | 1459 | jcp.nb_oc = div_up(jcp.oc, jcp.oc_block);
|
1460 | 1460 | jcp.nb_ic_blocking = jcp.nb_oc_blocking = 1;
|
1461 | 1461 |
|
| 1462 | + jcp.typesize_in = types::data_type_size(src_d.data_type()); |
| 1463 | + jcp.typesize_out = types::data_type_size(diff_dst_d.data_type()); |
| 1464 | + |
| 1465 | + const bool is_src_layout_blocked = jcp.src_tag == dat_tag_nCx8c; |
| 1466 | + const bool is_dst_layout_blocked = jcp.dst_tag == dat_tag_nCx8c; |
| 1467 | + |
| 1468 | + dim_t src_size = static_cast<dim_t>(jcp.mb) |
| 1469 | + * (is_src_layout_blocked ? rnd_up(jcp.ic, jcp.ic_block) : jcp.ic) |
| 1470 | + * jcp.id * jcp.ih * jcp.iw * jcp.typesize_in; |
| 1471 | + |
| 1472 | + VDISPATCH_CONV_IC(src_size <= INT_MAX, VERBOSE_UNSUPPORTED_FEATURE, |
| 1473 | + "src size > INT_MAX is not supported"); |
| 1474 | + |
| 1475 | + dim_t diff_dst_size = static_cast<dim_t>(jcp.mb) |
| 1476 | + * (is_dst_layout_blocked ? rnd_up(jcp.oc, jcp.oc_block) : jcp.oc) |
| 1477 | + * jcp.id * jcp.ih * jcp.iw * jcp.typesize_in; |
| 1478 | + |
| 1479 | + VDISPATCH_CONV_IC(diff_dst_size <= INT_MAX, VERBOSE_UNSUPPORTED_FEATURE, |
| 1480 | + "diff_dst size > INT_MAX is not supported"); |
| 1481 | + |
1462 | 1482 | return status::success;
|
1463 | 1483 | }
|
1464 | 1484 |
|
|
0 commit comments