40 static constexpr int OUT_H = INP_H + H0 + H1;
41 static constexpr int OUT_W = INP_W + W0 + W1;
45 adf::port<input> pin[1];
46 adf::port<output> pout[1];
49 static_assert(H0 >= 0 && H1 >= 0 && W0 >= 0 && W1 >= 0);
50 k[0] = adf::kernel::create_object<PAD<TT, B, INP_H, INP_W, INP_W_PAD, H0, H1, W0, W1>>();
51 adf::source(k[0]) =
"pad.cc";
52 adf::headers(k[0]) = {
"pad.h"};
53 adf::runtime<ratio>(k[0]) = 0.6;
55 adf::connect<adf::stream> (pin[0], k[0].in[0]);
56 adf::connect<adf::stream> (k[0].out[0], pout[0]);
58 adf::samples_per_iteration(k[0].in[0]) = B*INP_H*INP_W_PAD;
59 adf::samples_per_iteration(k[0].out[0]) = B*OUT_H*OUT_W;
78 static constexpr int OUT_H = INP_H + H0 + H1;
79 static constexpr int OUT_W = INP_W + W0 + W1;
83 adf::port<input> pin[1];
84 adf::port<output> pout[1];
87 static_assert(INP_H*INP_W_PAD*
sizeof(TT) <= MAX_PARAM_BYTES);
88 static_assert(H0 >= 0 && H1 >= 0 && W0 >= 0 && W1 >= 0);
90 k[0] = adf::kernel::create_object<PAD<TT, B, INP_H, INP_W, INP_W_PAD, H0, H1, W0, W1>>();
91 adf::source(k[0]) =
"pad.cc";
92 adf::headers(k[0]) = {
"pad.h"};
93 adf::runtime<ratio>(k[0]) = 0.6;
94 adf::repetition_count(k[0]) = B;
96 adf::connect<adf::window<INP_H*INP_W_PAD*
sizeof(TT)>> (pin[0], k[0].in[0]);
97 adf::connect<adf::window<OUT_H*OUT_W*
sizeof(TT)>> (k[0].out[0], pout[0]);
116 static constexpr int OUT_H = INP_H + H0 + H1;
117 static constexpr int OUT_W = INP_W + W0 + W1;
121 adf::port<input> pin[1];
122 adf::port<output> pout[1];
125 static_assert(INP_H*INP_W_PAD*
sizeof(TT) <= MAX_PARAM_BYTES);
126 static_assert(H0 >= 0 && H1 >= 0 && W0 >= 0 && W1 >= 0);
128 k[0] = adf::kernel::create_object<PAD<TT, B, INP_H, INP_W, INP_W_PAD, H0, H1, W0, W1>>();
129 adf::source(k[0]) =
"pad.cc";
130 adf::headers(k[0]) = {
"pad.h"};
131 adf::runtime<ratio>(k[0]) = 0.6;
132 adf::repetition_count(k[0]) = B;
134 adf::connect<adf::stream> (pin[0], k[0].in[0]);
135 adf::connect<adf::window<OUT_H*OUT_W*
sizeof(TT)>> (k[0].out[0], pout[0]);