Functions to acceleratŠµ Winograd convolution algorithm in Synet Framework. More...
Functions | |
SIMD_API void | SimdWinogradKernel1x3Block1x4SetFilter (const float *src, size_t size, float *dst, SimdBool trans) |
This function is used for filter conversion in Winograd F(1x4,1x3) or F(4x1,3x1) convolution algorithm. More... | |
SIMD_API void | SimdWinogradKernel1x3Block1x4SetInput (const float *src, size_t srcChannels, size_t srcHeight, size_t srcWidth, size_t padY, size_t padX, size_t padH, size_t padW, float *dst, size_t dstStride, SimdBool trans) |
This function is used for input image conversion in Winograd F(1x4,1x3) convolution algorithm. More... | |
SIMD_API void | SimdWinogradKernel1x3Block1x4SetOutput (const float *src, size_t srcStride, float *dst, size_t dstChannels, size_t dstHeight, size_t dstWidth, SimdBool trans) |
This function is used for output image conversion in Winograd F(1x4,1x3) convolution algorithm. More... | |
SIMD_API void | SimdWinogradKernel1x5Block1x4SetFilter (const float *src, size_t size, float *dst, SimdBool trans) |
This function is used for filter conversion in Winograd F(1x4,1x5) or F(4x1,5x1) convolution algorithm. More... | |
SIMD_API void | SimdWinogradKernel1x5Block1x4SetInput (const float *src, size_t srcChannels, size_t srcHeight, size_t srcWidth, size_t padY, size_t padX, size_t padH, size_t padW, float *dst, size_t dstStride, SimdBool trans) |
This function is used for input image conversion in Winograd F(1x4,1x5) convolution algorithm. More... | |
SIMD_API void | SimdWinogradKernel1x5Block1x4SetOutput (const float *src, size_t srcStride, float *dst, size_t dstChannels, size_t dstHeight, size_t dstWidth, SimdBool trans) |
This function is used for output image conversion in Winograd F(1x4,1x5) convolution algorithm. More... | |
SIMD_API void | SimdWinogradKernel2x2Block2x2SetFilter (const float *src, size_t size, float *dst, SimdBool trans) |
This function is used for filter conversion in Winograd F(2x2,2x2) convolution algorithm. More... | |
SIMD_API void | SimdWinogradKernel2x2Block2x2SetInput (const float *src, size_t srcChannels, size_t srcHeight, size_t srcWidth, size_t padY, size_t padX, size_t padH, size_t padW, float *dst, size_t dstStride, SimdBool trans) |
This function is used for input image conversion in Winograd F(2x2,2x2) convolution algorithm. More... | |
SIMD_API void | SimdWinogradKernel2x2Block2x2SetOutput (const float *src, size_t srcStride, float *dst, size_t dstChannels, size_t dstHeight, size_t dstWidth, SimdBool trans) |
This function is used for output image conversion in Winograd F(2x2,2x2) convolution algorithm. More... | |
SIMD_API void | SimdWinogradKernel2x2Block4x4SetFilter (const float *src, size_t size, float *dst, SimdBool trans) |
This function is used for filter conversion in Winograd F(4x4,2x2) convolution algorithm. More... | |
SIMD_API void | SimdWinogradKernel2x2Block4x4SetInput (const float *src, size_t srcChannels, size_t srcHeight, size_t srcWidth, size_t padY, size_t padX, size_t padH, size_t padW, float *dst, size_t dstStride, SimdBool trans) |
This function is used for input image conversion in Winograd F(4x4,2x2) convolution algorithm. More... | |
SIMD_API void | SimdWinogradKernel2x2Block4x4SetOutput (const float *src, size_t srcStride, float *dst, size_t dstChannels, size_t dstHeight, size_t dstWidth, SimdBool trans) |
This function is used for output image conversion in Winograd F(4x4,2x2) convolution algorithm. More... | |
SIMD_API void | SimdWinogradKernel3x3Block2x2SetFilter (const float *src, size_t size, float *dst, SimdBool trans) |
This function is used for filter conversion in Winograd F(2x2,3x3) convolution algorithm. More... | |
SIMD_API void | SimdWinogradKernel3x3Block2x2SetInput (const float *src, size_t srcChannels, size_t srcHeight, size_t srcWidth, size_t padY, size_t padX, size_t padH, size_t padW, float *dst, size_t dstStride, SimdBool trans) |
This function is used for input image conversion in Winograd F(2x2,3x3) convolution algorithm. More... | |
SIMD_API void | SimdWinogradKernel3x3Block2x2SetOutput (const float *src, size_t srcStride, float *dst, size_t dstChannels, size_t dstHeight, size_t dstWidth, SimdBool trans) |
This function is used for output image conversion in Winograd F(2x2,3x3) convolution algorithm. More... | |
SIMD_API void | SimdWinogradKernel3x3Block3x3SetFilter (const float *src, size_t size, float *dst, SimdBool trans) |
This function is used for filter conversion in Winograd F(3x3,3x3) convolution algorithm. More... | |
SIMD_API void | SimdWinogradKernel3x3Block3x3SetInput (const float *src, size_t srcChannels, size_t srcHeight, size_t srcWidth, size_t padY, size_t padX, size_t padH, size_t padW, float *dst, size_t dstStride, SimdBool trans) |
This function is used for input image conversion in Winograd F(3x3,3x3) convolution algorithm. More... | |
SIMD_API void | SimdWinogradKernel3x3Block3x3SetOutput (const float *src, size_t srcStride, float *dst, size_t dstChannels, size_t dstHeight, size_t dstWidth, SimdBool trans) |
This function is used for output image conversion in Winograd F(3x3,3x3) convolution algorithm. More... | |
SIMD_API void | SimdWinogradKernel3x3Block4x4SetFilter (const float *src, size_t size, float *dst, SimdBool trans) |
This function is used for filter conversion in Winograd F(4x4,3x3) convolution algorithm. More... | |
SIMD_API void | SimdWinogradKernel3x3Block4x4SetInput (const float *src, size_t srcChannels, size_t srcHeight, size_t srcWidth, size_t padY, size_t padX, size_t padH, size_t padW, float *dst, size_t dstStride, SimdBool trans) |
This function is used for input image conversion in Winograd F(4x4,3x3) convolution algorithm. More... | |
SIMD_API void | SimdWinogradKernel3x3Block4x4SetOutput (const float *src, size_t srcStride, float *dst, size_t dstChannels, size_t dstHeight, size_t dstWidth, SimdBool trans) |
This function is used for output image conversion in Winograd F(4x4,3x3) convolution algorithm. More... | |
Detailed Description
Functions to acceleratŠµ Winograd convolution algorithm in Synet Framework.
Function Documentation
◆ SimdWinogradKernel1x3Block1x4SetFilter()
void SimdWinogradKernel1x3Block1x4SetFilter | ( | const float * | src, |
size_t | size, | ||
float * | dst, | ||
SimdBool | trans | ||
) |
This function is used for filter conversion in Winograd F(1x4,1x3) or F(4x1,3x1) convolution algorithm.
- Note
- This function is used in Synet Framework.
- Parameters
-
[in] src - a pointer to the input 32-bit float array with filter weights. [in] size - (number of input channels)*(number of output channels). [out] dst - a pointer to the output 32-bit float array with filter weights. [in] trans - a flag of transposed data.
◆ SimdWinogradKernel1x3Block1x4SetInput()
void SimdWinogradKernel1x3Block1x4SetInput | ( | const float * | src, |
size_t | srcChannels, | ||
size_t | srcHeight, | ||
size_t | srcWidth, | ||
size_t | padY, | ||
size_t | padX, | ||
size_t | padH, | ||
size_t | padW, | ||
float * | dst, | ||
size_t | dstStride, | ||
SimdBool | trans | ||
) |
This function is used for input image conversion in Winograd F(1x4,1x3) convolution algorithm.
- Note
- This function is used in Synet Framework.
- Parameters
-
[in] src - a pointer to the input image. [in] srcChannels - a number of input channels. [in] srcHeight - a height of input image. [in] srcWidth - a width of input image. [in] padY - an additional zero padding of input image at the beginning of Y-axis. [in] padX - an additional zero padding of input image at the beginning of X-axis. [in] padH - an additional zero padding of input image at the end of Y-axis. [in] padW - an additional zero padding of input image at the end of X-axis. [out] dst - a pointer to the output array with converted image. [in] dstStride - a stride of output image. [in] trans - a flag of transposed data.
◆ SimdWinogradKernel1x3Block1x4SetOutput()
void SimdWinogradKernel1x3Block1x4SetOutput | ( | const float * | src, |
size_t | srcStride, | ||
float * | dst, | ||
size_t | dstChannels, | ||
size_t | dstHeight, | ||
size_t | dstWidth, | ||
SimdBool | trans | ||
) |
This function is used for output image conversion in Winograd F(1x4,1x3) convolution algorithm.
- Note
- This function is used in Synet Framework.
- Parameters
-
[in] src - a pointer to the input image. [in] srcStride - a stride of input image. [out] dst - a pointer to the output image. [in] dstChannels - a number of output channels. [in] dstHeight - a height of output image. [in] dstWidth - a width of output image. [in] trans - a flag of transposed data.
◆ SimdWinogradKernel1x5Block1x4SetFilter()
void SimdWinogradKernel1x5Block1x4SetFilter | ( | const float * | src, |
size_t | size, | ||
float * | dst, | ||
SimdBool | trans | ||
) |
This function is used for filter conversion in Winograd F(1x4,1x5) or F(4x1,5x1) convolution algorithm.
- Note
- This function is used in Synet Framework.
- Parameters
-
[in] src - a pointer to the input 32-bit float array with filter weights. [in] size - (number of input channels)*(number of output channels). [out] dst - a pointer to the output 32-bit float array with filter weights. [in] trans - a flag of transposed data.
◆ SimdWinogradKernel1x5Block1x4SetInput()
void SimdWinogradKernel1x5Block1x4SetInput | ( | const float * | src, |
size_t | srcChannels, | ||
size_t | srcHeight, | ||
size_t | srcWidth, | ||
size_t | padY, | ||
size_t | padX, | ||
size_t | padH, | ||
size_t | padW, | ||
float * | dst, | ||
size_t | dstStride, | ||
SimdBool | trans | ||
) |
This function is used for input image conversion in Winograd F(1x4,1x5) convolution algorithm.
- Note
- This function is used in Synet Framework.
- Parameters
-
[in] src - a pointer to the input image. [in] srcChannels - a number of input channels. [in] srcHeight - a height of input image. [in] srcWidth - a width of input image. [in] padY - an additional zero padding of input image at the beginning of Y-axis. [in] padX - an additional zero padding of input image at the beginning of X-axis. [in] padH - an additional zero padding of input image at the end of Y-axis. [in] padW - an additional zero padding of input image at the end of X-axis. [out] dst - a pointer to the output array with converted image. [in] dstStride - a stride of output image. [in] trans - a flag of transposed data.
◆ SimdWinogradKernel1x5Block1x4SetOutput()
void SimdWinogradKernel1x5Block1x4SetOutput | ( | const float * | src, |
size_t | srcStride, | ||
float * | dst, | ||
size_t | dstChannels, | ||
size_t | dstHeight, | ||
size_t | dstWidth, | ||
SimdBool | trans | ||
) |
This function is used for output image conversion in Winograd F(1x4,1x5) convolution algorithm.
- Note
- This function is used in Synet Framework.
- Parameters
-
[in] src - a pointer to the input image. [in] srcStride - a stride of input image. [out] dst - a pointer to the output image. [in] dstChannels - a number of output channels. [in] dstHeight - a height of output image. [in] dstWidth - a width of output image. [in] trans - a flag of transposed data.
◆ SimdWinogradKernel2x2Block2x2SetFilter()
void SimdWinogradKernel2x2Block2x2SetFilter | ( | const float * | src, |
size_t | size, | ||
float * | dst, | ||
SimdBool | trans | ||
) |
This function is used for filter conversion in Winograd F(2x2,2x2) convolution algorithm.
- Note
- This function is used in Synet Framework.
- Parameters
-
[in] src - a pointer to the input 32-bit float array with filter weights. [in] size - (number of input channels)*(number of output channels). [out] dst - a pointer to the output 32-bit float array with filter weights. [in] trans - a flag of transposed data.
◆ SimdWinogradKernel2x2Block2x2SetInput()
void SimdWinogradKernel2x2Block2x2SetInput | ( | const float * | src, |
size_t | srcChannels, | ||
size_t | srcHeight, | ||
size_t | srcWidth, | ||
size_t | padY, | ||
size_t | padX, | ||
size_t | padH, | ||
size_t | padW, | ||
float * | dst, | ||
size_t | dstStride, | ||
SimdBool | trans | ||
) |
This function is used for input image conversion in Winograd F(2x2,2x2) convolution algorithm.
- Note
- This function is used in Synet Framework.
- Parameters
-
[in] src - a pointer to the input image. [in] srcChannels - a number of input channels. [in] srcHeight - a height of input image. [in] srcWidth - a width of input image. [in] padY - an additional zero padding of input image at the beginning of Y-axis. [in] padX - an additional zero padding of input image at the beginning of X-axis. [in] padH - an additional zero padding of input image at the end of Y-axis. [in] padW - an additional zero padding of input image at the end of X-axis. [out] dst - a pointer to the output array with converted image. [in] dstStride - a stride of output image. [in] trans - a flag of transposed data.
◆ SimdWinogradKernel2x2Block2x2SetOutput()
void SimdWinogradKernel2x2Block2x2SetOutput | ( | const float * | src, |
size_t | srcStride, | ||
float * | dst, | ||
size_t | dstChannels, | ||
size_t | dstHeight, | ||
size_t | dstWidth, | ||
SimdBool | trans | ||
) |
This function is used for output image conversion in Winograd F(2x2,2x2) convolution algorithm.
- Note
- This function is used in Synet Framework.
- Parameters
-
[in] src - a pointer to the input image. [in] srcStride - a stride of input image. [out] dst - a pointer to the output image. [in] dstChannels - a number of output channels. [in] dstHeight - a height of output image. [in] dstWidth - a width of output image. [in] trans - a flag of transposed data.
◆ SimdWinogradKernel2x2Block4x4SetFilter()
void SimdWinogradKernel2x2Block4x4SetFilter | ( | const float * | src, |
size_t | size, | ||
float * | dst, | ||
SimdBool | trans | ||
) |
This function is used for filter conversion in Winograd F(4x4,2x2) convolution algorithm.
- Note
- This function is used in Synet Framework.
- Parameters
-
[in] src - a pointer to the input 32-bit float array with filter weights. [in] size - (number of input channels)*(number of output channels). [out] dst - a pointer to the output 32-bit float array with filter weights. [in] trans - a flag of transposed data.
◆ SimdWinogradKernel2x2Block4x4SetInput()
void SimdWinogradKernel2x2Block4x4SetInput | ( | const float * | src, |
size_t | srcChannels, | ||
size_t | srcHeight, | ||
size_t | srcWidth, | ||
size_t | padY, | ||
size_t | padX, | ||
size_t | padH, | ||
size_t | padW, | ||
float * | dst, | ||
size_t | dstStride, | ||
SimdBool | trans | ||
) |
This function is used for input image conversion in Winograd F(4x4,2x2) convolution algorithm.
- Note
- This function is used in Synet Framework.
- Parameters
-
[in] src - a pointer to the input image. [in] srcChannels - a number of input channels. [in] srcHeight - a height of input image. [in] srcWidth - a width of input image. [in] padY - an additional zero padding of input image at the beginning of Y-axis. [in] padX - an additional zero padding of input image at the beginning of X-axis. [in] padH - an additional zero padding of input image at the end of Y-axis. [in] padW - an additional zero padding of input image at the end of X-axis. [out] dst - a pointer to the output array with converted image. [in] dstStride - a stride of output image. [in] trans - a flag of transposed data.
◆ SimdWinogradKernel2x2Block4x4SetOutput()
void SimdWinogradKernel2x2Block4x4SetOutput | ( | const float * | src, |
size_t | srcStride, | ||
float * | dst, | ||
size_t | dstChannels, | ||
size_t | dstHeight, | ||
size_t | dstWidth, | ||
SimdBool | trans | ||
) |
This function is used for output image conversion in Winograd F(4x4,2x2) convolution algorithm.
- Note
- This function is used in Synet Framework.
- Parameters
-
[in] src - a pointer to the input image. [in] srcStride - a stride of input image. [out] dst - a pointer to the output image. [in] dstChannels - a number of output channels. [in] dstHeight - a height of output image. [in] dstWidth - a width of output image. [in] trans - a flag of transposed data.
◆ SimdWinogradKernel3x3Block2x2SetFilter()
void SimdWinogradKernel3x3Block2x2SetFilter | ( | const float * | src, |
size_t | size, | ||
float * | dst, | ||
SimdBool | trans | ||
) |
This function is used for filter conversion in Winograd F(2x2,3x3) convolution algorithm.
- Note
- This function is used in Synet Framework.
- Parameters
-
[in] src - a pointer to the input 32-bit float array with filter weights. [in] size - (number of input channels)*(number of output channels). [out] dst - a pointer to the output 32-bit float array with filter weights. [in] trans - a flag of transposed data.
◆ SimdWinogradKernel3x3Block2x2SetInput()
void SimdWinogradKernel3x3Block2x2SetInput | ( | const float * | src, |
size_t | srcChannels, | ||
size_t | srcHeight, | ||
size_t | srcWidth, | ||
size_t | padY, | ||
size_t | padX, | ||
size_t | padH, | ||
size_t | padW, | ||
float * | dst, | ||
size_t | dstStride, | ||
SimdBool | trans | ||
) |
This function is used for input image conversion in Winograd F(2x2,3x3) convolution algorithm.
- Note
- This function is used in Synet Framework.
- Parameters
-
[in] src - a pointer to the input image. [in] srcChannels - a number of input channels. [in] srcHeight - a height of input image. [in] srcWidth - a width of input image. [in] padY - an additional zero padding of input image at the beginning of Y-axis. [in] padX - an additional zero padding of input image at the beginning of X-axis. [in] padH - an additional zero padding of input image at the end of Y-axis. [in] padW - an additional zero padding of input image at the end of X-axis. [out] dst - a pointer to the output array with converted image. [in] dstStride - a stride of output image. [in] trans - a flag of transposed data.
◆ SimdWinogradKernel3x3Block2x2SetOutput()
void SimdWinogradKernel3x3Block2x2SetOutput | ( | const float * | src, |
size_t | srcStride, | ||
float * | dst, | ||
size_t | dstChannels, | ||
size_t | dstHeight, | ||
size_t | dstWidth, | ||
SimdBool | trans | ||
) |
This function is used for output image conversion in Winograd F(2x2,3x3) convolution algorithm.
- Note
- This function is used in Synet Framework.
- Parameters
-
[in] src - a pointer to the input image. [in] srcStride - a stride of input image. [out] dst - a pointer to the output image. [in] dstChannels - a number of output channels. [in] dstHeight - a height of output image. [in] dstWidth - a width of output image. [in] trans - a flag of transposed data.
◆ SimdWinogradKernel3x3Block3x3SetFilter()
void SimdWinogradKernel3x3Block3x3SetFilter | ( | const float * | src, |
size_t | size, | ||
float * | dst, | ||
SimdBool | trans | ||
) |
This function is used for filter conversion in Winograd F(3x3,3x3) convolution algorithm.
- Note
- This function is used in Synet Framework.
- Parameters
-
[in] src - a pointer to the input 32-bit float array with filter weights. [in] size - (number of input channels)*(number of output channels). [out] dst - a pointer to the output 32-bit float array with filter weights. [in] trans - a flag of transposed data.
◆ SimdWinogradKernel3x3Block3x3SetInput()
void SimdWinogradKernel3x3Block3x3SetInput | ( | const float * | src, |
size_t | srcChannels, | ||
size_t | srcHeight, | ||
size_t | srcWidth, | ||
size_t | padY, | ||
size_t | padX, | ||
size_t | padH, | ||
size_t | padW, | ||
float * | dst, | ||
size_t | dstStride, | ||
SimdBool | trans | ||
) |
This function is used for input image conversion in Winograd F(3x3,3x3) convolution algorithm.
- Note
- This function is used in Synet Framework.
- Parameters
-
[in] src - a pointer to the input image. [in] srcChannels - a number of input channels. [in] srcHeight - a height of input image. [in] srcWidth - a width of input image. [in] padY - an additional zero padding of input image at the beginning of Y-axis. [in] padX - an additional zero padding of input image at the beginning of X-axis. [in] padH - an additional zero padding of input image at the end of Y-axis. [in] padW - an additional zero padding of input image at the end of X-axis. [out] dst - a pointer to the output array with converted image. [in] dstStride - a stride of output image. [in] trans - a flag of transposed data.
◆ SimdWinogradKernel3x3Block3x3SetOutput()
void SimdWinogradKernel3x3Block3x3SetOutput | ( | const float * | src, |
size_t | srcStride, | ||
float * | dst, | ||
size_t | dstChannels, | ||
size_t | dstHeight, | ||
size_t | dstWidth, | ||
SimdBool | trans | ||
) |
This function is used for output image conversion in Winograd F(3x3,3x3) convolution algorithm.
- Note
- This function is used in Synet Framework.
- Parameters
-
[in] src - a pointer to the input image. [in] srcStride - a stride of input image. [out] dst - a pointer to the output image. [in] dstChannels - a number of output channels. [in] dstHeight - a height of output image. [in] dstWidth - a width of output image. [in] trans - a flag of transposed data.
◆ SimdWinogradKernel3x3Block4x4SetFilter()
void SimdWinogradKernel3x3Block4x4SetFilter | ( | const float * | src, |
size_t | size, | ||
float * | dst, | ||
SimdBool | trans | ||
) |
This function is used for filter conversion in Winograd F(4x4,3x3) convolution algorithm.
- Note
- This function is used in Synet Framework.
- Parameters
-
[in] src - a pointer to the input 32-bit float array with filter weights. [in] size - (number of input channels)*(number of output channels). [out] dst - a pointer to the output 32-bit float array with filter weights. [in] trans - a flag of transposed data.
◆ SimdWinogradKernel3x3Block4x4SetInput()
void SimdWinogradKernel3x3Block4x4SetInput | ( | const float * | src, |
size_t | srcChannels, | ||
size_t | srcHeight, | ||
size_t | srcWidth, | ||
size_t | padY, | ||
size_t | padX, | ||
size_t | padH, | ||
size_t | padW, | ||
float * | dst, | ||
size_t | dstStride, | ||
SimdBool | trans | ||
) |
This function is used for input image conversion in Winograd F(4x4,3x3) convolution algorithm.
- Note
- This function is used in Synet Framework.
- Parameters
-
[in] src - a pointer to the input image. [in] srcChannels - a number of input channels. [in] srcHeight - a height of input image. [in] srcWidth - a width of input image. [in] padY - an additional zero padding of input image at the beginning of Y-axis. [in] padX - an additional zero padding of input image at the beginning of X-axis. [in] padH - an additional zero padding of input image at the end of Y-axis. [in] padW - an additional zero padding of input image at the end of X-axis. [out] dst - a pointer to the output array with converted image. [in] dstStride - a stride of output image. [in] trans - a flag of transposed data.
◆ SimdWinogradKernel3x3Block4x4SetOutput()
void SimdWinogradKernel3x3Block4x4SetOutput | ( | const float * | src, |
size_t | srcStride, | ||
float * | dst, | ||
size_t | dstChannels, | ||
size_t | dstHeight, | ||
size_t | dstWidth, | ||
SimdBool | trans | ||
) |
This function is used for output image conversion in Winograd F(4x4,3x3) convolution algorithm.
- Note
- This function is used in Synet Framework.
- Parameters
-
[in] src - a pointer to the input image. [in] srcStride - a stride of input image. [out] dst - a pointer to the output image. [in] dstChannels - a number of output channels. [in] dstHeight - a height of output image. [in] dstWidth - a width of output image. [in] trans - a flag of transposed data.