Using CUTLASS Convolutions for Asymmetric Padding #426
manishucsd
started this conversation in
General
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
CUTLASS convolutions support asymmetric padding by allowing the user to set output
P
andQ
.To understand its usage, let us look at using the asymmetric padding feature of CUTLASS convolution in 1D.
Figure 1. CUTLASS convolution asymmetric padding in 1D. Case 0 (symmetric padding), Case 1 (asymmetric padding towards top), and Case 2 (asymmetric padding towards bottom)
Please refer Figure 1 (linked above for this discussion). Case 0, 1, and 2 can also be verified in profiler. Note that all tensor values are initialized to 1. Thus, we can inspect the output NPQK to see the number of contributing filter r positions.
Case 0 (symmetric padding)
For the above size, the total number of accumulation if all three filter r positions are contributing to the output is GEMM-K = RSC = 3x1x8 = 24
Case 0 output NPQxK (8x8) is symmetric
Case 1 (asymmetric padding towards top)
Case 1 output NPQxK (8x8) is asymmetric towards the top
Case 2 (asymmetric padding towards bottom)
Case 2 output NPQxK (8x8) is asymmetric towards the bottom
Beta Was this translation helpful? Give feedback.
All reactions