| 504 | } |
| 505 | |
| 506 | std::vector<ConvolutionBackwardDataImpl::Algorithm*> ConvolutionBackwardDataImpl:: |
| 507 | get_all_algorithms( |
| 508 | const TensorLayout& filter, const TensorLayout& diff, |
| 509 | const TensorLayout& grad) { |
| 510 | if (param().format == param::Convolution::Format::NHWCD4 || |
| 511 | param().format == param::Convolution::Format::NCHW4 || |
| 512 | ((param().format == param::Convolution::Format::NCHW || |
| 513 | param().format == param::Convolution::Format::NHWC) && |
| 514 | grad.dtype.enumv() == DTypeEnum::QuantizedS8)) { |
| 515 | return naive::ConvolutionBackwardDataImpl::get_all_algorithms( |
| 516 | filter, diff, grad); |
| 517 | } |
| 518 | auto fparam = make_ncb_kern_size_param(filter, diff, grad); |
| 519 | auto ret = get_all_algorithms_with_ncb(fparam); |
| 520 | return ret; |
| 521 | } |
| 522 | |
| 523 | std::vector<ConvolutionBackwardDataImpl::Algorithm*> ConvolutionBackwardDataImpl:: |
| 524 | get_all_algorithms_safe( |
nothing calls this directly
no test coverage detected