KhronosGroup / OpenVX-cts

OpenVX Conformance Test Suite
Apache License 2.0
9 stars 6 forks source link

stride determination is ambiguous #10

Open xzhan103 opened 4 years ago

xzhan103 commented 4 years ago

CTS uses ownGetConvPoolRandParams to calculate stride_x and stride_y. Reference code is from test_conformance/test_tensor_nn.c line:30:55.

The relation between input to output is as follows:

image

For example: input = 6, padding = 0, kernel = 1, dilation = 0, output = 2. Rounding is floor. Equation therefore transform as 2=round((6+20-1-(1-1)0 )/stride)+1 It would be correct with a stride of 3, 4 or, 5. CTS therefore picks the smallest stride 3 satisfying the equation. Why do CTS choose 3 but not 4 or 5? Do you have any basis to demonstrate your choice? Seems that Our stride determination are different. In this case, we choose 5 as stride value.

This issue is very important for us picking stride value. Please help to check and regulate the rule of stride determination.