MCPcopy Create free account
hub / github.com/MegEngine/MegCC / TEST

Function TEST

compiler/test/kernel/opr/arm_common/conv.cpp:7–51  ·  view source on GitHub ↗

Source from the content-addressed store, hash-verified

5using namespace megcc::KernelGen;
6
7TEST(ARMCOMMON, ConvBiasChannelWiseNCHW4Int8) {
8#ifdef __aarch64__
9 Checker<ConvBiasForward> checker(Arch::ARM64);
10#else
11 Checker<ConvBiasForward> checker(Arch::ARMV7);
12#endif
13 checker.set_dtype(0, dtype::QuantizedS8(2.5f))
14 .set_dtype(1, dtype::QuantizedS8(2.5f))
15 .set_dtype(2, dtype::QuantizedS32(6.25f))
16 .set_dtype(4, dtype::QuantizedS8(40.25f));
17 checker.set_kernel_symbol("ArmCommon_chanwise.+");
18 ConvBiasForward::Param param;
19 param.compute_mode = ConvBiasForward::Param::ComputeMode::DEFAULT;
20 param.format = ConvBiasForward::Param::Format::NCHW44;
21 param.sparse = ConvBiasForward::Param::Sparse::GROUP;
22 for (size_t pad : {0, 1, 2})
23 for (size_t stride : {1, 2}) {
24 for (size_t kernel : {3, 5}) {
25 param.pad_h = pad;
26 param.pad_w = pad;
27 param.nonlineMode = ConvBiasForward::Param::NonlineMode::RELU;
28 param.stride_h = stride;
29 param.stride_w = stride;
30 checker.set_param(param);
31 checker.execs(
32 {{2, 8, 13, 23, 4},
33 {8, 1, 1, kernel, kernel, 4},
34 {1, 8, 1, 1, 4},
35 {},
36 {}});
37 checker.execs(
38 {{2, 8, 14, 28, 4}, {8, 1, 1, kernel, kernel, 4}, {}, {}, {}});
39 param.nonlineMode = ConvBiasForward::Param::NonlineMode::IDENTITY;
40 checker.set_param(param);
41 checker.execs(
42 {{4, 3, 5, 11, 4},
43 {3, 1, 1, kernel, kernel, 4},
44 {1, 3, 1, 1, 4},
45 {},
46 {}});
47 checker.execs(
48 {{4, 3, 5, 11, 4}, {3, 1, 1, kernel, kernel, 4}, {}, {}, {}});
49 }
50 }
51}
52
53TEST(ARMCOMMON, ConvBiasChannelWiseNCHW4K3) {
54#ifdef __aarch64__

Callers

nothing calls this directly

Calls 2

runFunction · 0.85
execsMethod · 0.45

Tested by

no test coverage detected