Expression Templates Library (ETL)
conv_impl.hpp
Go to the documentation of this file.
1 //=======================================================================
2 // Copyright (c) 2014-2023 Baptiste Wicht
3 // Distributed under the terms of the MIT License.
4 // (See accompanying file LICENSE or copy at
5 // http://opensource.org/licenses/MIT)
6 //=======================================================================
7 
13 #pragma once
14 
15 namespace etl {
16 
20 enum class conv_impl {
21  STD,
22  VEC,
23  CUDNN,
24  FFT_STD,
25  FFT_MKL,
26  FFT_CUFFT,
27  EGBLAS
28 };
29 
33 enum class conv4_impl {
34  STD,
35  VEC,
36  CUDNN,
37  FFT_STD,
38  FFT_MKL,
39  FFT_CUFFT,
40  BLAS_VEC,
41  BLAS_MKL
42 };
43 
47 enum class conv_multi_impl {
48  STD,
49  VEC,
51  FFT_STD,
52  FFT_MKL,
53  FFT_CUFFT,
54  BLAS_VEC,
55  BLAS_MKL,
56  CUDNN
57 };
58 
59 } //end of namespace etl
FFT reduction (with MKL impl)
Standard implementation.
VEC implementation.
Root namespace for the ETL library.
Definition: adapter.hpp:15
FFT reduction (with STD impl)
GPU implementation.
conv_multi_impl
Enumeration describing the different multiple convolution implementations.
Definition: conv_impl.hpp:47
GPU implementation.
conv_impl
Enumeration describing the different convolution implementations.
Definition: conv_impl.hpp:20
Reductiont to FFT (valid)
conv4_impl
Enumeration describing the different convolution implementations.
Definition: conv_impl.hpp:33
FFT reduction (with CUFFT impl)